diff options
author | Ralph Campbell | 2010-06-18 01:14:04 +0200 |
---|---|---|
committer | Roland Dreier | 2010-07-06 23:13:40 +0200 |
commit | 2d757a7ce06abb4afe5b3002d4cdc40e47d7facc (patch) | |
tree | 31db69c35287886cfcc2461cb265365db4a618a6 | |
parent | IB/qib: Clear eager buffer memory for each new process (diff) | |
download | kernel-qcow2-linux-2d757a7ce06abb4afe5b3002d4cdc40e47d7facc.tar.gz kernel-qcow2-linux-2d757a7ce06abb4afe5b3002d4cdc40e47d7facc.tar.xz kernel-qcow2-linux-2d757a7ce06abb4afe5b3002d4cdc40e47d7facc.zip |
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>
-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)); } |