Commit 49dd48da authored by Sergei Shtylyov's avatar Sergei Shtylyov Committed by David S. Miller
Browse files

sh_eth: re-enable-E-MAC interrupts in sh_eth_set_ringparam()

The E-MAC interrupts are left disabled when the ring parameters are changed
via 'ethtool'. In order to fix this, it's enough to call sh_eth_dev_init()
with 'true' instead of 'false' for the second argument (which conveniently
allows us to remove the following code re-enabling E-DMAC interrupts and
Signed-off-by: default avatarSergei Shtylyov <>
Signed-off-by: default avatarDavid S. Miller <>
parent 183c948a
...@@ -2194,17 +2194,13 @@ static int sh_eth_set_ringparam(struct net_device *ndev, ...@@ -2194,17 +2194,13 @@ static int sh_eth_set_ringparam(struct net_device *ndev,
__func__); __func__);
return ret; return ret;
} }
ret = sh_eth_dev_init(ndev, false); ret = sh_eth_dev_init(ndev, true);
if (ret < 0) { if (ret < 0) {
netdev_err(ndev, "%s: sh_eth_dev_init failed.\n", netdev_err(ndev, "%s: sh_eth_dev_init failed.\n",
__func__); __func__);
return ret; return ret;
} }
mdp->irq_enabled = true;
sh_eth_write(ndev, mdp->cd->eesipr_value, EESIPR);
/* Setting the Rx mode will start the Rx process. */
sh_eth_write(ndev, EDRRR_R, EDRRR);
netif_device_attach(ndev); netif_device_attach(ndev);
} }
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment