* [PATCH] mv643xx_eth: Check ETH_INT_CAUSE_STATE bit
@ 2007-09-28 13:30 Dale Farnsworth
2007-09-29 4:46 ` Jeff Garzik
0 siblings, 1 reply; 2+ messages in thread
From: Dale Farnsworth @ 2007-09-28 13:30 UTC (permalink / raw)
To: Jeff Garzik; +Cc: netdev, Martyn Welch
Commit 468d09f8946d40228c56de26fe4874b2f98067ed masked the "state"
interrupt (bit 20 of the cause register). This results in Radstone's
PPC7D repeatedly re-entering the interrupt routine, locking up the
board. The following patch returns the required handling for this
interrupt.
Signed-off-by: Martyn Welch <martyn.welch@radstone.co.uk>
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
---
Jeff, this is a bug fix.
drivers/net/mv643xx_eth.c | 2 +-
drivers/net/mv643xx_eth.h | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c
index 1799eee..1785d15 100644
--- a/drivers/net/mv643xx_eth.c
+++ b/drivers/net/mv643xx_eth.c
@@ -534,7 +534,7 @@ static irqreturn_t mv643xx_eth_int_handler(int irq, void *dev_id)
}
/* PHY status changed */
- if (eth_int_cause_ext & ETH_INT_CAUSE_PHY) {
+ if (eth_int_cause_ext & (ETH_INT_CAUSE_PHY | ETH_INT_CAUSE_STATE)) {
struct ethtool_cmd cmd;
if (mii_link_ok(&mp->mii)) {
diff --git a/drivers/net/mv643xx_eth.h b/drivers/net/mv643xx_eth.h
index 82f8c0c..565b966 100644
--- a/drivers/net/mv643xx_eth.h
+++ b/drivers/net/mv643xx_eth.h
@@ -64,7 +64,9 @@
#define ETH_INT_CAUSE_TX_ERROR (ETH_TX_QUEUES_ENABLED << 8)
#define ETH_INT_CAUSE_TX (ETH_INT_CAUSE_TX_DONE | ETH_INT_CAUSE_TX_ERROR)
#define ETH_INT_CAUSE_PHY 0x00010000
-#define ETH_INT_UNMASK_ALL_EXT (ETH_INT_CAUSE_TX | ETH_INT_CAUSE_PHY)
+#define ETH_INT_CAUSE_STATE 0x00100000
+#define ETH_INT_UNMASK_ALL_EXT (ETH_INT_CAUSE_TX | ETH_INT_CAUSE_PHY | \
+ ETH_INT_CAUSE_STATE)
#define ETH_INT_MASK_ALL 0x00000000
#define ETH_INT_MASK_ALL_EXT 0x00000000
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] mv643xx_eth: Check ETH_INT_CAUSE_STATE bit
2007-09-28 13:30 [PATCH] mv643xx_eth: Check ETH_INT_CAUSE_STATE bit Dale Farnsworth
@ 2007-09-29 4:46 ` Jeff Garzik
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2007-09-29 4:46 UTC (permalink / raw)
To: Dale Farnsworth; +Cc: netdev, Martyn Welch
Dale Farnsworth wrote:
> Commit 468d09f8946d40228c56de26fe4874b2f98067ed masked the "state"
> interrupt (bit 20 of the cause register). This results in Radstone's
> PPC7D repeatedly re-entering the interrupt routine, locking up the
> board. The following patch returns the required handling for this
> interrupt.
>
> Signed-off-by: Martyn Welch <martyn.welch@radstone.co.uk>
> Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
>
> ---
> Jeff, this is a bug fix.
>
> drivers/net/mv643xx_eth.c | 2 +-
> drivers/net/mv643xx_eth.h | 4 +++-
> 2 files changed, 4 insertions(+), 2 deletions(-)
applied to #upstream-fixes
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-09-29 4:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-28 13:30 [PATCH] mv643xx_eth: Check ETH_INT_CAUSE_STATE bit Dale Farnsworth
2007-09-29 4:46 ` Jeff Garzik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).