Skip to content

Commit 8038769

Browse files
author
Da Xue
committed
net: mdio: meson-gxl set 28th bit in eth_reg2
This bit is necessary to enable packets on the interface. Without this bit set, ethernet behaves as if it is working but no activity occurs. The vendor SDK sets this bit along with the PHY_ID bits. u-boot will set this bit as well but if u-boot is not compiled with networking, the interface will not work since it is missing this register bit set. Cc: stable@vger.kernel.org Fixes: 9a24e1f ("net: mdio: add amlogic gxl mdio mux support"); Signed-off-by: Da Xue <da@libre.computer>
1 parent c3e0272 commit 8038769

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

drivers/net/mdio/mdio-mux-meson-gxl.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#define REG2_LEDACT GENMASK(23, 22)
1818
#define REG2_LEDLINK GENMASK(25, 24)
1919
#define REG2_DIV4SEL BIT(27)
20+
#define REG2_RESERVED_28 BIT(28)
2021
#define REG2_ADCBYPASS BIT(30)
2122
#define REG2_CLKINSEL BIT(31)
2223
#define ETH_REG3 0x4
@@ -65,7 +66,7 @@ static void gxl_enable_internal_mdio(struct gxl_mdio_mux *priv)
6566
* The only constraint is that it must match the one in
6667
* drivers/net/phy/meson-gxl.c to properly match the PHY.
6768
*/
68-
writel(FIELD_PREP(REG2_PHYID, EPHY_GXL_ID),
69+
writel(REG2_RESERVED_28 | FIELD_PREP(REG2_PHYID, EPHY_GXL_ID),
6970
priv->regs + ETH_REG2);
7071

7172
/* Enable the internal phy */

0 commit comments

Comments
 (0)