Fix incorrect bitwise operation (used & instead of &~) when setting
RTL8127 1G and 10G capabilities.

Fixes: 8d9c29c2de93 ("net/r8169: support RTL8127ATF serdes interface")
Cc: [email protected]

Signed-off-by: Howard Wang <[email protected]>
---
 drivers/net/r8169/r8169_fiber.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/r8169/r8169_fiber.c b/drivers/net/r8169/r8169_fiber.c
index 8533ade15e..caad868cf5 100644
--- a/drivers/net/r8169/r8169_fiber.c
+++ b/drivers/net/r8169/r8169_fiber.c
@@ -119,7 +119,7 @@ rtl8127_set_sds_phy_caps_1g_8127(struct rtl_hw *hw)
        RTL_W16(hw, 0x233A, 0x8004);
 
        val = RTL_R16(hw, 0x233E);
-       val &= (BIT_13 | BIT_12 | BIT_1 | BIT_0);
+       val &= ~(BIT_13 | BIT_12 | BIT_1 | BIT_0);
        val |= BIT_1;
        RTL_W16(hw, 0x233E, val);
 
@@ -153,7 +153,7 @@ rtl8127_set_sds_phy_caps_10g_8127(struct rtl_hw *hw)
        RTL_W16(hw, 0x233A, 0x801A);
 
        val = RTL_R16(hw, 0x233E);
-       val &= (BIT_13 | BIT_12 | BIT_1 | BIT_0);
+       val &= ~(BIT_13 | BIT_12 | BIT_1 | BIT_0);
        val |= BIT_12;
        RTL_W16(hw, 0x233E, val);
 
-- 
2.34.1

Reply via email to