浏览代码

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 <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Florian Fainelli 7 年之前
父节点
当前提交
2cae8c07cb
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      drivers/net/dsa/b53/b53_serdes.h

+ 1 - 1
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 */