[openwrt/openwrt] ath79: add eth0 mac and initvals for Engenius EPG5000

LEDE Commits lede-commits at lists.infradead.org
Sun Feb 12 09:20:46 PST 2023


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/5e973dd61f15a1d21dd1614780775114b28ed0b5

commit 5e973dd61f15a1d21dd1614780775114b28ed0b5
Author: Michael Pratt <mcpratt at pm.me>
AuthorDate: Tue Jan 31 13:58:38 2023 -0500

    ath79: add eth0 mac and initvals for Engenius EPG5000
    
    Although VLANs are used, the "eth0" device by itself
    does not have a valid MAC, so fix that with preinit script.
    
    More initvals added by editing the driver to print switch registers,
    after the bootloader sets them but before openwrt changes them.
    
    The register bits needed for the QCA8337 switch
    can be read from interrupted boot (tftpboot, bootm)
    by adding print lines in the switch driver ar8327.c
    before 'qca,ar8327-initvals' is parsed from DTS and written
    for example:
    
      pr_info("0x04 %08x\n", ar8xxx_read(priv, AR8327_REG_PAD0_MODE));
    
    Signed-off-by: Michael Pratt <mcpratt at pm.me>
---
 target/linux/ath79/dts/qca9558_engenius_epg5000.dts              | 9 ++++++++-
 .../linux/ath79/generic/base-files/lib/preinit/10_fix_eth_mac.sh | 1 +
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/target/linux/ath79/dts/qca9558_engenius_epg5000.dts b/target/linux/ath79/dts/qca9558_engenius_epg5000.dts
index ee0b36d6de..36aba0714e 100644
--- a/target/linux/ath79/dts/qca9558_engenius_epg5000.dts
+++ b/target/linux/ath79/dts/qca9558_engenius_epg5000.dts
@@ -47,8 +47,15 @@
 };
 
 &phy0 {
+	qca,mib-poll-interval = <500>;
+
 	qca,ar8327-initvals = <
-		0x04 0x87600000 /* PORT0 PAD MODE CTRL */
+		0x04 0x87680000 /* PORT0 PAD MODE CTRL */
+		0x10 0x40000000 /* POWER_ON_STRAP */
+		0x50 0xcf35cf35 /* LED_CTRL0 */
+		0x54 0xcf35cf35 /* LED_CTRL1 */
+		0x58 0xcf35cf35 /* LED_CTRL2 */
+		0x5c 0x03ffff00 /* LED_CTRL3 */
 		0x7c 0x0000007e /* PORT0_STATUS */
 	>;
 };
diff --git a/target/linux/ath79/generic/base-files/lib/preinit/10_fix_eth_mac.sh b/target/linux/ath79/generic/base-files/lib/preinit/10_fix_eth_mac.sh
index def4417fbc..5fa23e8eb6 100644
--- a/target/linux/ath79/generic/base-files/lib/preinit/10_fix_eth_mac.sh
+++ b/target/linux/ath79/generic/base-files/lib/preinit/10_fix_eth_mac.sh
@@ -12,6 +12,7 @@ preinit_set_mac_address() {
 		ip link set dev eth0 address $(mtd_get_mac_ascii bdcfg "lanmac")
 		ip link set dev eth1 address $(mtd_get_mac_ascii bdcfg "wanmac")
 		;;
+	engenius,epg5000|\
 	engenius,esr1200|\
 	engenius,esr1750|\
 	engenius,esr900)




More information about the lede-commits mailing list