From 5e973dd61f15a1d21dd1614780775114b28ed0b5 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Tue, 31 Jan 2023 13:58:38 -0500 Subject: [PATCH] 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 --- target/linux/ath79/dts/qca9558_engenius_epg5000.dts | 9 ++++++++- .../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) -- 2.30.2