Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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 3893b273 ("sh_eth: workaround
for spurious ECI interrupt"),  so mask ECSR with  ECSIPR when reading it
in sh_eth_error().

Signed-off-by: default avatarSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 009146d1
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -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++;