ipq40xx: improve support for AC1200

This commit introduces various fixes for it.
Also renamed this device to avoid confusion.
This commit is contained in:
AmadeusGhost 2022-07-09 23:25:19 +08:00 committed by AmadeusGhost
parent e4d5e7769b
commit 2a7c05f0d4
7 changed files with 79 additions and 176 deletions

View File

@ -59,11 +59,6 @@ engenius,ens620ext)
ucidef_set_led_switch "lan1" "LAN1" "green:lan1" "switch0" "0x10" ucidef_set_led_switch "lan1" "LAN1" "green:lan1" "switch0" "0x10"
ucidef_set_led_switch "lan2" "LAN2" "green:lan2" "switch0" "0x20" ucidef_set_led_switch "lan2" "LAN2" "green:lan2" "switch0" "0x20"
;; ;;
hugo,ac1200)
ucidef_set_led_default "green" "GREEN" "green:ctrl1" "1"
ucidef_set_led_default "red" "RED" "red:ctrl2" "1"
ucidef_set_led_default "blue" "BLUE" "blue:ctrl3" "1"
;;
mobipromo,cm520-79f) mobipromo,cm520-79f)
ucidef_set_led_switch "wan" "WAN" "blue:wan" "switch0" "0x20" ucidef_set_led_switch "wan" "WAN" "blue:wan" "switch0" "0x20"
ucidef_set_led_switch "lan1" "LAN1" "blue:lan1" "switch0" "0x10" ucidef_set_led_switch "lan1" "LAN1" "blue:lan1" "switch0" "0x10"

View File

@ -76,18 +76,15 @@ ipq40xx_setup_interfaces()
ucidef_add_switch "switch0" \ ucidef_add_switch "switch0" \
"0t@eth0" "3:lan" "4:lan" "5:wan" "0t@eth0" "3:lan" "4:lan" "5:wan"
;; ;;
hiwifi,c526a) hiwifi,c526a|\
ucidef_add_switch "switch0" \
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:wan"
;;
hugo,ac1200)
ucidef_add_switch "switch0" \
"0t@eth0" "5:wan" "3:lan"
;;
zte,mf263) zte,mf263)
ucidef_add_switch "switch0" \ ucidef_add_switch "switch0" \
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:wan" "0t@eth0" "2:lan" "3:lan" "4:lan" "5:wan"
;; ;;
leguang,ca100)
ucidef_add_switch "switch0" \
"0t@eth0" "3:lan" "5:wan"
;;
mobipromo,cm520-79f) mobipromo,cm520-79f)
ucidef_add_switch "switch0" \ ucidef_add_switch "switch0" \
"0t@eth0" "3:lan:2" "4:lan:1" "5:wan" "0t@eth0" "3:lan:2" "4:lan:1" "5:wan"

View File

@ -61,6 +61,7 @@ case "$FIRMWARE" in
ezviz,cs-w3-wd1200g-eup |\ ezviz,cs-w3-wd1200g-eup |\
glinet,gl-b1300 |\ glinet,gl-b1300 |\
glinet,gl-s1300 |\ glinet,gl-s1300 |\
leguang,ca100 |\
linksys,ea6350v3 |\ linksys,ea6350v3 |\
mobipromo,cm520-79f |\ mobipromo,cm520-79f |\
p2w,r619ac |\ p2w,r619ac |\
@ -104,7 +105,6 @@ case "$FIRMWARE" in
compex,wpj428 |\ compex,wpj428 |\
engenius,eap1300 |\ engenius,eap1300 |\
engenius,eap2200 |\ engenius,eap2200 |\
hugo,ac1200 |\
openmesh,a42 |\ openmesh,a42 |\
openmesh,a62 |\ openmesh,a62 |\
qxwlan,e2600ac-c1 |\ qxwlan,e2600ac-c1 |\
@ -169,6 +169,7 @@ case "$FIRMWARE" in
ezviz,cs-w3-wd1200g-eup |\ ezviz,cs-w3-wd1200g-eup |\
glinet,gl-b1300 |\ glinet,gl-b1300 |\
glinet,gl-s1300 |\ glinet,gl-s1300 |\
leguang,ca100 |\
linksys,ea6350v3 |\ linksys,ea6350v3 |\
mobipromo,cm520-79f |\ mobipromo,cm520-79f |\
p2w,r619ac |\ p2w,r619ac |\
@ -210,7 +211,6 @@ case "$FIRMWARE" in
compex,wpj419 |\ compex,wpj419 |\
compex,wpj428 |\ compex,wpj428 |\
engenius,eap1300 |\ engenius,eap1300 |\
hugo,ac1200 |\
engenius,eap2200 |\ engenius,eap2200 |\
openmesh,a42 |\ openmesh,a42 |\
openmesh,a62 |\ openmesh,a62 |\

View File

@ -182,7 +182,8 @@ platform_do_upgrade() {
cilab,meshpoint-one |\ cilab,meshpoint-one |\
hiwifi,c526a |\ hiwifi,c526a |\
mobipromo,cm520-79f |\ mobipromo,cm520-79f |\
qxwlan,e2600ac-c2) qxwlan,e2600ac-c2 |\
zte,mf263)
nand_do_upgrade "$1" nand_do_upgrade "$1"
;; ;;
alfa-network,ap120c-ac) alfa-network,ap120c-ac)
@ -212,10 +213,6 @@ platform_do_upgrade() {
asus_nand_upgrade_tar 20951040 "$1" asus_nand_upgrade_tar 20951040 "$1"
fi fi
;; ;;
zte,mf263)
PART_NAME=rootfs
nand_do_upgrade "$1"
;;
cellc,rtl30vw) cellc,rtl30vw)
CI_UBIPART="ubifs" CI_UBIPART="ubifs"
askey_do_upgrade "$1" askey_do_upgrade "$1"

View File

@ -1,6 +1,4 @@
/* // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
* Copyright (c) 2019 Hugo Yuan <hugolxq@gmail.com>
*/
#include "qcom-ipq4019.dtsi" #include "qcom-ipq4019.dtsi"
#include <dt-bindings/gpio/gpio.h> #include <dt-bindings/gpio/gpio.h>
@ -8,22 +6,21 @@
#include <dt-bindings/soc/qcom,tcsr.h> #include <dt-bindings/soc/qcom,tcsr.h>
/ { / {
model = "Hugo AC1200"; model = "LEGUANG CA100";
compatible = "hugo,ac1200", "qcom,ipq4019"; compatible = "leguang,ca100", "qcom,ipq4019";
memory {
device_type = "memory";
reg = <0x80000000 0x10000000>; /* 256MB */
};
aliases { aliases {
led-boot = &power; led-boot = &led_status_blue;
led-failsafe = &power; led-failsafe = &led_status_red;
led-running = &power; led-running = &led_status_blue;
led-upgrade = &power; led-upgrade = &led_status_green;
}; };
soc { soc {
rng@22000 {
status = "okay";
};
mdio@90000 { mdio@90000 {
status = "okay"; status = "okay";
pinctrl-0 = <&mdio_pins>; pinctrl-0 = <&mdio_pins>;
@ -41,7 +38,6 @@
}; };
tcsr@194b000 { tcsr@194b000 {
/* select hostmode */
compatible = "qcom,tcsr"; compatible = "qcom,tcsr";
reg = <0x194b000 0x100>; reg = <0x194b000 0x100>;
qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>; qcom,usb-hsphy-mode-select = <TCSR_USB_HSPHY_HOST_MODE>;
@ -60,58 +56,6 @@
qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>; qcom,wifi_noc_memtype_m0_m2 = <TCSR_WIFI_NOC_MEMTYPE_M0_M2>;
}; };
usb2@60f8800 {
status = "okay";
dwc3@6000000 {
#address-cells = <1>;
#size-cells = <0>;
usb2_port1: port@1 {
reg = <1>;
#trigger-source-cells = <0>;
};
};
};
serial@78af000 {
pinctrl-0 = <&serial_0_pins>;
pinctrl-names = "default";
status = "okay";
};
serial@78b0000 {
pinctrl-0 = <&serial_1_pins>;
pinctrl-names = "default";
status = "okay";
};
i2c@78b7000 { /* BLSP1 QUP2 */
pinctrl-0 = <&i2c_0_pins>;
pinctrl-names = "default";
status = "okay";
};
usb3: usb3@8af8800 {
status = "okay";
dwc3@8a00000 {
#address-cells = <1>;
#size-cells = <0>;
usb3_port1: port@1 {
reg = <1>;
#trigger-source-cells = <0>;
};
usb3_port2: port@2 {
reg = <2>;
#trigger-source-cells = <0>;
};
};
};
crypto@8e3a000 { crypto@8e3a000 {
status = "okay"; status = "okay";
}; };
@ -127,34 +71,34 @@
edma@c080000 { edma@c080000 {
status = "okay"; status = "okay";
}; };
};
leds { keys {
compatible = "gpio-leds"; compatible = "gpio-keys";
led1 { reset {
label = "green:ctrl1"; label = "reset";
gpios = <&tlmm 44 GPIO_ACTIVE_LOW>; gpios = <&tlmm 18 GPIO_ACTIVE_LOW>;
}; linux,code = <KEY_RESTART>;
};
};
led2 { leds {
label = "red:ctrl2"; compatible = "gpio-leds";
gpios = <&tlmm 45 GPIO_ACTIVE_LOW>;
};
power: led3 { led_status_green: status-green {
label = "blue:ctrl3"; label = "green:status";
gpios = <&tlmm 46 GPIO_ACTIVE_LOW>; gpios = <&tlmm 44 GPIO_ACTIVE_LOW>;
};
}; };
keys { led_status_red: status-red {
compatible = "gpio-keys"; label = "red:status";
gpios = <&tlmm 45 GPIO_ACTIVE_LOW>;
};
reset { led_status_blue: status-blue {
label = "reset"; label = "blue:status";
gpios = <&tlmm 18 GPIO_ACTIVE_LOW>; gpios = <&tlmm 46 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
}; };
}; };
}; };
@ -167,11 +111,11 @@
pinctrl-0 = <&spi_0_pins>; pinctrl-0 = <&spi_0_pins>;
pinctrl-names = "default"; pinctrl-names = "default";
status = "okay"; status = "okay";
cs-gpios = <&tlmm 12 GPIO_ACTIVE_LOW>; cs-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
flash@0 { flash@0 {
reg = <0>;
compatible = "jedec,spi-nor"; compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <24000000>; spi-max-frequency = <24000000>;
partitions { partitions {
@ -180,49 +124,49 @@
#size-cells = <1>; #size-cells = <1>;
partition@0 { partition@0 {
label = "0:SBL1"; label = "SBL1";
reg = <0x0 0x40000>; reg = <0x0 0x40000>;
read-only; read-only;
}; };
partition@40000 { partition@40000 {
label = "0:MIBIB"; label = "MIBIB";
reg = <0x40000 0x20000>; reg = <0x40000 0x20000>;
read-only; read-only;
}; };
partition@60000 { partition@60000 {
label = "0:QSEE"; label = "QSEE";
reg = <0x60000 0x60000>; reg = <0x60000 0x60000>;
read-only; read-only;
}; };
partition@c0000 { partition@c0000 {
label = "0:CDT"; label = "CDT";
reg = <0xc0000 0x10000>; reg = <0xc0000 0x10000>;
read-only; read-only;
}; };
partition@d0000 { partition@d0000 {
label = "0:DDRPARAMS"; label = "DDRPARAMS";
reg = <0xd0000 0x10000>; reg = <0xd0000 0x10000>;
read-only; read-only;
}; };
partition@e0000 { partition@e0000 {
label = "0:APPSBLENV"; label = "APPSBLENV";
reg = <0xe0000 0x10000>; reg = <0xe0000 0x10000>;
read-only; read-only;
}; };
partition@f0000 { partition@f0000 {
label = "0:APPSBL"; label = "APPSBL";
reg = <0xf0000 0x80000>; reg = <0xf0000 0x80000>;
read-only; read-only;
}; };
partition@170000 { partition@170000 {
label = "0:ART"; label = "ART";
reg = <0x170000 0x10000>; reg = <0x170000 0x10000>;
read-only; read-only;
}; };
@ -236,23 +180,17 @@
}; };
}; };
&blsp1_uart1 {
pinctrl-0 = <&serial_pins>;
pinctrl-names = "default";
status = "okay";
};
&cryptobam { &cryptobam {
status = "okay"; status = "okay";
}; };
&qpic_bam {
status = "okay";
};
&tlmm { &tlmm {
i2c_0_pins: i2c-0-pinmux {
mux {
pins = "gpio20", "gpio21";
function = "blsp_i2c0";
bias-disable;
};
};
mdio_pins: mdio_pinmux { mdio_pins: mdio_pinmux {
mux_1 { mux_1 {
pins = "gpio6"; pins = "gpio6";
@ -267,7 +205,7 @@
}; };
}; };
serial_0_pins: serial0-pinmux { serial_pins: serial_pinmux {
mux { mux {
pins = "gpio16", "gpio17"; pins = "gpio16", "gpio17";
function = "blsp_uart0"; function = "blsp_uart0";
@ -275,14 +213,6 @@
}; };
}; };
serial_1_pins: serial1_pinmux {
mux {
pins = "gpio8", "gpio9";
function = "blsp_uart1";
bias-disable;
};
};
spi_0_pins: spi_0_pinmux { spi_0_pins: spi_0_pinmux {
pinmux { pinmux {
function = "blsp_spi0"; function = "blsp_spi0";
@ -301,24 +231,10 @@
}; };
}; };
&usb3_ss_phy {
status = "okay";
};
&usb3_hs_phy {
status = "okay";
};
&usb2_hs_phy {
status = "okay";
};
&wifi0 { &wifi0 {
status = "okay"; status = "okay";
qcom,ath10k-calibration-variant = "hugo_ac1200";
}; };
&wifi1 { &wifi1 {
status = "okay"; status = "okay";
qcom,ath10k-calibration-variant = "hugo_ac1200";
}; };

View File

@ -521,18 +521,16 @@ define Device/hiwifi_c526a
endef endef
TARGET_DEVICES += hiwifi_c526a TARGET_DEVICES += hiwifi_c526a
define Device/hugo_ac1200 define Device/leguang_ca100
$(call Device/FitImage) $(call Device/FitzImage)
DEVICE_VENDOR := Hugo DEVICE_VENDOR := LEGUANG
DEVICE_MODEL := AC1200 DEVICE_MODEL := CA100
BOARD_NAME := hugo_ac1200 DEVICE_DTS := qcom-ipq4019-ca100
DEVICE_DTS := qcom-ipq4019-hugo-ac1200
KERNEL_SIZE := 4096k KERNEL_SIZE := 4096k
IMAGE_SIZE := 31232k IMAGE_SIZE := 31232k
IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata
DEVICE_PACKAGES := ipq-wifi-hugo_ac1200
endef endef
TARGET_DEVICES += hugo_ac1200 TARGET_DEVICES += leguang_ca100
define Device/linksys_ea6350v3 define Device/linksys_ea6350v3
# The Linksys EA6350v3 has a uboot bootloader that does not # The Linksys EA6350v3 has a uboot bootloader that does not
@ -704,20 +702,6 @@ define Device/p2w_r619ac-128m
endef endef
TARGET_DEVICES += p2w_r619ac-128m TARGET_DEVICES += p2w_r619ac-128m
define Device/zte_mf263
$(call Device/FitzImage)
$(call Device/UbiFit)
DEVICE_VENDOR := ZTE
DEVICE_MODEL := MF263
DEVICE_DTS := qcom-ipq4019-zte-mf263
BLOCKSIZE := 128k
PAGESIZE := 2048
IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
DEVICE_PACKAGES := -kmod-ath10k-ct -ath10k-firmware-qca4019-ct kmod-ath10k ath10k-firmware-qca4019 ipq-wifi-zte_mf263
endef
TARGET_DEVICES += zte_mf263
define Device/qcom_ap-dk01.1-c1 define Device/qcom_ap-dk01.1-c1
DEVICE_VENDOR := Qualcomm Atheros DEVICE_VENDOR := Qualcomm Atheros
DEVICE_MODEL := AP-DK01.1 DEVICE_MODEL := AP-DK01.1
@ -788,6 +772,20 @@ define Device/unielec_u4019-32m
endef endef
TARGET_DEVICES += unielec_u4019-32m TARGET_DEVICES += unielec_u4019-32m
define Device/zte_mf263
$(call Device/FitzImage)
$(call Device/UbiFit)
DEVICE_VENDOR := ZTE
DEVICE_MODEL := MF263
DEVICE_DTS := qcom-ipq4019-zte-mf263
BLOCKSIZE := 128k
PAGESIZE := 2048
IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
DEVICE_PACKAGES := ipq-wifi-zte_mf263
endef
TARGET_DEVICES += zte_mf263
define Device/zyxel_nbg6617 define Device/zyxel_nbg6617
$(call Device/FitImageLzma) $(call Device/FitImageLzma)
DEVICE_VENDOR := ZyXEL DEVICE_VENDOR := ZyXEL

View File

@ -39,10 +39,10 @@ Signed-off-by: John Crispin <john@phrozen.org>
qcom-ipq4019-ap.dk07.1-c2.dtb \ qcom-ipq4019-ap.dk07.1-c2.dtb \
+ qcom-ipq4019-a62.dtb \ + qcom-ipq4019-a62.dtb \
+ qcom-ipq4019-c526a.dtb \ + qcom-ipq4019-c526a.dtb \
+ qcom-ipq4019-ca100.dtb \
+ qcom-ipq4019-cm520-79f.dtb \ + qcom-ipq4019-cm520-79f.dtb \
+ qcom-ipq4019-ea8300.dtb \ + qcom-ipq4019-ea8300.dtb \
+ qcom-ipq4019-eap2200.dtb \ + qcom-ipq4019-eap2200.dtb \
+ qcom-ipq4019-hugo-ac1200.dtb \
+ qcom-ipq4019-zte-mf263.dtb \ + qcom-ipq4019-zte-mf263.dtb \
+ qcom-ipq4019-fritzbox-7530.dtb \ + qcom-ipq4019-fritzbox-7530.dtb \
+ qcom-ipq4019-fritzrepeater-1200.dtb \ + qcom-ipq4019-fritzrepeater-1200.dtb \