mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-19 14:13:30 +00:00
rockchip: set led data mode for yt8521 phy
This commit is contained in:
parent
da0dd59589
commit
4d9daeee2b
@ -0,0 +1,46 @@
|
||||
--- a/drivers/net/phy/motorcomm.c 2025-02-14 18:58:18.691542738 +0900
|
||||
+++ b/drivers/net/phy/motorcomm.c 2025-02-14 19:05:00.299135505 +0900
|
||||
@@ -353,6 +353,12 @@
|
||||
#define YT8821_CHIP_MODE_AUTO_BX2500_SGMII 0
|
||||
#define YT8821_CHIP_MODE_FORCE_BX2500 1
|
||||
|
||||
+#define YT8521_EXTREG_LED_GENERAL_CFG 0xA00B
|
||||
+#define YT8521_EXTREG_LED0_CFG 0xA00C
|
||||
+#define YT8521_EXTREG_LED1_CFG 0xA00D
|
||||
+#define YT8521_EXTREG_LED2_CFG 0xA00E
|
||||
+#define YT8521_EXTREG_LED_BLINK_CFG 0xA00F
|
||||
+
|
||||
struct yt8521_priv {
|
||||
/* combo_advertising is used for case of YT8521 in combo mode,
|
||||
* this means that yt8521 may work in utp or fiber mode which depends
|
||||
@@ -1577,6 +1583,20 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
+static int yt8521_led_init(struct phy_device *phydev)
|
||||
+{
|
||||
+ int ret;
|
||||
+ u16 val;
|
||||
+
|
||||
+ val = (0x7 << 4);
|
||||
+ ret = ytphy_write_ext(phydev, YT8521_EXTREG_LED2_CFG, val);
|
||||
+
|
||||
+ val = 0x7;
|
||||
+ ret = ytphy_write_ext(phydev, YT8521_EXTREG_LED1_CFG, val);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
/**
|
||||
* yt8521_soft_reset() - called to issue a PHY software reset
|
||||
* @phydev: a pointer to a &struct phy_device
|
||||
@@ -1677,6 +1697,9 @@
|
||||
if (ret < 0)
|
||||
goto err_restore_page;
|
||||
}
|
||||
+
|
||||
+ yt8521_led_init(phydev);
|
||||
+
|
||||
err_restore_page:
|
||||
return phy_restore_page(phydev, old_page, ret);
|
||||
}
|
Loading…
Reference in New Issue
Block a user