void fe_reset_fe(struct fe_priv *priv)
{
- if (!priv->rst_fe)
+ if (!priv->resets)
return;
- reset_control_assert(priv->rst_fe);
+ reset_control_assert(priv->resets);
usleep_range(60, 120);
- reset_control_deassert(priv->rst_fe);
+ reset_control_deassert(priv->resets);
usleep_range(60, 120);
}
priv = netdev_priv(netdev);
spin_lock_init(&priv->page_lock);
- priv->rst_fe = devm_reset_control_get(&pdev->dev, "fe");
- if (IS_ERR(priv->rst_fe))
- priv->rst_fe = NULL;
+ priv->resets = devm_reset_control_array_get_exclusive(&pdev->dev);
+ if (IS_ERR(priv->resets)) {
+ dev_err(&pdev->dev, "Failed to get resets for FE and ESW cores: %pe\n", priv->resets);
+ priv->resets = NULL;
+ }
if (soc->init_data)
soc->init_data(soc, netdev);