From: Florian Fainelli Date: Fri, 21 Sep 2018 23:43:58 +0000 (-0700) Subject: net: dsa: b53: Fix B53_SERDES_DIGITAL_CONTROL offset X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2cae8c07cb8c03a98aecbb8c7fb14c1922772adb;p=android-x86%2Fkernel.git net: dsa: b53: Fix B53_SERDES_DIGITAL_CONTROL offset Maths went wrong, to get 0x20, we need to do 0x1e + (x) * 2, not 0x18, fix that offset so we access the correct registers. This would make us not access the correct SerDes Digital control words, status would be fine and so we would not be correctly flipping between Fiber and SGMII modes resulting in incorrect status words being pulled into the SerDes digital status register. Fixes: 0e01491de646 ("net: dsa: b53: Add SerDes support") Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller --- diff --git a/drivers/net/dsa/b53/b53_serdes.h b/drivers/net/dsa/b53/b53_serdes.h index eed7c9357091..3bb4f91aec9e 100644 --- a/drivers/net/dsa/b53/b53_serdes.h +++ b/drivers/net/dsa/b53/b53_serdes.h @@ -20,7 +20,7 @@ #define SERDES_ID0_REV_LETTER_SHIFT 14 #define B53_SERDES_MII_REG(x) (0x20 + (x) * 2) -#define B53_SERDES_DIGITAL_CONTROL(x) (0x18 + (x) * 2) +#define B53_SERDES_DIGITAL_CONTROL(x) (0x1e + (x) * 2) #define B53_SERDES_DIGITAL_STATUS 0x28 /* SERDES_DIGITAL_CONTROL1 */