aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/cxgb
diff options
context:
space:
mode:
authorNavdeep Parhar <np@FreeBSD.org>2014-10-19 17:29:44 +0000
committerNavdeep Parhar <np@FreeBSD.org>2014-10-19 17:29:44 +0000
commitbb1800f1fa3aed0beb7329964135cfcd7aff6468 (patch)
tree7fe6897ea58a7594f764709eb6a8eb841adf9300 /sys/dev/cxgb
parente3a21bd139a15e0a5f11592c84d4222832d559bc (diff)
downloadsrc-bb1800f1fa3aed0beb7329964135cfcd7aff6468.tar.gz
src-bb1800f1fa3aed0beb7329964135cfcd7aff6468.zip
cxgb(4): reset the PHY if it generates an interrupt for no apparent reason.
MFC after: 1 week
Notes
Notes: svn path=/head/; revision=273280
Diffstat (limited to 'sys/dev/cxgb')
-rw-r--r--sys/dev/cxgb/common/cxgb_ael1002.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/cxgb/common/cxgb_ael1002.c b/sys/dev/cxgb/common/cxgb_ael1002.c
index fb134f0a0adc..bcd27286add0 100644
--- a/sys/dev/cxgb/common/cxgb_ael1002.c
+++ b/sys/dev/cxgb/common/cxgb_ael1002.c
@@ -1345,8 +1345,10 @@ static int ael2005_intr_handler(struct cphy *phy)
return ret;
ret |= cause;
- if (!ret)
+ if (!ret) {
+ (void) ael2005_reset(phy, 0);
ret |= cphy_cause_link_change;
+ }
return ret;
}