sh_eth: handle only enabled E-MAC interrupts
The driver should only handle the enabled E-MAC interrupts, like it does for the E-DMAC interrupts since commit 3893b27345ac ("sh_eth: workaround for spurious ECI interrupt"), so mask ECSR with ECSIPR when reading it in sh_eth_error(). Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
009146d117
commit
4063469971
@ -1535,7 +1535,8 @@ static void sh_eth_error(struct net_device *ndev, u32 intr_status)
|
||||
u32 mask;
|
||||
|
||||
if (intr_status & EESR_ECI) {
|
||||
felic_stat = sh_eth_read(ndev, ECSR);
|
||||
felic_stat = sh_eth_read(ndev, ECSR) &
|
||||
sh_eth_read(ndev, ECSIPR);
|
||||
sh_eth_write(ndev, felic_stat, ECSR); /* clear int */
|
||||
if (felic_stat & ECSR_ICD)
|
||||
ndev->stats.tx_carrier_errors++;
|
||||
|
Loading…
x
Reference in New Issue
Block a user