Staging: et131x: fix | vs & typos
authorDan Carpenter <dan.carpenter@oracle.com>
Sat, 9 Jun 2012 09:17:01 +0000 (12:17 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 11 Jun 2012 15:47:51 +0000 (08:47 -0700)
These two places seem like they should be using bitwise OR instead of
bitwise AND.  The first one is a noop which is equivalent to:

imr |= (0x0100 & 0x0004 & 0x0001);

The second is sets lcr2 to zero instead of just clearing the high bits.

lcr2 &= (0x00F0 & 0x000F);

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/et131x/et131x.c

index cf02336ffbdc463f9af0f6b6d3be0670a3abcd5e..8f3fc5f85ec94f7d18d113bef46d14dbd6bc3aaa 100644 (file)
@@ -1766,8 +1766,8 @@ static void et131x_xcvr_init(struct et131x_adapter *adapter)
        /* Set the link status interrupt only.  Bad behavior when link status
         * and auto neg are set, we run into a nested interrupt problem
         */
-       imr |= (ET_PHY_INT_MASK_AUTONEGSTAT &
-               ET_PHY_INT_MASK_LINKSTAT &
+       imr |= (ET_PHY_INT_MASK_AUTONEGSTAT |
+               ET_PHY_INT_MASK_LINKSTAT |
                ET_PHY_INT_MASK_ENABLE);
 
        et131x_mii_write(adapter, PHY_INTERRUPT_MASK, imr);
@@ -1783,7 +1783,7 @@ static void et131x_xcvr_init(struct et131x_adapter *adapter)
        if ((adapter->eeprom_data[1] & 0x4) == 0) {
                et131x_mii_read(adapter, PHY_LED_2, &lcr2);
 
-               lcr2 &= (ET_LED2_LED_100TX & ET_LED2_LED_1000T);
+               lcr2 &= (ET_LED2_LED_100TX | ET_LED2_LED_1000T);
                lcr2 |= (LED_VAL_LINKON_ACTIVE << LED_LINK_SHIFT);
 
                if ((adapter->eeprom_data[1] & 0x8) == 0)