[IB] mthca: fix off by one in clr_int calculation
authorMichael S. Tsirkin <mst@mellanox.co.il>
Mon, 26 Sep 2005 16:29:33 +0000 (09:29 -0700)
committerRoland Dreier <rolandd@cisco.com>
Mon, 26 Sep 2005 16:38:34 +0000 (09:38 -0700)
We should use the first word of the clear interrupt register if
the bit we're after is < 32, not < 31.

Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/mthca/mthca_eq.c

index 78152a8..c81fa8e 100644 (file)
@@ -836,7 +836,7 @@ int __devinit mthca_init_eq_table(struct mthca_dev *dev)
                dev->eq_table.clr_mask =
                        swab32(1 << (dev->eq_table.inta_pin & 31));
                dev->eq_table.clr_int  = dev->clr_base +
-                       (dev->eq_table.inta_pin < 31 ? 4 : 0);
+                       (dev->eq_table.inta_pin < 32 ? 4 : 0);
        }
 
        dev->eq_table.arm_mask = 0;