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

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
reception).
Signed-off-by: default avatarSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
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