From 98eeb48d7069b0ca3e52fdd23a03951532aa7ddc Mon Sep 17 00:00:00 2001 From: zhouF96 Date: Thu, 7 Apr 2022 22:49:43 +0800 Subject: [PATCH] Add basic support for TL-XTR10890 (#9202) * kernel: add module for bcm574xx 575xx serials kernel: add module for bnxt_en Linux driver for the Broadcom NetXtreme-C/NetXtreme-E BCM573xx, BCM574xx, BCM575xx, NetXtreme-S BCM5880x (up to 200 Gbps) Ethernet Network Controllers and Broadcom Nitro BCM58700 4-port 1/2.5/10 Gbps Ethernet Network Controller. * reapply bcm578xx sfp 2.5g patch * add basic tplink-xtr10890 support * update 10890dts and add to platform.sh * update 10890 dts to try boot qcn9074 * revert qca-ssdk to original version --- package/firmware/ipq-wifi/Makefile | 4 +- .../ipq-wifi/board-tplink_xtr10890.ipq8074 | Bin 0 -> 131176 bytes .../ipq807x/base-files/etc/board.d/02_network | 3 + .../etc/hotplug.d/firmware/11-ath11k-caldata | 3 + .../base-files/lib/upgrade/platform.sh | 3 + .../arm64/boot/dts/qcom/ipq8078-xtr10890.dts | 969 ++++++++++++++++++ target/linux/ipq807x/image/generic.mk | 13 + .../900-arm64-dts-add-OpenWrt-DTS-files.patch | 3 +- 8 files changed, 996 insertions(+), 2 deletions(-) create mode 100755 package/firmware/ipq-wifi/board-tplink_xtr10890.ipq8074 create mode 100755 target/linux/ipq807x/files/arch/arm64/boot/dts/qcom/ipq8078-xtr10890.dts diff --git a/package/firmware/ipq-wifi/Makefile b/package/firmware/ipq-wifi/Makefile index d56a18265..416a03413 100644 --- a/package/firmware/ipq-wifi/Makefile +++ b/package/firmware/ipq-wifi/Makefile @@ -58,7 +58,8 @@ ALLWIFIBOARDS:= \ qnap_301w \ qxwlan_e2600ac \ zte_mf263 \ - zte_mf269 + zte_mf269 \ + tplink_xtr10890 ALLWIFIPACKAGES:=$(foreach BOARD,$(ALLWIFIBOARDS),ipq-wifi-$(BOARD)) @@ -162,5 +163,6 @@ $(eval $(call generate-ipq-wifi-package,qnap_301w,QNAP 301w)) $(eval $(call generate-ipq-wifi-package,qxwlan_e2600ac,Qxwlan E2600AC)) $(eval $(call generate-ipq-wifi-package,zte_mf263,ZTE MF263)) $(eval $(call generate-ipq-wifi-package,zte_mf269,ZTE MF269)) +$(eval $(call generate-ipq-wifi-package,tplink_xtr10890,TPLINK XTR10890)) $(foreach PACKAGE,$(ALLWIFIPACKAGES),$(eval $(call BuildPackage,$(PACKAGE)))) diff --git a/package/firmware/ipq-wifi/board-tplink_xtr10890.ipq8074 b/package/firmware/ipq-wifi/board-tplink_xtr10890.ipq8074 new file mode 100755 index 0000000000000000000000000000000000000000..2815a4d661471ac403d9c0f38258aa8cd95a266f GIT binary patch literal 131176 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 CPBuUQ literal 0 HcmV?d00001 diff --git a/target/linux/ipq807x/base-files/etc/board.d/02_network b/target/linux/ipq807x/base-files/etc/board.d/02_network index 93421fbb8..cbd229347 100644 --- a/target/linux/ipq807x/base-files/etc/board.d/02_network +++ b/target/linux/ipq807x/base-files/etc/board.d/02_network @@ -17,6 +17,9 @@ ipq807x_setup_interfaces() zte,mf269) ucidef_set_interfaces_lan_wan "eth0" "eth1" ;; + tplink,xtr10890) + ucidef_set_interfaces_lan_wan "eth0 eth1 eth2 eth3 eth4" "eth5" + ;; *) echo "Unsupported hardware. Network interfaces not initialized" ;; diff --git a/target/linux/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata b/target/linux/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata index 68334ce41..4a91b83d8 100644 --- a/target/linux/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata +++ b/target/linux/ipq807x/base-files/etc/hotplug.d/firmware/11-ath11k-caldata @@ -15,6 +15,9 @@ case "$FIRMWARE" in zte,mf269) caldata_extract "0:ART" 0x1000 0x20000 ;; + tplink,xtr10890) + caldata_extract "0:ART" 0x1000 0x20000 + ;; esac ;; *) diff --git a/target/linux/ipq807x/base-files/lib/upgrade/platform.sh b/target/linux/ipq807x/base-files/lib/upgrade/platform.sh index a7de5ea47..a164a73de 100644 --- a/target/linux/ipq807x/base-files/lib/upgrade/platform.sh +++ b/target/linux/ipq807x/base-files/lib/upgrade/platform.sh @@ -18,6 +18,9 @@ platform_do_upgrade() { zte,mf269) nand_do_upgrade "$1" ;; + tplink,xtr10890) + nand_do_upgrade "$1" + ;; *) default_do_upgrade "$1" ;; diff --git a/target/linux/ipq807x/files/arch/arm64/boot/dts/qcom/ipq8078-xtr10890.dts b/target/linux/ipq807x/files/arch/arm64/boot/dts/qcom/ipq8078-xtr10890.dts new file mode 100755 index 000000000..9b2ef3875 --- /dev/null +++ b/target/linux/ipq807x/files/arch/arm64/boot/dts/qcom/ipq8078-xtr10890.dts @@ -0,0 +1,969 @@ +// SPDX-License-Identifier: GPL-2.0-only +/dts-v1/; +/* Copyright (c) 2017, 2020-2021, The Linux Foundation. All rights reserved. + */ +#include "ipq8074.dtsi" +#include "ipq8074-hk-cpu.dtsi" +#include "ipq8074-ac-nss.dtsi" +#include +#include +#include + +/ { + #address-cells = <0x2>; + #size-cells = <0x2>; + model = "TP-LINK XTR10890"; + compatible = "tplink,xtr10890", "qcom,ipq8074"; + interrupt-parent = <&intc>; + //qcom,msm-id = <0x143 0x0>, <0x186 0x0>, <0x158 0x0>, <0x188 0x0>; + + aliases { + serial0 = &blsp1_uart5; + serial1 = &blsp1_uart3; + /* + * Aliases as required by u-boot + * to patch MAC addresses + */ + led-boot = &led_system_red; + led-failsafe = &led_system_green; + led-running = &led_system_red; + led-upgrade = &led_system_green; + ethernet0 = &dp1; + ethernet1 = &dp2; + ethernet2 = &dp3; + ethernet3 = &dp4; + ethernet4 = &dp5; + ethernet5 = &dp6; + }; + + chosen { + stdout-path = "serial0"; + bootargs-append = " root=/dev/ubiblock0_1 rootfstype=squashfs"; + }; + + reserved-memory { + + /delete-node/ wifi_dump@51100000; + /delete-node/ wigig_dump@51300000; + qcn9000_pcie0: qcn9000_pcie0@51100000 { + no-map; + reg = <0x0 0x51100000 0x0 0x03500000>; + }; + + mhi_region0: dma_pool0@54600000 { + compatible = "shared-dma-pool"; + no-map; + reg = <0x0 0x54600000 0x0 0x00900000>; + }; + + }; + + + keys { + compatible = "gpio-keys"; + pinctrl-0 = <&button_pins>; + pinctrl-names = "default"; + status = "okay"; + button@1 { + label = "wps"; + linux,code = ; + gpios = <&tlmm 50 GPIO_ACTIVE_LOW>; + linux,input-type = <1>; + debounce-interval = <60>; + }; + }; + + leds { + compatible = "gpio-leds"; + led_system_green: system-green { + label = "green:system"; + gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; + }; + led_system_red: system-red { + label = "red:system"; + gpios = <&tlmm 29 GPIO_ACTIVE_HIGH>; + }; + + 10g-green { + label = "green:10g"; + gpios = <&tlmm 32 GPIO_ACTIVE_HIGH>; + }; + + sfp_green { + label = "green:sfp"; + gpios = <&tlmm 30 GPIO_ACTIVE_HIGH>; + }; + }; + +}; + +&sdhc_1 { + status = "okay"; +}; + + +&qpic_nand { + pinctrl-0 = <&qpic_pins>; + pinctrl-names = "default"; + status = "okay"; + nand@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <1>; + nand-ecc-strength = <4>; + nand-ecc-step-size = <512>; + nand-bus-width = <8>; + + partition0@0 { + label = "0:SBL1"; + reg = <0x0 0x80000>; + read-only; + }; + partition1@80000 { + label = "0:MIBIB"; + reg = <0x80000 0x40000>; + }; + + partition2@c0000 { + label = "0:BOOTCONFIG"; + reg = <0xc0000 0x20000>; + read-only; + }; + partition3@e0000 { + label = "0:BOOTCONFIG1"; + reg = <0xe0000 0x20000>; + read-only; + }; + + partition4@100000 { + label = "0:QSEE"; + reg = <0x100000 0x280000>; + read-only; + }; + + partition4@380000 { + label = "0:DEVCFG"; + reg = <0x380000 0x20000>; + read-only; + }; + + partition4@3a0000 { + label = "0:RPM"; + reg = <0x3a0000 0x40000>; + read-only; + }; + + partition5@3e0000 { + label = "0:CDT"; + reg = <0x3e0000 0x20000>; + read-only; + }; + + partition6@400000 { + label = "0:APPSBLENV"; + reg = <0x400000 0x40000>; + }; + + partition7@440000 { + label = "0:APPSBL"; + reg = <0x440000 0x100000>; + }; + + partition8@540000 { + label = "0:ART"; + reg = <0x540000 0x80000>; + }; + + partition12@5c0000 { + label = "rootfs"; + reg = <0x5c0000 0x7000000>; + }; + + partition13@75c0000 { + label = "0:WIFIFW"; + reg = <0x75c0000 0x900000>; + }; + + partition15@7ec0000 { + label = "0:ETHPHYFW"; + reg = <0x7ec0000 0x80000>; + }; + }; +}; + + +&mdio{ + status = "okay"; + + pinctrl-0 = <&mdio_pins>; + pinctrl-names = "default"; + phy-reset-gpio = <&tlmm 37 0>; + phy0: ethernet-phy@0 { + reg = <16>; + }; + phy1: ethernet-phy@1 { + reg = <17>; + }; + phy2: ethernet-phy@2 { + reg = <18>; + }; + phy3: ethernet-phy@3 { + reg = <19>; + }; + phy4: ethernet-phy@4 { + reg = <30>; + }; + phy5: ethernet-phy@5 { + compatible ="ethernet-phy-ieee802.3-c45"; + reg = <0>; + }; +}; + +&tlmm { + sd_pins: sd-pinmux { + pins = "gpio63"; + function = "sd_card"; + drive-strength = <8>; + bias-pull-up; + }; + + button_pins: button_pins { + wps_button { + pins = "gpio50"; + function = "gpio"; + drive-strength = <8>; + bias-pull-up; + }; + }; + + leds_pins: leds_pinmux { + led_pwr_green { + pins = "gpio31"; + function = "gpio"; + drive-strength = <8>; + bias-pull-down; + }; + + led_pwr_red { + pins = "gpio29"; + function = "gpio"; + drive-strength = <8>; + bias-pull-down; + }; + + led_sfp_green { + pins = "gpio30"; + function = "gpio"; + drive-strength = <8>; + bias-pull-down; + }; + + led_10g_green { + pins = "gpio32"; + function = "gpio"; + drive-strength = <8>; + bias-pull-down; + }; + }; + + mdio_pins: mdio_pinmux { + mux_0 { + pins = "gpio68"; + function = "mdc"; + drive-strength = <8>; + bias-pull-up; + }; + mux_1 { + pins = "gpio69"; + function = "mdio"; + drive-strength = <8>; + bias-pull-up; + }; + }; + + qpic_pins: qpic-pins { + pins = "gpio1", "gpio3", "gpio4", + "gpio5", "gpio6", "gpio7", + "gpio8", "gpio10", "gpio11", + "gpio12", "gpio13", "gpio14", + "gpio15", "gpio17"; + function = "qpic"; + drive-strength = <8>; + bias-disable; + }; + + uniphy_pins: uniphy_pinmux { + mux { + pins = "gpio60"; + function = "rx2"; + bias-disable; + }; + + sfp_tx { + pins = "gpio52"; + function = "gpio"; + drive-strength = <8>; + bias-pull-down; + output-low; + }; + }; + + i2c_0_pins: i2c-0-pinmux { + pins = "gpio46", "gpio47"; + function = "blsp1_i2c"; + drive-strength = <8>; + bias-disable; + }; + + pwm_pins: pwm_pinmux { + mux_1 { + pins = "gpio25"; + function = "pwm02"; + drive-strength = <8>; + }; + }; + + pcie0_pins: pcie_pins { + pcie0_rst { + pins = "gpio58"; + function = "pcie0_rst"; + drive-strength = <8>; + bias-pull-down; + }; + pcie0_wake { + pins = "gpio59"; + function = "pcie0_wake"; + drive-strength = <8>; + bias-pull-down; + }; + }; +}; + +&blsp1_uart5 { + status = "okay"; +}; + +&blsp1_spi1 { + status = "okay"; + pinctrl-0 = <&spi_0_pins>; + pinctrl-names = "default"; + cs-select = <0>; + + m25p80@0 { + compatible = "n25q128a11"; + #address-cells = <1>; + #size-cells = <1>; + reg = <0>; + spi-max-frequency = <50000000>; + }; +}; + +&blsp1_i2c2 { + pinctrl-0 = <&i2c_0_pins>; + pinctrl-names = "default"; + status = "okay"; +}; + +&ssphy_0 { + status = "okay"; +}; + +&qusb_phy_0 { + status = "okay"; +}; + +&ssphy_1 { + status = "okay"; +}; + +&qusb_phy_1 { + status = "okay"; +}; + +&usb_0 { + status = "okay"; +}; + +&usb_1 { + status = "okay"; +}; + +&prng { + status = "okay"; +}; + +&cryptobam { + status = "okay"; +}; + +&crypto { + status = "okay"; +}; + +&qpic_bam { + status = "okay"; +}; + +&qmp_pcie_phy0 { + status = "okay"; +}; + +&pcie0 { + perst-gpio = <&tlmm 58 1>; + status = "okay"; + + pcie0_rp { + status = "ok"; + + mhi_0: qcom,mhi@0 { + reg = <0 0 0 0 0 >; + qrtr_instance_id = <0x20>; + #address-cells = <0x2>; + #size-cells = <0x2>; + memory-region = <&mhi_region0>; + // base-addr = <0x51100000>; + // m3-dump-addr = <0x53400000>; + // etr-addr = <0x53500000>; + // qcom,caldb-addr = <0x53600000>; + // mhi,max-channels = <30>; + // mhi,timeout = <10000>; + // qcom,board_id= <0xa4>; + + // pcie0_mhi: pcie0_mhi { + // status = "ok"; + // }; + }; + }; + +}; + +&qmp_pcie_phy1 { + //status = "okay"; + status = "disabled"; +}; + +&pcie1 { + perst-gpio = <&tlmm 61 0x1>; + status = "disabled"; +}; + +&ess_switch { + status = "okay"; + pinctrl-0 = <&uniphy_pins>; + pinctrl-names = "default"; + switch_cpu_bmp = <0x1>; /* cpu port bitmap */ + switch_lan_bmp = <0x3e>; /* lan port bitmap */ + switch_wan_bmp = <0x40>; /* wan port bitmap */ + switch_mac_mode = <0x0b>; /* mac mode for uniphy instance0*/ + switch_mac_mode1 = <0x0e>; /* mac mode for uniphy instance1*/ + switch_mac_mode2 = <0x0d>; /* mac mode for uniphy instance2*/ + bm_tick_mode = <0>; /* bm tick mode */ + tm_tick_mode = <0>; /* tm tick mode */ + qcom,port_phyinfo { + port@0 { + port_id = <1>; + phy_address = <16>; + }; + port@1 { + port_id = <2>; + phy_address = <17>; + }; + port@2 { + port_id = <3>; + phy_address = <18>; + }; + port@3 { + port_id = <4>; + phy_address = <19>; + }; + port@4 { + port_id = <5>; + phy_address = <30>; + phy_i2c_address = <30>; + phy-i2c-mode; /*i2c access phy */ + media-type = "sfp"; /* fiber mode */ + }; + port@5 { + port_id = <6>; + phy_address = <0>; + ethernet-phy-ieee802.3-c45; + }; + }; + port_scheduler_resource { + + port@0 { + port_id = < 0x00 >; + ucast_queue = < 0x00 0x8f >; + mcast_queue = < 0x100 0x10f >; + l0sp = < 0x00 0x23 >; + l0cdrr = < 0x00 0x2f >; + l0edrr = < 0x00 0x2f >; + l1cdrr = < 0x00 0x07 >; + l1edrr = < 0x00 0x07 >; + }; + + port@1 { + port_id = < 0x01 >; + ucast_queue = < 0x90 0x9f >; + mcast_queue = < 0x110 0x113 >; + l0sp = < 0x24 0x27 >; + l0cdrr = < 0x30 0x3f >; + l0edrr = < 0x30 0x3f >; + l1cdrr = < 0x08 0x0b >; + l1edrr = < 0x08 0x0b >; + }; + + port@2 { + port_id = < 0x02 >; + ucast_queue = < 0xa0 0xaf >; + mcast_queue = < 0x114 0x117 >; + l0sp = < 0x28 0x2b >; + l0cdrr = < 0x40 0x4f >; + l0edrr = < 0x40 0x4f >; + l1cdrr = < 0x0c 0x0f >; + l1edrr = < 0x0c 0x0f >; + }; + + port@3 { + port_id = < 0x03 >; + ucast_queue = < 0xb0 0xbf >; + mcast_queue = < 0x118 0x11b >; + l0sp = < 0x2c 0x2f >; + l0cdrr = < 0x50 0x5f >; + l0edrr = < 0x50 0x5f >; + l1cdrr = < 0x10 0x13 >; + l1edrr = < 0x10 0x13 >; + }; + + port@4 { + port_id = < 0x04 >; + ucast_queue = < 0xc0 0xcf >; + mcast_queue = < 0x11c 0x11f >; + l0sp = < 0x30 0x33 >; + l0cdrr = < 0x60 0x6f >; + l0edrr = < 0x60 0x6f >; + l1cdrr = < 0x14 0x17 >; + l1edrr = < 0x14 0x17 >; + }; + + port@5 { + port_id = < 0x05 >; + ucast_queue = < 0xd0 0xdf >; + mcast_queue = < 0x120 0x123 >; + l0sp = < 0x34 0x37 >; + l0cdrr = < 0x70 0x7f >; + l0edrr = < 0x70 0x7f >; + l1cdrr = < 0x18 0x1b >; + l1edrr = < 0x18 0x1b >; + }; + + port@6 { + port_id = < 0x06 >; + ucast_queue = < 0xe0 0xef >; + mcast_queue = < 0x124 0x127 >; + l0sp = < 0x38 0x3b >; + l0cdrr = < 0x80 0x8f >; + l0edrr = < 0x80 0x8f >; + l1cdrr = < 0x1c 0x1f >; + l1edrr = < 0x1c 0x1f >; + }; + + port@7 { + port_id = < 0x07 >; + ucast_queue = < 0xf0 0xff >; + mcast_queue = < 0x128 0x12b >; + l0sp = < 0x3c 0x3f >; + l0cdrr = < 0x90 0x9f >; + l0edrr = < 0x90 0x9f >; + l1cdrr = < 0x20 0x23 >; + l1edrr = < 0x20 0x23 >; + }; + }; + + port_scheduler_config { + + port@0 { + port_id = < 0x00 >; + + l1scheduler { + + group@0 { + sp = < 0x00 0x01 >; + cfg = < 0x00 0x00 0x00 0x00 >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0x00 0x04 0x08 >; + mcast_queue = < 0x100 0x104 >; + cfg = < 0x00 0x00 0x00 0x00 0x00 >; + }; + + group@1 { + ucast_queue = < 0x01 0x05 0x09 >; + mcast_queue = < 0x101 0x105 >; + cfg = < 0x00 0x01 0x01 0x01 0x01 >; + }; + + group@2 { + ucast_queue = < 0x02 0x06 0x0a >; + mcast_queue = < 0x102 0x106 >; + cfg = < 0x00 0x02 0x02 0x02 0x02 >; + }; + + group@3 { + ucast_queue = < 0x03 0x07 0x0b >; + mcast_queue = < 0x103 0x107 >; + cfg = < 0x00 0x03 0x03 0x03 0x03 >; + }; + }; + }; + + port@1 { + port_id = < 0x01 >; + + l1scheduler { + + group@0 { + sp = < 0x24 >; + cfg = < 0x00 0x08 0x00 0x08 >; + }; + + group@1 { + sp = < 0x25 >; + cfg = < 0x01 0x09 0x01 0x09 >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0x90 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x110 >; + mcast_loop_pri = < 0x04 >; + cfg = < 0x24 0x00 0x30 0x00 0x30 >; + }; + }; + }; + + port@2 { + port_id = < 0x02 >; + + l1scheduler { + + group@0 { + sp = < 0x28 >; + cfg = < 0x00 0x0c 0x00 0x0c >; + }; + + group@1 { + sp = < 0x29 >; + cfg = < 0x01 0x0d 0x01 0x0d >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0xa0 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x114 >; + mcast_loop_pri = < 0x04 >; + cfg = < 0x28 0x00 0x40 0x00 0x40 >; + }; + }; + }; + + port@3 { + port_id = < 0x03 >; + + l1scheduler { + + group@0 { + sp = < 0x2c >; + cfg = < 0x00 0x10 0x00 0x10 >; + }; + + group@1 { + sp = < 0x2d >; + cfg = < 0x01 0x11 0x01 0x11 >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0xb0 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x118 >; + mcast_loop_pri = < 0x04 >; + cfg = < 0x2c 0x00 0x50 0x00 0x50 >; + }; + }; + }; + + port@4 { + port_id = < 0x04 >; + + l1scheduler { + + group@0 { + sp = < 0x30 >; + cfg = < 0x00 0x14 0x00 0x14 >; + }; + + group@1 { + sp = < 0x31 >; + cfg = < 0x01 0x15 0x01 0x15 >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0xc0 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x11c >; + mcast_loop_pri = < 0x04 >; + cfg = < 0x30 0x00 0x60 0x00 0x60 >; + }; + }; + }; + + port@5 { + port_id = < 0x05 >; + + l1scheduler { + + group@0 { + sp = < 0x34 >; + cfg = < 0x00 0x18 0x00 0x18 >; + }; + + group@1 { + sp = < 0x35 >; + cfg = < 0x01 0x19 0x01 0x19 >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0xd0 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x120 >; + mcast_loop_pri = < 0x04 >; + cfg = < 0x34 0x00 0x70 0x00 0x70 >; + }; + }; + }; + + port@6 { + port_id = < 0x06 >; + + l1scheduler { + + group@0 { + sp = < 0x38 >; + cfg = < 0x00 0x1c 0x00 0x1c >; + }; + + group@1 { + sp = < 0x39 >; + cfg = < 0x01 0x1d 0x01 0x1d >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0xe0 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x124 >; + mcast_loop_pri = < 0x04 >; + cfg = < 0x38 0x00 0x80 0x00 0x80 >; + }; + }; + }; + + port@7 { + port_id = < 0x07 >; + + l1scheduler { + + group@0 { + sp = < 0x3c >; + cfg = < 0x00 0x20 0x00 0x20 >; + }; + + group@1 { + sp = < 0x3d >; + cfg = < 0x01 0x21 0x01 0x21 >; + }; + }; + + l0scheduler { + + group@0 { + ucast_queue = < 0xf0 >; + ucast_loop_pri = < 0x10 >; + mcast_queue = < 0x128 >; + cfg = < 0x3c 0x00 0x90 0x00 0x90 >; + }; + }; + }; + }; +}; + + +&soc { + + phy@86000 { + status = "okay"; + }; + + sd-pwrseq { + status = "okay"; + }; + + sdhci@7864900 { + pinctrl-0 = <&sd_pins>; + pinctrl-names = "default"; + cd-gpios = <&tlmm 63 GPIO_ACTIVE_LOW>; + status = "okay"; + }; + + pwm { + pinctrl-0 = <&pwm_pins>; + pinctrl-names = "default"; + used-pwm-indices = <1>, <0>, <0>, <0>; + status = "disabled"; + }; + + // qcom,test@0 { + // status = "okay"; + // }; + + + dp1: dp1 { + device_type = "network"; + compatible = "qcom,nss-dp"; + qcom,id = <1>; + reg = <0x3a001000 0x200>; + qcom,mactype = <0>; + local-mac-address = [000000000000]; + qcom,link-poll = <1>; + qcom,phy-mdio-addr = <16>; + phy-mode = "sgmii"; + mdio-bus = <&mdio>; + }; + + dp2: dp2 { + device_type = "network"; + compatible = "qcom,nss-dp"; + qcom,id = <2>; + reg = <0x3a001200 0x200>; + qcom,mactype = <0>; + local-mac-address = [000000000000]; + qcom,link-poll = <1>; + qcom,phy-mdio-addr = <17>; + phy-mode = "sgmii"; + mdio-bus = <&mdio>; + }; + + dp3: dp3 { + device_type = "network"; + compatible = "qcom,nss-dp"; + qcom,id = <3>; + reg = <0x3a001400 0x200>; + qcom,mactype = <0>; + local-mac-address = [000000000000]; + qcom,link-poll = <1>; + qcom,phy-mdio-addr = <18>; + phy-mode = "sgmii"; + mdio-bus = <&mdio>; + }; + + dp4: dp4 { + device_type = "network"; + compatible = "qcom,nss-dp"; + qcom,id = <4>; + reg = <0x3a001600 0x200>; + qcom,mactype = <0>; + local-mac-address = [000000000000]; + qcom,link-poll = <1>; + qcom,phy-mdio-addr = <19>; + phy-mode = "sgmii"; + mdio-bus = <&mdio>; + }; + + dp5: dp5 { + device_type = "network"; + compatible = "qcom,nss-dp"; + qcom,id = <5>; + reg = <0x3a003000 0x3fff>; + qcom,mactype = <1>; + local-mac-address = [000000000000]; + qcom,link-poll = <1>; + qcom,phy-mdio-addr = <30>; + phy-mode = "sgmii"; + mdio-bus = <&mdio>; + }; + + dp6: dp6 { + device_type = "network"; + compatible = "qcom,nss-dp"; + qcom,id = <6>; + reg = <0x3a007000 0x3fff>; + qcom,mactype = <1>; + local-mac-address = [000000000000]; + qcom,link-poll = <1>; + qcom,phy-mdio-addr = <0>; + phy-mode = "sgmii"; + mdio-bus = <&mdio>; + }; + + // qcn9000_pcie0: qcn9000_pcie0@51100000 { + // no-map; + // reg = <0x0 0x51100000 0x0 0x02D00000>; + // }; + + wifi1: wifi1@f00000 { + + compatible = "qcom,cnss-qcn9000"; + qcom,wlan-ramdump-dynamic = <0x400000>; + mhi,max-channels = <30>; + mhi,timeout = <10000>; + qrtr_node_id = <0x20>; + qca,auto-restart; + + pcie0_mhi: pcie0_mhi { + status = "ok"; + }; + + }; +}; + +&wifi { + status = "okay"; + qcom,board_id = <528>; + qcom,ath11k-calibration-variant = "TL-XTR10890"; +}; + +&wifi1 { + base-addr = <0x51100000>; + m3-dump-addr = <0x53400000>; + etr-addr = <0x53500000>; + caldb-addr = <0x53600000>; + hremote-size = <0x2300000>; + tgt-mem-mode = <0x0>; + caldb-size = <0x800000>; + hremote_node = <&qcn9000_pcie0>; + pageable-size = <0x800000>; + board_id = <171>; + qcom,ath11k-calibration-variant = "TL-XTR10890"; + status = "ok"; +}; diff --git a/target/linux/ipq807x/image/generic.mk b/target/linux/ipq807x/image/generic.mk index e8440c83c..b853ae433 100644 --- a/target/linux/ipq807x/image/generic.mk +++ b/target/linux/ipq807x/image/generic.mk @@ -44,3 +44,16 @@ define Device/zte_mf269 DEVICE_PACKAGES := ipq-wifi-zte_mf269 uboot-envtools endef TARGET_DEVICES += zte_mf269 + +define Device/tplink_xtr10890 + $(call Device/FitImage) + $(call Device/UbiFit) + DEVICE_VENDOR := TPLINK + DEVICE_MODEL := XTR10890 + BLOCKSIZE := 128k + PAGESIZE := 2048 + DEVICE_DTS_CONFIG := config@hk01.c6 + SOC := ipq8078 + DEVICE_PACKAGES := ipq-wifi-tplink_xtr10890 uboot-envtools +endef +TARGET_DEVICES += tplink_xtr10890 diff --git a/target/linux/ipq807x/patches-5.10/900-arm64-dts-add-OpenWrt-DTS-files.patch b/target/linux/ipq807x/patches-5.10/900-arm64-dts-add-OpenWrt-DTS-files.patch index 12af650f0..8f11d4276 100644 --- a/target/linux/ipq807x/patches-5.10/900-arm64-dts-add-OpenWrt-DTS-files.patch +++ b/target/linux/ipq807x/patches-5.10/900-arm64-dts-add-OpenWrt-DTS-files.patch @@ -12,12 +12,13 @@ Signed-off-by: Robert Marko --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile -@@ -3,6 +3,8 @@ dtb-$(CONFIG_ARCH_QCOM) += apq8016-sbc.d +@@ -3,6 +3,9 @@ dtb-$(CONFIG_ARCH_QCOM) += apq8016-sbc.d dtb-$(CONFIG_ARCH_QCOM) += apq8096-db820c.dtb dtb-$(CONFIG_ARCH_QCOM) += apq8096-ifc6640.dtb dtb-$(CONFIG_ARCH_QCOM) += ipq6018-cp01-c1.dtb +dtb-$(CONFIG_ARCH_QCOM) += ipq8072-301w.dtb +dtb-$(CONFIG_ARCH_QCOM) += ipq8071-mf269.dtb ++dtb-$(CONFIG_ARCH_QCOM) += ipq8078-xtr10890.dtb dtb-$(CONFIG_ARCH_QCOM) += ipq8074-hk01.dtb dtb-$(CONFIG_ARCH_QCOM) += msm8916-longcheer-l8150.dtb dtb-$(CONFIG_ARCH_QCOM) += msm8916-mtp.dtb