From: Gabor Juhos Date: Tue, 5 Oct 2010 14:10:34 +0000 (+0000) Subject: ramips: Allow ethernet interface to be taken down and up again X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=69355ee10ed6f1f5815641ad0c58783d28cf37d0;p=openwrt%2Fstaging%2Fstintel.git ramips: Allow ethernet interface to be taken down and up again Taking the ramips ethernet interface down and up again resulted in the driver not receiving any frames anymore. Fix this by correctly disabling interrupts in the hw on ifdown. Signed-off-by: Helmut Schaa SVN-Revision: 23243 --- diff --git a/target/linux/ramips/files/drivers/net/ramips.c b/target/linux/ramips/files/drivers/net/ramips.c index a979fe04c7..fb6e6e84ef 100644 --- a/target/linux/ramips/files/drivers/net/ramips.c +++ b/target/linux/ramips/files/drivers/net/ramips.c @@ -406,6 +406,10 @@ ramips_eth_stop(struct net_device *dev) ramips_fe_wr(ramips_fe_rr(RAMIPS_PDMA_GLO_CFG) & ~(RAMIPS_TX_WB_DDONE | RAMIPS_RX_DMA_EN | RAMIPS_TX_DMA_EN), RAMIPS_PDMA_GLO_CFG); + + /* disable all interrupts in the hw */ + ramips_fe_wr(0, RAMIPS_FE_INT_ENABLE); + free_irq(dev->irq, dev); netif_stop_queue(dev); tasklet_kill(&priv->tx_housekeeping_tasklet);