public inbox for kernel-janitors@vger.kernel.org
 help / color / mirror / Atom feed
* [patch] Staging: et131x: fix | vs & typos
@ 2012-06-09  9:17 Dan Carpenter
  2012-06-11 21:48 ` Mark Einon
  0 siblings, 1 reply; 2+ messages in thread
From: Dan Carpenter @ 2012-06-09  9:17 UTC (permalink / raw)
  To: kernel-janitors

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>
---
I don't have this hardware.

diff --git a/drivers/staging/et131x/et131x.c b/drivers/staging/et131x/et131x.c
index 5b11c5e..0582183 100644
--- a/drivers/staging/et131x/et131x.c
+++ b/drivers/staging/et131x/et131x.c
@@ -1767,8 +1767,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);
@@ -1784,7 +1784,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)

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [patch] Staging: et131x: fix | vs & typos
  2012-06-09  9:17 [patch] Staging: et131x: fix | vs & typos Dan Carpenter
@ 2012-06-11 21:48 ` Mark Einon
  0 siblings, 0 replies; 2+ messages in thread
From: Mark Einon @ 2012-06-11 21:48 UTC (permalink / raw)
  To: kernel-janitors

On 9 June 2012 10:17, Dan Carpenter <dan.carpenter@oracle.com> wrote:
> 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>
> ---
> I don't have this hardware.
>
> diff --git a/drivers/staging/et131x/et131x.c b/drivers/staging/et131x/et131x.c
> index 5b11c5e..0582183 100644
> --- a/drivers/staging/et131x/et131x.c
> +++ b/drivers/staging/et131x/et131x.c
> @@ -1767,8 +1767,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);
> @@ -1784,7 +1784,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)

Good spot. The fix is consistent with the original driver code and
tested ok with real hardware.

Acked-by: Mark Einon <mark.einon@gmail.com>
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-06-11 21:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-09  9:17 [patch] Staging: et131x: fix | vs & typos Dan Carpenter
2012-06-11 21:48 ` Mark Einon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox