bnx2x: use mask in test_registers() to avoid parity error
authorVladislav Zolotarov <vladz@broadcom.com>
Mon, 19 Apr 2010 01:14:37 +0000 (01:14 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 19 Apr 2010 20:17:10 +0000 (13:17 -0700)
Properly mask the value to be written to the register (according to the register size) during the self-test.
Otherwise immediate parity error would be generated.

Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bnx2x_main.c

index 23528deaf98d328da4cb2aff2be5c585adf7d57d..d7c00748e2706f2f2e44d57b977eae5ad3870b14 100644 (file)
@@ -11137,7 +11137,7 @@ static int bnx2x_test_registers(struct bnx2x *bp)
 
                        save_val = REG_RD(bp, offset);
 
-                       REG_WR(bp, offset, wr_val);
+                       REG_WR(bp, offset, (wr_val & mask));
                        val = REG_RD(bp, offset);
 
                        /* Restore the original register's value */