diff --git a/package/boot/uboot-tools/uboot-envtools/files/qualcommax_ipq60xx b/package/boot/uboot-tools/uboot-envtools/files/qualcommax_ipq60xx index 9538b3735f..77587b4922 100644 --- a/package/boot/uboot-tools/uboot-envtools/files/qualcommax_ipq60xx +++ b/package/boot/uboot-tools/uboot-envtools/files/qualcommax_ipq60xx @@ -38,7 +38,7 @@ glinet,gl-axt1800|\ netgear,wax214|\ netgear,wax610|\ netgear,wax610y|\ -tplink,eap610-outdoor|\ +tplink,eap610od|\ tplink,eap623od-hd-v1) ubootenv_add_mtd "0:appsblenv" "0x0" "0x40000" "0x20000" ;; diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index 8632605b21..dc270589be 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -66,7 +66,7 @@ ALLWIFIBOARDS:= \ redmi_ax6 \ skspruce_wia3300-20 \ spectrum_sax1v1k \ - tplink_eap610-outdoor \ + tplink_eap610od \ tplink_eap620hd-v1 \ tplink_eap623od-hd-v1 \ tplink_eap660hd-v1 \ @@ -225,7 +225,7 @@ $(eval $(call generate-ipq-wifi-package,prpl_haze,prpl Haze)) $(eval $(call generate-ipq-wifi-package,redmi_ax6,Redmi AX6)) $(eval $(call generate-ipq-wifi-package,skspruce_wia3300-20,SKSpruce WIA3300-20)) $(eval $(call generate-ipq-wifi-package,spectrum_sax1v1k,Spectrum SAX1V1K)) -$(eval $(call generate-ipq-wifi-package,tplink_eap610-outdoor,TPLink EAP610-Outdoor)) +$(eval $(call generate-ipq-wifi-package,tplink_eap610od,TPLink EAP610-Outdoor)) $(eval $(call generate-ipq-wifi-package,tplink_eap620hd-v1,TP-Link EAP620 HD v1)) $(eval $(call generate-ipq-wifi-package,tplink_eap623od-hd-v1,TP-Link EAP623-Outdoor HD v1)) $(eval $(call generate-ipq-wifi-package,tplink_eap660hd-v1,TP-Link EAP660 HD v1)) diff --git a/target/linux/qualcommax/base-files/lib/preinit/09_mount_factory_data b/target/linux/qualcommax/base-files/lib/preinit/09_mount_factory_data old mode 100644 new mode 100755 index f6560bd1fb..9e741c3f77 --- a/target/linux/qualcommax/base-files/lib/preinit/09_mount_factory_data +++ b/target/linux/qualcommax/base-files/lib/preinit/09_mount_factory_data @@ -7,10 +7,10 @@ preinit_mount_factory_data() { . /lib/functions/system.sh case $(board_name) in - tplink,eap610-outdoor|\ + tplink,eap610od|\ + tplink,eap623od-hd-v1|\ tplink,eap620hd-v1|\ - tplink,eap660hd-v1|\ - tplink,eap623od-hd-v1) + tplink,eap660hd-v1) mtd_path=$(find_mtd_chardev "factory_data") ubiattach --dev-path="$mtd_path" --devn=1 mkdir /tmp/factory_data diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap610od.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap610od.dts new file mode 100644 index 0000000000..9e51446424 --- /dev/null +++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap610od.dts @@ -0,0 +1,52 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +/dts-v1/; + +#include "ipq6000-tplink.dtsi" + +/ { + model = "TP-Link EAP610-Outdoor"; + compatible = "tplink,eap610od", "qcom,ipq6018"; + + leds { + compatible = "gpio-leds"; + + led_sys_amber: sys-amber { + color = ; + function = LED_FUNCTION_STATUS; + gpios = <&tlmm 35 GPIO_ACTIVE_HIGH>; + }; + }; + + gpio-restart { + compatible = "gpio-restart"; + gpios = <&tlmm 61 GPIO_ACTIVE_LOW>; + open-source; + }; +}; + +&tlmm { + led_enable { + gpio-hog; + output-high; + gpios = <36 GPIO_ACTIVE_HIGH>; + line-name = "enable-leds"; + }; +}; + +&qpic_nand { + status = "okay"; + + nand@0 { + reg = <0>; + nand-ecc-strength = <4>; + nand-ecc-step-size = <512>; + nand-bus-width = <8>; + }; +}; + +&wifi { + status = "okay"; + qcom,ath11k-fw-memory-mode = <1>; + qcom,ath11k-calibration-variant = "TP-Link-EAP610-Outdoor"; +}; diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap623od-hd-v1.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap623od-hd-v1.dts new file mode 100644 index 0000000000..4df25cb36d --- /dev/null +++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap623od-hd-v1.dts @@ -0,0 +1,49 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +/dts-v1/; + +#include "ipq6000-tplink.dtsi" + +/ { + model = "TP-Link EAP623-Outdoor HD V1.0"; + compatible = "tplink,eap623od-hd-v1", "qcom,ipq6018"; + + leds { + compatible = "gpio-leds"; + + led_sys_wlan: sys-wlan { + color = ; + function = LED_FUNCTION_WLAN; + gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +&tlmm { + phy_pins: phy-reset-pin { + pins = "gpio77"; + function = "gpio"; + bias-pull-up; + }; +}; + +&qpic_nand { + status = "okay"; + + nand@0 { + reg = <0>; + nand-ecc-strength = <4>; + nand-ecc-step-size = <512>; + nand-bus-width = <8>; + + partitions { + compatible = "qcom,smem-part"; + }; + }; +}; + +&wifi { + status = "okay"; + qcom,ath11k-fw-memory-mode = <1>; + qcom,ath11k-calibration-variant = "TPLink-EAP623-Outdoor-HD-v1"; +}; diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap610-outdoor.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-tplink.dtsi similarity index 61% rename from target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap610-outdoor.dts rename to target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-tplink.dtsi index be42f4cd74..7640bb0d81 100644 --- a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-eap610-outdoor.dts +++ b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6000-tplink.dtsi @@ -1,7 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/dts-v1/; - #include "ipq6018.dtsi" #include "ipq6018-ess.dtsi" #include "ipq6018-nss.dtsi" @@ -13,20 +11,17 @@ #include / { - model = "TP-Link EAP610-Outdoor"; - compatible = "tplink,eap610-outdoor", "qcom,ipq6018"; - aliases { serial0 = &blsp1_uart3; led-boot = &led_sys_green; - led-failsafe = &led_sys_amber; + led-failsafe = &led_sys_green; led-running = &led_sys_green; - led-upgrade = &led_sys_amber; + led-upgrade = &led_sys_green; }; chosen { stdout-path = "serial0:115200n8"; - bootargs-append = " ubi.block=0,rootfs root=/dev/ubiblock0_1"; + bootargs-append = " root=/dev/ubiblock0_1"; }; keys { @@ -42,24 +37,12 @@ leds { compatible = "gpio-leds"; - led_sys_amber: sys-amber { - function = "system"; - color = ; - gpios = <&tlmm 35 GPIO_ACTIVE_HIGH>; - }; - led_sys_green: sys-green { - function = "system"; color = ; + function = LED_FUNCTION_STATUS; gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>; }; }; - - gpio-restart { - compatible = "gpio-restart"; - gpios = <&tlmm 61 GPIO_ACTIVE_LOW>; - open-source; - }; }; &tlmm { @@ -78,13 +61,6 @@ bias-pull-up; }; }; - - led_enable { - gpio-hog; - output-high; - gpios = <36 GPIO_ACTIVE_HIGH>; - line-name = "enable-leds"; - }; }; &dp5 { @@ -98,13 +74,17 @@ }; &mdio { + status = "okay"; pinctrl-0 = <&mdio_pins>; pinctrl-names = "default"; reset-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>; - status = "okay"; rtl8211f_4: ethernet-phy@4 { + compatible = "ethernet-phy-id001c.c916"; reg = <4>; + + realtek,clkout-disable; + realtek,aldps-enable; }; }; @@ -114,30 +94,10 @@ status = "okay"; qcom,port_phyinfo { - port@4 { + port@5 { port_id = <5>; phy_address = <4>; + port_mac_sel = "QGMAC_PORT"; }; }; }; - -&qpic_bam { - status = "okay"; -}; - -&qpic_nand { - status = "okay"; - - nand@0 { - reg = <0>; - nand-ecc-strength = <4>; - nand-ecc-step-size = <512>; - nand-bus-width = <8>; - }; -}; - -&wifi { - status = "okay"; - ieee80211-freq-limit = <2402000 5835000>; - qcom,ath11k-calibration-variant = "TP-Link-EAP610-Outdoor"; -}; diff --git a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-eap623od-hd-v1.dts b/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-eap623od-hd-v1.dts deleted file mode 100644 index a4e49c9d6f..0000000000 --- a/target/linux/qualcommax/files/arch/arm64/boot/dts/qcom/ipq6018-eap623od-hd-v1.dts +++ /dev/null @@ -1,151 +0,0 @@ -// SPDX-License-Identifier: MIT, GPL-2.0 or later -/* Copyright (c) 2025, Yang Xiwen */ - -/dts-v1/; - -#include "ipq6018.dtsi" -#include "ipq6018-cp-cpu.dtsi" -#include "ipq6018-ess.dtsi" -#include -#include -#include - -/ { - model = "TP-Link EAP623-Outdoor HD V1.0"; - compatible = "tplink,eap623od-hd-v1", "qcom,ipq6018"; - - aliases { - serial0 = &blsp1_uart3; - led-boot = &led_system; - led-failsafe = &led_system; - led-running = &led_system; - led-upgrade = &led_system; - }; - - chosen { - stdout-path = "serial0:115200n8"; - bootargs-append = " root=/dev/ubiblock0_1"; - }; - - keys { - compatible = "gpio-keys"; - - reset { - label = "reset"; - gpios = <&tlmm 9 GPIO_ACTIVE_LOW>; - linux,code = ; - }; - }; - - leds { - compatible = "gpio-leds"; - - led_system: system { - color = ; - function = LED_FUNCTION_STATUS; - gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>; - }; - - wlan { - color = ; - function = LED_FUNCTION_WLAN; - gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>; - }; - }; -}; - -&blsp1_uart3 { - pinctrl-0 = <&serial_3_pins>; - pinctrl-names = "default"; - status = "okay"; -}; - -&tlmm { - mdio_pins: mdio-pins { - mdc { - pins = "gpio64"; - function = "mdc"; - drive-strength = <8>; - bias-pull-up; - }; - - mdio { - pins = "gpio65"; - function = "mdio"; - drive-strength = <8>; - bias-pull-up; - }; - }; - - phy_pins: phy-reset-pin { - pins = "gpio77"; - function = "gpio"; - bias-pull-up; - }; -}; - -&mdio { - status = "okay"; - pinctrl-0 = <&mdio_pins>; - pinctrl-names = "default"; - - rtl8211f: ethernet-phy@4 { - compatible = "ethernet-phy-id001c.c916"; - reg = <4>; - reset-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>; - pinctrl-0 = <&phy_pins>; - pinctrl-names = "default"; - - realtek,clkout-disable; - realtek,aldps-enable; - }; -}; - -&switch { - status = "okay"; - switch_lan_bmp = ; /* lan port bitmap */ - switch_mac_mode1 = ; /* mac mode for uniphy instance0*/ - - qcom,port_phyinfo { - port@5 { - port_id = <5>; - phy_address = <4>; - port_mac_sel = "QGMAC_PORT"; - }; - }; -}; - -&edma { - status = "okay"; -}; - -&dp5 { - status = "okay"; - phy-handle = <&rtl8211f>; - phy-mode = "sgmii"; - label = "lan"; -}; - -&qpic_bam { - status = "okay"; -}; - -&qpic_nand { - status = "okay"; - - nand@0 { - reg = <0>; - nand-ecc-strength = <4>; - nand-ecc-step-size = <512>; - nand-bus-width = <8>; - - partitions { - compatible = "qcom,smem-part"; - }; - }; -}; - -&wifi { - qcom,ath11k-calibration-variant = "TPLink-EAP623-Outdoor-HD-v1"; - status = "okay"; -}; diff --git a/target/linux/qualcommax/image/ipq60xx.mk b/target/linux/qualcommax/image/ipq60xx.mk index e707de7f72..fa9959d558 100644 --- a/target/linux/qualcommax/image/ipq60xx.mk +++ b/target/linux/qualcommax/image/ipq60xx.mk @@ -149,7 +149,7 @@ define Device/qihoo_360v6 endef TARGET_DEVICES += qihoo_360v6 -define Device/tplink_eap610-outdoor +define Device/tplink_eap610od $(call Device/FitImage) $(call Device/UbiFit) DEVICE_VENDOR := TP-Link @@ -157,7 +157,7 @@ define Device/tplink_eap610-outdoor BLOCKSIZE := 128k PAGESIZE := 2048 SOC := ipq6000 - DEVICE_PACKAGES := ipq-wifi-tplink_eap610-outdoor + DEVICE_PACKAGES := ipq-wifi-tplink_eap610od kmod-phy-realtek IMAGES += web-ui-factory.bin IMAGE/web-ui-factory.bin := append-ubi | tplink-image-2022 TPLINK_SUPPORT_STRING := SupportList:\r\n \ @@ -165,7 +165,7 @@ define Device/tplink_eap610-outdoor EAP610-Outdoor(TP-Link|JP|AX1800-D):1.0\r\n \ EAP610-Outdoor(TP-Link|CA|AX1800-D):1.0 endef -TARGET_DEVICES += tplink_eap610-outdoor +TARGET_DEVICES += tplink_eap610od define Device/tplink_eap623od-hd-v1 $(call Device/FitImage) @@ -175,7 +175,7 @@ define Device/tplink_eap623od-hd-v1 DEVICE_VARIANT := v1 BLOCKSIZE := 128k PAGESIZE := 2048 - SOC := ipq6018 + SOC := ipq6000 DEVICE_PACKAGES := ipq-wifi-tplink_eap623od-hd-v1 kmod-phy-realtek IMAGES += web-ui-factory.bin IMAGE/web-ui-factory.bin := append-ubi | tplink-image-2022 diff --git a/target/linux/qualcommax/ipq60xx/base-files/etc/board.d/02_network b/target/linux/qualcommax/ipq60xx/base-files/etc/board.d/02_network old mode 100644 new mode 100755 index 0f22bd324c..9169bdf1e1 --- a/target/linux/qualcommax/ipq60xx/base-files/etc/board.d/02_network +++ b/target/linux/qualcommax/ipq60xx/base-files/etc/board.d/02_network @@ -40,7 +40,7 @@ ipq60xx_setup_interfaces() netgear,wax214|\ netgear,wax610|\ netgear,wax610y|\ - tplink,eap610-outdoor|\ + tplink,eap610od|\ tplink,eap623od-hd-v1) ucidef_set_interface_lan "lan" "dhcp" ;; @@ -63,7 +63,7 @@ ipq60xx_setup_macs() lan_mac=$(macaddr_add "$wan_mac" 1) label_mac=$wan_mac ;; - tplink,eap610-outdoor|\ + tplink,eap610od|\ tplink,eap623od-hd-v1) lan_mac=$(get_mac_binary /tmp/factory_data/default-mac 0) label_mac=$lan_mac diff --git a/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/firmware/11-ath11k-caldata b/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/firmware/11-ath11k-caldata index c9cedb13d1..19a55a18b7 100755 --- a/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/firmware/11-ath11k-caldata +++ b/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/firmware/11-ath11k-caldata @@ -29,7 +29,7 @@ case "$FIRMWARE" in zn,m2) caldata_extract "0:art" 0x1000 0x10000 ;; - tplink,eap610-outdoor|\ + tplink,eap610od|\ tplink,eap623od-hd-v1) caldata_from_file "/tmp/factory_data/radio" 0 0x10000 ;; diff --git a/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac b/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac index bef9cda678..074b01eb4f 100755 --- a/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac +++ b/target/linux/qualcommax/ipq60xx/base-files/etc/hotplug.d/ieee80211/11_fix_wifi_mac @@ -45,7 +45,8 @@ case "$board" in [ "$PHYNBR" = "0" ] && macaddr_add $label_mac 2 > /sys${DEVPATH}/macaddress [ "$PHYNBR" = "1" ] && macaddr_add $label_mac 3 > /sys${DEVPATH}/macaddress ;; - tplink,eap610-outdoor) + tplink,eap610od|\ + tplink,eap623od-hd-v1) label_mac=$(get_mac_binary /tmp/factory_data/default-mac 0) [ "$PHYNBR" = "0" ] && macaddr_add $label_mac 1 > /sys${DEVPATH}/macaddress [ "$PHYNBR" = "1" ] && macaddr_add $label_mac 2 > /sys${DEVPATH}/macaddress diff --git a/target/linux/qualcommax/ipq60xx/base-files/lib/upgrade/platform.sh b/target/linux/qualcommax/ipq60xx/base-files/lib/upgrade/platform.sh index bf49b56782..955edb153e 100755 --- a/target/linux/qualcommax/ipq60xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/qualcommax/ipq60xx/base-files/lib/upgrade/platform.sh @@ -137,7 +137,7 @@ platform_do_upgrade() { fw_setenv auto_recovery yes nand_do_upgrade "$1" ;; - tplink,eap610-outdoor|\ + tplink,eap610od|\ tplink,eap623od-hd-v1) tplink_do_upgrade "$1" ;;