diff options
author | Ralph Campbell <ralph.campbell@qlogic.com> | 2010-06-17 23:14:04 +0000 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2010-07-06 14:13:40 -0700 |
commit | 2d757a7ce06abb4afe5b3002d4cdc40e47d7facc (patch) | |
tree | 31db69c35287886cfcc2461cb265365db4a618a6 /drivers | |
parent | 5df4223a444057e433e9e4f2e101ee7159f8c19d (diff) | |
download | linux-2d757a7ce06abb4afe5b3002d4cdc40e47d7facc.tar.bz2 |
IB/qib: Clear 6120 hardware error register
The hardware error register needs to be cleared or another interrupt
will be generated, thus causing an infinite loop. This is a
regression introduced when removing debug output.
Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/infiniband/hw/qib/qib_iba6120.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/infiniband/hw/qib/qib_iba6120.c b/drivers/infiniband/hw/qib/qib_iba6120.c index 1eadadc13da8..a5e29dbb9537 100644 --- a/drivers/infiniband/hw/qib/qib_iba6120.c +++ b/drivers/infiniband/hw/qib/qib_iba6120.c @@ -1355,8 +1355,7 @@ static int qib_6120_bringup_serdes(struct qib_pportdata *ppd) hwstat = qib_read_kreg64(dd, kr_hwerrstatus); if (hwstat) { /* should just have PLL, clear all set, in an case */ - if (hwstat & ~QLOGIC_IB_HWE_SERDESPLLFAILED) - qib_write_kreg(dd, kr_hwerrclear, hwstat); + qib_write_kreg(dd, kr_hwerrclear, hwstat); qib_write_kreg(dd, kr_errclear, ERR_MASK(HardwareErr)); } |