mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-10-30 01:52:51 +00:00
Compare commits
12 Commits
for-4.0
...
WIFI-14546
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
df001072b7 | ||
|
|
ea3afcda56 | ||
|
|
b5987cc2a7 | ||
|
|
fc700364d1 | ||
|
|
f2fec9dd87 | ||
|
|
2de57bf167 | ||
|
|
7d31bebdb0 | ||
|
|
fcb5a972cf | ||
|
|
082d04025c | ||
|
|
9ef7d2c227 | ||
|
|
e0d61cb0fb | ||
|
|
ed2795b30b |
2
.github/workflows/build-dev.yml
vendored
2
.github/workflows/build-dev.yml
vendored
@@ -21,7 +21,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
target: [ 'cig_wf186h', 'cig_wf186w', 'cig_wf188n', 'cig_wf189', 'cig_wf196', 'cig_wf196', 'cybertan_eww631-a1', 'cybertan_eww631-b1', 'sonicfi_rap630w-312g', 'sonicfi_rap63xc-211g', 'sonicfi_rap630c-311g', 'sonicfi_rap630w-311g', 'sonicfi_rap630w-211g', 'sonicfi_rap7110c-341x', 'sonicfi_rap750w-311a', 'edgecore_eap101', 'edgecore_eap102', 'edgecore_eap104', 'edgecore_eap105', 'edgecore_eap111', 'edgecore_eap112', 'edgecore_oap101', 'edgecore_oap101-6e', 'edgecore_oap101e', 'edgecore_oap101e-6e', 'edgecore_oap103', 'hfcl_ion4xe', 'hfcl_ion4xi', 'hfcl_ion4x', 'hfcl_ion4x_2', 'hfcl_ion4x_3', 'hfcl_ion4xi_w', 'hfcl_ion4x_w', 'indio_um-305ax', 'senao_iap4300m', 'senao_iap2300m', 'senao_jeap6500', 'udaya_a6-id2', 'udaya_a6-od2', 'yuncore_ax820', 'yuncore_ax840', 'yuncore_fap640', 'yuncore_fap650', 'yuncore_fap655' ]
|
target: [ 'cig_wf186h', 'cig_wf186w', 'cig_wf188n', 'cig_wf189', 'cig_wf196', 'cig_wf196', 'cybertan_eww631-a1', 'cybertan_eww631-b1', 'sonicfi_rap630w-312g', 'sonicfi_rap63xc-211g', 'sonicfi_rap630c-311g', 'sonicfi_rap630w-311g', 'sonicfi_rap630w-211g', 'sonicfi_rap650c', 'sonicfi_rap7110c-341x', 'sonicfi_rap750w-311a', 'edgecore_eap101', 'edgecore_eap102', 'edgecore_eap104', 'edgecore_eap105', 'edgecore_eap111', 'edgecore_eap112', 'edgecore_oap101', 'edgecore_oap101-6e', 'edgecore_oap101e', 'edgecore_oap101e-6e', 'edgecore_oap103', 'hfcl_ion4xe', 'hfcl_ion4xi', 'hfcl_ion4x', 'hfcl_ion4x_2', 'hfcl_ion4x_3', 'hfcl_ion4xi_w', 'hfcl_ion4x_w', 'indio_um-305ax', 'senao_iap4300m', 'senao_iap2300m', 'senao_jeap6500', 'udaya_a6-id2', 'udaya_a6-od2', 'yuncore_ax820', 'yuncore_ax840', 'yuncore_fap640', 'yuncore_fap650', 'yuncore_fap655' ]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
|||||||
@@ -53,6 +53,7 @@ ALLWIFIBOARDS:= \
|
|||||||
sonicfi-rap630c-311g \
|
sonicfi-rap630c-311g \
|
||||||
sonicfi-rap630w-311g \
|
sonicfi-rap630w-311g \
|
||||||
sonicfi-rap630w-312g \
|
sonicfi-rap630w-312g \
|
||||||
|
sonicfi-rap650c \
|
||||||
tplink-ex227 \
|
tplink-ex227 \
|
||||||
tplink-ex447 \
|
tplink-ex447 \
|
||||||
yuncore-ax840 \
|
yuncore-ax840 \
|
||||||
@@ -410,6 +411,7 @@ $(eval $(call generate-ath11k-wifi-package,indio-um-510axm-v1,Indio UM-510AXM V1
|
|||||||
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap630c-311g,Sonicfi RAP630C 311G))
|
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap630c-311g,Sonicfi RAP630C 311G))
|
||||||
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap630w-311g,Sonicfi RAP630W 311G))
|
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap630w-311g,Sonicfi RAP630W 311G))
|
||||||
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap630w-312g,Sonicfi RAP630W 312G))
|
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap630w-312g,Sonicfi RAP630W 312G))
|
||||||
|
$(eval $(call generate-ath11k-wifi-package,sonicfi-rap650c,SonicFi RAP650C))
|
||||||
$(eval $(call generate-ath11k-wifi-package,tplink-ex227,TP-Link EX227))
|
$(eval $(call generate-ath11k-wifi-package,tplink-ex227,TP-Link EX227))
|
||||||
$(eval $(call generate-ath11k-wifi-package,tplink-ex447,TP-Link EX447))
|
$(eval $(call generate-ath11k-wifi-package,tplink-ex447,TP-Link EX447))
|
||||||
$(eval $(call generate-ath11k-wifi-package,yuncore-ax840,YunCore AX840))
|
$(eval $(call generate-ath11k-wifi-package,yuncore-ax840,YunCore AX840))
|
||||||
|
|||||||
BIN
feeds/ipq807x_v5.4/ath11k-wifi/board-sonicfi-rap650c.bin.IPQ8074
Normal file
BIN
feeds/ipq807x_v5.4/ath11k-wifi/board-sonicfi-rap650c.bin.IPQ8074
Normal file
Binary file not shown.
@@ -21,6 +21,7 @@ edgecore,oap103)
|
|||||||
ucidef_set_led_wlan "power" "POWER" "green:power" "default-on"
|
ucidef_set_led_wlan "power" "POWER" "green:power" "default-on"
|
||||||
;;
|
;;
|
||||||
sonicfi,rap630w-311g|\
|
sonicfi,rap630w-311g|\
|
||||||
|
sonicfi,rap650c|\
|
||||||
cybertan,eww631-b1)
|
cybertan,eww631-b1)
|
||||||
ucidef_set_led_default "power" "POWER" "sys:blue" "on"
|
ucidef_set_led_default "power" "POWER" "sys:blue" "on"
|
||||||
;;
|
;;
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ qcom_setup_interfaces()
|
|||||||
edgecore,eap102|\
|
edgecore,eap102|\
|
||||||
edgecore,oap102|\
|
edgecore,oap102|\
|
||||||
edgecore,oap103|\
|
edgecore,oap103|\
|
||||||
|
sonicfi,rap650c|\
|
||||||
cig,wf196)
|
cig,wf196)
|
||||||
ucidef_set_interface_lan "eth1"
|
ucidef_set_interface_lan "eth1"
|
||||||
ucidef_set_interface_wan "eth0"
|
ucidef_set_interface_wan "eth0"
|
||||||
@@ -50,6 +51,16 @@ qcom_setup_macs()
|
|||||||
ip link set eth1 address $lan_mac
|
ip link set eth1 address $lan_mac
|
||||||
ucidef_set_label_macaddr $wan_mac
|
ucidef_set_label_macaddr $wan_mac
|
||||||
;;
|
;;
|
||||||
|
sonicfi,rap650c)
|
||||||
|
mac=$(fw_printenv -n BaseMacAddress)
|
||||||
|
[ -z "$mac" ] && return;
|
||||||
|
wan_mac=$(macaddr_canonicalize $mac)
|
||||||
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||||
|
ucidef_set_network_device_mac eth0 $wan_mac
|
||||||
|
ucidef_set_network_device_mac eth1 $lan_mac
|
||||||
|
ip link set eth0 address $wan_mac
|
||||||
|
ip link set eth1 address $lan_mac
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
wan_mac=$(cat /sys/class/net/eth0/address)
|
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
lan_mac=$(macaddr_add "$wan_mac" 1)
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||||
|
|||||||
@@ -16,6 +16,20 @@ ath11k_generate_macs() {
|
|||||||
echo -ne \\x${mac3//:/\\x} >> /lib/firmware/ath11k-macs
|
echo -ne \\x${mac3//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ath11k_generate_macs_sonicfi() {
|
||||||
|
mac=$(fw_printenv -n BaseMacAddress)
|
||||||
|
[ -z "$mac" ] && return;
|
||||||
|
|
||||||
|
touch /lib/firmware/ath11k-macs
|
||||||
|
eth=$(macaddr_canonicalize $mac)
|
||||||
|
mac1=$(macaddr_add $eth 2)
|
||||||
|
mac2=$(macaddr_add $eth 3)
|
||||||
|
mac3=$(macaddr_add $eth 4)
|
||||||
|
echo -ne \\x${mac1//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
|
echo -ne \\x${mac2//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
|
echo -ne \\x${mac3//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
|
}
|
||||||
|
|
||||||
ath11k_generate_macs_wf196() {
|
ath11k_generate_macs_wf196() {
|
||||||
touch /lib/firmware/ath11k-macs
|
touch /lib/firmware/ath11k-macs
|
||||||
mac=$(grep BaseMacAddress= /dev/mtd18 | cut -dx -f2)
|
mac=$(grep BaseMacAddress= /dev/mtd18 | cut -dx -f2)
|
||||||
@@ -63,6 +77,7 @@ case "$FIRMWARE" in
|
|||||||
tplink,ex227|\
|
tplink,ex227|\
|
||||||
tplink,ex447|\
|
tplink,ex447|\
|
||||||
yuncore,ax840|\
|
yuncore,ax840|\
|
||||||
|
sonicfi,rap650c|\
|
||||||
sercomm,wallaby)
|
sercomm,wallaby)
|
||||||
caldata_extract "0:ART" 0x1000 0x20000
|
caldata_extract "0:ART" 0x1000 0x20000
|
||||||
;;
|
;;
|
||||||
@@ -97,6 +112,9 @@ ath11k-macs)
|
|||||||
cig,wf196)
|
cig,wf196)
|
||||||
ath11k_generate_macs_wf196
|
ath11k_generate_macs_wf196
|
||||||
;;
|
;;
|
||||||
|
sonicfi*)
|
||||||
|
ath11k_generate_macs_sonicfi
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
ath11k/IPQ8074/hw2.0/board.bin)
|
ath11k/IPQ8074/hw2.0/board.bin)
|
||||||
|
|||||||
@@ -10,7 +10,8 @@ case "$board" in
|
|||||||
ln -s /sys/kernel/debug/ath11k/ipq6018\ hw1.0/mac1/fw_stats/pdev_stats /tmp/pdev_stats_phy2g
|
ln -s /sys/kernel/debug/ath11k/ipq6018\ hw1.0/mac1/fw_stats/pdev_stats /tmp/pdev_stats_phy2g
|
||||||
;;
|
;;
|
||||||
"edgecore,eap102"|\
|
"edgecore,eap102"|\
|
||||||
"edgecore,oap103")
|
"edgecore,oap103"|\
|
||||||
|
"sonicfi,rap650c")
|
||||||
ln -s /sys/kernel/debug/ath11k/ipq8074\ hw2.0/mac0/fw_stats/pdev_stats /tmp/pdev_stats_phy5g
|
ln -s /sys/kernel/debug/ath11k/ipq8074\ hw2.0/mac0/fw_stats/pdev_stats /tmp/pdev_stats_phy5g
|
||||||
ln -s /sys/kernel/debug/ath11k/ipq8074\ hw2.0/mac1/fw_stats/pdev_stats /tmp/pdev_stats_phy2g
|
ln -s /sys/kernel/debug/ath11k/ipq8074\ hw2.0/mac1/fw_stats/pdev_stats /tmp/pdev_stats_phy2g
|
||||||
;;
|
;;
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ platform_check_image() {
|
|||||||
edgecore,oap102|\
|
edgecore,oap102|\
|
||||||
edgecore,oap103|\
|
edgecore,oap103|\
|
||||||
edgecore,eap106|\
|
edgecore,eap106|\
|
||||||
|
sonicfi,rap650c|\
|
||||||
tplink,ex227|\
|
tplink,ex227|\
|
||||||
tplink,ex447)
|
tplink,ex447)
|
||||||
[ "$magic_long" = "73797375" ] && return 0
|
[ "$magic_long" = "73797375" ] && return 0
|
||||||
@@ -83,5 +84,17 @@ platform_do_upgrade() {
|
|||||||
fi
|
fi
|
||||||
nand_upgrade_tar "$1"
|
nand_upgrade_tar "$1"
|
||||||
;;
|
;;
|
||||||
|
sonicfi,rap650c)
|
||||||
|
boot_part=$(fw_printenv -n bootfrom)
|
||||||
|
[ ${#boot_part} -eq 0 ] && boot_part=0
|
||||||
|
echo "Current bootfrom is $boot_part"
|
||||||
|
if [[ $boot_part == 1 ]]; then
|
||||||
|
CI_UBIPART="rootfs"
|
||||||
|
CI_FWSETENV="bootfrom 0"
|
||||||
|
elif [[ $boot_part == 0 ]]; then
|
||||||
|
CI_UBIPART="rootfs_1"
|
||||||
|
CI_FWSETENV="bootfrom 1"
|
||||||
|
fi
|
||||||
|
nand_upgrade_tar "$1"
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,650 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0-only
|
||||||
|
/dts-v1/;
|
||||||
|
/* Copyright (c) 2020 The Linux Foundation. All rights reserved.
|
||||||
|
*/
|
||||||
|
#include "ipq8074.dtsi"
|
||||||
|
#include "ipq8074-hk-cpu.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
#address-cells = <0x2>;
|
||||||
|
#size-cells = <0x2>;
|
||||||
|
model = "SonicFi RAP650C";
|
||||||
|
compatible = "sonicfi,rap650c", "qcom,ipq8074-ap-hk09", "qcom,ipq8074";
|
||||||
|
qcom,msm-id = <0x157 0x0>, <0x187 0x0>;
|
||||||
|
interrupt-parent = <&intc>;
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &blsp1_uart5;
|
||||||
|
/* Aliases as required by u-boot to patch MAC addresses */
|
||||||
|
ethernet0 = "/soc/dp1";
|
||||||
|
ethernet1 = "/soc/dp2";
|
||||||
|
|
||||||
|
led-boot = &led_power;
|
||||||
|
led-failsafe = &led_power;
|
||||||
|
led-running = &led_power;
|
||||||
|
led-upgrade = &led_power;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0";
|
||||||
|
};
|
||||||
|
|
||||||
|
soc {
|
||||||
|
pinctrl@1000000 {
|
||||||
|
button_pins: button_pins {
|
||||||
|
reset_button {
|
||||||
|
pins = "gpio57";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
usb_mux_sel_pins: usb_mux_pins {
|
||||||
|
mux {
|
||||||
|
pins = "gpio27";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
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;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
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;
|
||||||
|
};
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio25";
|
||||||
|
function = "gpio";
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio44";
|
||||||
|
function = "gpio";
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
led_pins: led_pins {
|
||||||
|
red {
|
||||||
|
pins = "gpio0";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
green {
|
||||||
|
pins = "gpio2";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
blue {
|
||||||
|
pins = "gpio9";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_3_pins: spi_3_pins {
|
||||||
|
mux {
|
||||||
|
pins = "gpio50", "gpio52", "gpio53";
|
||||||
|
function = "blsp3_spi";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
spi_cs {
|
||||||
|
pins = "gpio22";
|
||||||
|
function = "blsp3_spi2";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
quartz_interrupt {
|
||||||
|
pins = "gpio47";
|
||||||
|
function = "gpio";
|
||||||
|
input;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
quartz_reset {
|
||||||
|
pins = "gpio21";
|
||||||
|
function = "gpio";
|
||||||
|
output-low;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
serial@78b3000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <5>;
|
||||||
|
reg = <0x3a001800 0x200>;
|
||||||
|
qcom,mactype = <0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <24>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <6>;
|
||||||
|
reg = <0x3a001a00 0x200>;
|
||||||
|
qcom,mactype = <0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <28>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
spi@78b5000 {
|
||||||
|
status = "ok";
|
||||||
|
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>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi@78b8000 {
|
||||||
|
status = "ok";
|
||||||
|
pinctrl-0 = <&spi_3_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
cs-select = <2>;
|
||||||
|
quartz-reset-gpio = <&tlmm 21 1>;
|
||||||
|
|
||||||
|
spidev3: spi@3 {
|
||||||
|
compatible = "qti,spidev";
|
||||||
|
reg = <0>;
|
||||||
|
spi-max-frequency = <24000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dma@7984000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
nand@79b0000 {
|
||||||
|
status = "ok";
|
||||||
|
|
||||||
|
nand@0 {
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
nand-ecc-strength = <4>;
|
||||||
|
nand-ecc-step-size = <512>;
|
||||||
|
nand-bus-width = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
qusb@79000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
ssphy@78000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
usb3@8A00000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
qusb@59000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
ssphy@58000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
usb3@8C00000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
phy@84000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
phy@86000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
pci@20000000 {
|
||||||
|
perst-gpio = <&tlmm 58 1>;
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pinctrl-0 = <&button_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "ok";
|
||||||
|
|
||||||
|
button@1 {
|
||||||
|
label = "reset";
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
gpios = <&tlmm 57 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
debounce-interval = <60>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-0 = <&led_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
red {
|
||||||
|
label = "sys:red";
|
||||||
|
gpio = <&tlmm 0 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
green {
|
||||||
|
label = "sys:green";
|
||||||
|
gpio = <&tlmm 2 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power: blue {
|
||||||
|
label = "sys:blue";
|
||||||
|
gpio = <&tlmm 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio: mdio@90000 {
|
||||||
|
pinctrl-0 = <&mdio_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
phy-reset-gpio = <&tlmm 37 0 &tlmm 25 0 &tlmm 44 0>;
|
||||||
|
phy0: ethernet-phy@0 {
|
||||||
|
reg = <0>;
|
||||||
|
};
|
||||||
|
phy1: ethernet-phy@1 {
|
||||||
|
reg = <1>;
|
||||||
|
};
|
||||||
|
phy2: ethernet-phy@2 {
|
||||||
|
reg = <2>;
|
||||||
|
};
|
||||||
|
phy3: ethernet-phy@3 {
|
||||||
|
reg = <3>;
|
||||||
|
};
|
||||||
|
phy4: ethernet-phy@4 {
|
||||||
|
reg = <24>;
|
||||||
|
};
|
||||||
|
phy5: ethernet-phy@5 {
|
||||||
|
reg = <28>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x3e>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x40>; /* wan port bitmap */
|
||||||
|
switch_mac_mode = <0x0>; /* mac mode for uniphy instance0*/
|
||||||
|
switch_mac_mode1 = <0xf>; /* mac mode for uniphy instance1*/
|
||||||
|
switch_mac_mode2 = <0xf>; /* 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 = <0>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <1>;
|
||||||
|
};
|
||||||
|
port@2 {
|
||||||
|
port_id = <3>;
|
||||||
|
phy_address = <2>;
|
||||||
|
};
|
||||||
|
port@3 {
|
||||||
|
port_id = <4>;
|
||||||
|
phy_address = <3>;
|
||||||
|
};
|
||||||
|
port@4 {
|
||||||
|
port_id = <5>;
|
||||||
|
phy_address = <24>;
|
||||||
|
port_mac_sel = "QGMAC_PORT";
|
||||||
|
};
|
||||||
|
port@5 {
|
||||||
|
port_id = <6>;
|
||||||
|
phy_address = <28>;
|
||||||
|
port_mac_sel = "QGMAC_PORT";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port_scheduler_resource {
|
||||||
|
port@0 {
|
||||||
|
port_id = <0>;
|
||||||
|
ucast_queue = <0 143>;
|
||||||
|
mcast_queue = <256 271>;
|
||||||
|
l0sp = <0 35>;
|
||||||
|
l0cdrr = <0 47>;
|
||||||
|
l0edrr = <0 47>;
|
||||||
|
l1cdrr = <0 7>;
|
||||||
|
l1edrr = <0 7>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <1>;
|
||||||
|
ucast_queue = <144 159>;
|
||||||
|
mcast_queue = <272 275>;
|
||||||
|
l0sp = <36 39>;
|
||||||
|
l0cdrr = <48 63>;
|
||||||
|
l0edrr = <48 63>;
|
||||||
|
l1cdrr = <8 11>;
|
||||||
|
l1edrr = <8 11>;
|
||||||
|
};
|
||||||
|
port@2 {
|
||||||
|
port_id = <2>;
|
||||||
|
ucast_queue = <160 175>;
|
||||||
|
mcast_queue = <276 279>;
|
||||||
|
l0sp = <40 43>;
|
||||||
|
l0cdrr = <64 79>;
|
||||||
|
l0edrr = <64 79>;
|
||||||
|
l1cdrr = <12 15>;
|
||||||
|
l1edrr = <12 15>;
|
||||||
|
};
|
||||||
|
port@3 {
|
||||||
|
port_id = <3>;
|
||||||
|
ucast_queue = <176 191>;
|
||||||
|
mcast_queue = <280 283>;
|
||||||
|
l0sp = <44 47>;
|
||||||
|
l0cdrr = <80 95>;
|
||||||
|
l0edrr = <80 95>;
|
||||||
|
l1cdrr = <16 19>;
|
||||||
|
l1edrr = <16 19>;
|
||||||
|
};
|
||||||
|
port@4 {
|
||||||
|
port_id = <4>;
|
||||||
|
ucast_queue = <192 207>;
|
||||||
|
mcast_queue = <284 287>;
|
||||||
|
l0sp = <48 51>;
|
||||||
|
l0cdrr = <96 111>;
|
||||||
|
l0edrr = <96 111>;
|
||||||
|
l1cdrr = <20 23>;
|
||||||
|
l1edrr = <20 23>;
|
||||||
|
};
|
||||||
|
port@5 {
|
||||||
|
port_id = <5>;
|
||||||
|
ucast_queue = <208 223>;
|
||||||
|
mcast_queue = <288 291>;
|
||||||
|
l0sp = <52 55>;
|
||||||
|
l0cdrr = <112 127>;
|
||||||
|
l0edrr = <112 127>;
|
||||||
|
l1cdrr = <24 27>;
|
||||||
|
l1edrr = <24 27>;
|
||||||
|
};
|
||||||
|
port@6 {
|
||||||
|
port_id = <6>;
|
||||||
|
ucast_queue = <224 239>;
|
||||||
|
mcast_queue = <292 295>;
|
||||||
|
l0sp = <56 59>;
|
||||||
|
l0cdrr = <128 143>;
|
||||||
|
l0edrr = <128 143>;
|
||||||
|
l1cdrr = <28 31>;
|
||||||
|
l1edrr = <28 31>;
|
||||||
|
};
|
||||||
|
port@7 {
|
||||||
|
port_id = <7>;
|
||||||
|
ucast_queue = <240 255>;
|
||||||
|
mcast_queue = <296 299>;
|
||||||
|
l0sp = <60 63>;
|
||||||
|
l0cdrr = <144 159>;
|
||||||
|
l0edrr = <144 159>;
|
||||||
|
l1cdrr = <32 35>;
|
||||||
|
l1edrr = <32 35>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port_scheduler_config {
|
||||||
|
port@0 {
|
||||||
|
port_id = <0>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <0 1>; /*L0 SPs*/
|
||||||
|
/*cpri cdrr epri edrr*/
|
||||||
|
cfg = <0 0 0 0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
/*unicast queues*/
|
||||||
|
ucast_queue = <0 4 8>;
|
||||||
|
/*multicast queues*/
|
||||||
|
mcast_queue = <256 260>;
|
||||||
|
/*sp cpri cdrr epri edrr*/
|
||||||
|
cfg = <0 0 0 0 0>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
ucast_queue = <1 5 9>;
|
||||||
|
mcast_queue = <257 261>;
|
||||||
|
cfg = <0 1 1 1 1>;
|
||||||
|
};
|
||||||
|
group@2 {
|
||||||
|
ucast_queue = <2 6 10>;
|
||||||
|
mcast_queue = <258 262>;
|
||||||
|
cfg = <0 2 2 2 2>;
|
||||||
|
};
|
||||||
|
group@3 {
|
||||||
|
ucast_queue = <3 7 11>;
|
||||||
|
mcast_queue = <259 263>;
|
||||||
|
cfg = <0 3 3 3 3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <1>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <36>;
|
||||||
|
cfg = <0 8 0 8>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <37>;
|
||||||
|
cfg = <1 9 1 9>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <144>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <272>;
|
||||||
|
mcast_loop_pri = <4>;
|
||||||
|
cfg = <36 0 48 0 48>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@2 {
|
||||||
|
port_id = <2>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <40>;
|
||||||
|
cfg = <0 12 0 12>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <41>;
|
||||||
|
cfg = <1 13 1 13>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <160>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <276>;
|
||||||
|
mcast_loop_pri = <4>;
|
||||||
|
cfg = <40 0 64 0 64>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@3 {
|
||||||
|
port_id = <3>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <44>;
|
||||||
|
cfg = <0 16 0 16>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <45>;
|
||||||
|
cfg = <1 17 1 17>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <176>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <280>;
|
||||||
|
mcast_loop_pri = <4>;
|
||||||
|
cfg = <44 0 80 0 80>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@4 {
|
||||||
|
port_id = <4>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <48>;
|
||||||
|
cfg = <0 20 0 20>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <49>;
|
||||||
|
cfg = <1 21 1 21>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <192>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <284>;
|
||||||
|
mcast_loop_pri = <4>;
|
||||||
|
cfg = <48 0 96 0 96>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@5 {
|
||||||
|
port_id = <5>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <52>;
|
||||||
|
cfg = <0 24 0 24>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <53>;
|
||||||
|
cfg = <1 25 1 25>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <208>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <288>;
|
||||||
|
mcast_loop_pri = <4>;
|
||||||
|
cfg = <52 0 112 0 112>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@6 {
|
||||||
|
port_id = <6>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <56>;
|
||||||
|
cfg = <0 28 0 28>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <57>;
|
||||||
|
cfg = <1 29 1 29>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <224>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <292>;
|
||||||
|
mcast_loop_pri = <4>;
|
||||||
|
cfg = <56 0 128 0 128>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
port@7 {
|
||||||
|
port_id = <7>;
|
||||||
|
l1scheduler {
|
||||||
|
group@0 {
|
||||||
|
sp = <60>;
|
||||||
|
cfg = <0 32 0 32>;
|
||||||
|
};
|
||||||
|
group@1 {
|
||||||
|
sp = <61>;
|
||||||
|
cfg = <1 33 1 33>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
l0scheduler {
|
||||||
|
group@0 {
|
||||||
|
ucast_queue = <240>;
|
||||||
|
ucast_loop_pri = <16>;
|
||||||
|
mcast_queue = <296>;
|
||||||
|
cfg = <60 0 144 0 144>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nss-macsec0 {
|
||||||
|
compatible = "qcom,nss-macsec";
|
||||||
|
phy_addr = <0x18>;
|
||||||
|
phy_access_mode = <0>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
};
|
||||||
|
nss-macsec1 {
|
||||||
|
compatible = "qcom,nss-macsec";
|
||||||
|
phy_addr = <0x1c>;
|
||||||
|
phy_access_mode = <0>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi0 {
|
||||||
|
qcom,board_id = <0x90>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi1 {
|
||||||
|
qcom,board_id = <0x290>;
|
||||||
|
};
|
||||||
@@ -57,6 +57,17 @@ define Device/edgecore_eap106
|
|||||||
endef
|
endef
|
||||||
#TARGET_DEVICES += edgecore_eap106
|
#TARGET_DEVICES += edgecore_eap106
|
||||||
|
|
||||||
|
define Device/sonicfi_rap650c
|
||||||
|
DEVICE_TITLE := SonicFi RAP650C
|
||||||
|
DEVICE_DTS := qcom-ipq807x-rap650c
|
||||||
|
DEVICE_DTS_CONFIG=config@hk09
|
||||||
|
SUPPORTED_DEVICES := sonicfi,rap650c
|
||||||
|
DEVICE_PACKAGES := ath11k-wifi-sonicfi-rap650c uboot-envtools
|
||||||
|
IMAGES := sysupgrade.tar nand-factory.bin nand-factory.ubi
|
||||||
|
IMAGE/nand-factory.ubi := append-ubi
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += sonicfi_rap650c
|
||||||
|
|
||||||
define Device/tplink_ex227
|
define Device/tplink_ex227
|
||||||
DEVICE_TITLE := TP-Link EX227
|
DEVICE_TITLE := TP-Link EX227
|
||||||
DEVICE_DTS := qcom-ipq807x-ex227
|
DEVICE_DTS := qcom-ipq807x-ex227
|
||||||
|
|||||||
@@ -53,11 +53,27 @@ $(call Package/ath12k-wifi-default)
|
|||||||
TITLE:=board-2.bin for RAP750W_311a
|
TITLE:=board-2.bin for RAP750W_311a
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/ath12k-wifi-cig-wf189h
|
||||||
|
$(call Package/ath12k-wifi-default)
|
||||||
|
TITLE:=board-2.bin for WF189H
|
||||||
|
endef
|
||||||
|
|
||||||
define Package/ath12k-wifi-cig-wf189w
|
define Package/ath12k-wifi-cig-wf189w
|
||||||
$(call Package/ath12k-wifi-default)
|
$(call Package/ath12k-wifi-default)
|
||||||
TITLE:=board-2.bin for WF189W
|
TITLE:=board-2.bin for WF189W
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/ath12k-wifi-sercomm-ap72tip
|
||||||
|
$(call Package/ath12k-wifi-default)
|
||||||
|
TITLE:=board-2.bin for AP72TIP
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/ath12k-wifi-sercomm-ap72tip-v4
|
||||||
|
$(call Package/ath12k-wifi-default)
|
||||||
|
TITLE:=board-2.bin for AP72TIP-v4
|
||||||
|
endef
|
||||||
|
|
||||||
|
|
||||||
define Package/ath12k-wifi-cig-wf189/install
|
define Package/ath12k-wifi-cig-wf189/install
|
||||||
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/
|
||||||
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/
|
||||||
@@ -96,8 +112,34 @@ define Package/ath12k-wifi-cig-wf189w/install
|
|||||||
$(INSTALL_DATA) ./ipq5332_qcn6432.regdb $(1)/lib/firmware/ath12k/QCN6432/hw1.0/regdb.bin
|
$(INSTALL_DATA) ./ipq5332_qcn6432.regdb $(1)/lib/firmware/ath12k/QCN6432/hw1.0/regdb.bin
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
|
||||||
|
define Package/ath12k-wifi-cig-wf189h/install
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN6432/hw1.0/
|
||||||
|
$(INSTALL_DATA) ./board-2.bin.189h.IPQ5332 $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/board-2.bin
|
||||||
|
$(INSTALL_DATA) ./board-2.bin.189h.QCN6432 $(1)/lib/firmware/ath12k/QCN6432/hw1.0/board-2.bin
|
||||||
|
$(INSTALL_DATA) ./ipq5332_qcn6432.regdb $(1)/lib/firmware/ath12k/QCN6432/hw1.0/regdb.bin
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/ath12k-wifi-sercomm-ap72tip/install
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/
|
||||||
|
$(INSTALL_DATA) ./board-2.bin.ap72tip.QCN92XX $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/board-2.bin
|
||||||
|
$(INSTALL_DATA) ./board-2.bin.ap72tip.IPQ5332 $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/board-2.bin
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/ath12k-wifi-sercomm-ap72tip-v4/install
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/
|
||||||
|
$(INSTALL_DATA) ./board-2.bin.ap72tip-v4.QCN92XX $(1)/lib/firmware/ath12k/QCN92XX/hw1.0/board-2.bin
|
||||||
|
$(INSTALL_DATA) ./board-2.bin.ap72tip-v4.IPQ5332 $(1)/lib/firmware/ath12k/IPQ5332/hw1.0/board-2.bin
|
||||||
|
endef
|
||||||
|
|
||||||
$(eval $(call BuildPackage,ath12k-wifi-cig-wf189))
|
$(eval $(call BuildPackage,ath12k-wifi-cig-wf189))
|
||||||
$(eval $(call BuildPackage,ath12k-wifi-edgecore-eap105))
|
$(eval $(call BuildPackage,ath12k-wifi-edgecore-eap105))
|
||||||
$(eval $(call BuildPackage,ath12k-wifi-sonicfi-rap7110c-341x))
|
$(eval $(call BuildPackage,ath12k-wifi-sonicfi-rap7110c-341x))
|
||||||
$(eval $(call BuildPackage,ath12k-wifi-sonicfi-rap750w-311a))
|
$(eval $(call BuildPackage,ath12k-wifi-sonicfi-rap750w-311a))
|
||||||
$(eval $(call BuildPackage,ath12k-wifi-cig-wf189w))
|
$(eval $(call BuildPackage,ath12k-wifi-cig-wf189w))
|
||||||
|
$(eval $(call BuildPackage,ath12k-wifi-cig-wf189h))
|
||||||
|
$(eval $(call BuildPackage,ath12k-wifi-sercomm-ap72tip))
|
||||||
|
$(eval $(call BuildPackage,ath12k-wifi-sercomm-ap72tip-v4))
|
||||||
|
|||||||
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-IPQ5332.bin
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-IPQ5332.bin
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-QCN92XX.bin
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-QCN92XX.bin
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-v4-IPQ5332.bin
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-v4-IPQ5332.bin
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-v4-QCN92XX.bin
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/ap72tip-v4-QCN92XX.bin
Normal file
Binary file not shown.
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-IPQ5332.json
Normal file
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-IPQ5332.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"board": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=ahb,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "ap72tip-IPQ5332.bin"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"regdb": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=ahb,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "ipq5332.regdb"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-QCN92XX.json
Normal file
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-QCN92XX.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"board": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=pci,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "ap72tip-QCN92XX.bin"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"regdb": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=pci,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "qcn92xx.regdb"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-v4-IPQ5332.json
Normal file
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-v4-IPQ5332.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"board": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=ahb,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "ap72tip-v4-IPQ5332.bin"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"regdb": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=ahb,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "ipq5332.regdb"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-v4-QCN92XX.json
Normal file
20
feeds/qca-wifi-7/ath12k-wifi/board-2-ap72tip-v4-QCN92XX.json
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"board": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=pci,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "ap72tip-v4-QCN92XX.bin"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"regdb": [
|
||||||
|
{
|
||||||
|
"names": [
|
||||||
|
"bus=pci,qmi-chip-id=0,qmi-board-id=255"
|
||||||
|
],
|
||||||
|
"data": "qcn92xx.regdb"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.189h.IPQ5332
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.189h.IPQ5332
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.189h.QCN6432
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.189h.QCN6432
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip-v4.IPQ5332
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip-v4.IPQ5332
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip-v4.QCN92XX
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip-v4.QCN92XX
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip.IPQ5332
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip.IPQ5332
Normal file
Binary file not shown.
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip.QCN92XX
Normal file
BIN
feeds/qca-wifi-7/ath12k-wifi/board-2.bin.ap72tip.QCN92XX
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -9,3 +9,9 @@ $encoder -c board-2-eap105-QCN92XX.json -o board-2.bin.eap105.QCN92XX
|
|||||||
|
|
||||||
$encoder -c board-2-rap7110c_341x-IPQ5332.json -o board-2.bin.rap7110c_341x.IPQ5332
|
$encoder -c board-2-rap7110c_341x-IPQ5332.json -o board-2.bin.rap7110c_341x.IPQ5332
|
||||||
$encoder -c board-2-rap7110c_341x-QCN92XX.json -o board-2.bin.rap7110c_341x.QCN92XX
|
$encoder -c board-2-rap7110c_341x-QCN92XX.json -o board-2.bin.rap7110c_341x.QCN92XX
|
||||||
|
|
||||||
|
$encoder -c board-2-ap72tip-IPQ5332.json -o board-2.bin.ap72tip.IPQ5332
|
||||||
|
$encoder -c board-2-ap72tip-QCN92XX.json -o board-2.bin.ap72tip.QCN92XX
|
||||||
|
|
||||||
|
$encoder -c board-2-ap72tip-v4-IPQ5332.json -o board-2.bin.ap72tip-v4.IPQ5332
|
||||||
|
$encoder -c board-2-ap72tip-v4-QCN92XX.json -o board-2.bin.ap72tip-v4.QCN92XX
|
||||||
|
|||||||
@@ -126,12 +126,15 @@ hostapd_common_add_device_config() {
|
|||||||
config_add_int maxassoc
|
config_add_int maxassoc
|
||||||
config_add_int reg_power_type
|
config_add_int reg_power_type
|
||||||
config_add_boolean stationary_ap
|
config_add_boolean stationary_ap
|
||||||
|
config_add_boolean maxassoc_ignore_probe
|
||||||
|
|
||||||
config_add_string acs_chan_bias
|
config_add_string acs_chan_bias
|
||||||
|
config_add_boolean acs_exclude_dfs
|
||||||
config_add_array hostapd_options
|
config_add_array hostapd_options
|
||||||
|
|
||||||
config_add_int airtime_mode
|
config_add_int airtime_mode
|
||||||
config_add_int mbssid
|
config_add_int mbssid
|
||||||
|
config_add_boolean rnr_beacon ema
|
||||||
|
|
||||||
hostapd_add_log_config
|
hostapd_add_log_config
|
||||||
}
|
}
|
||||||
@@ -142,10 +145,11 @@ hostapd_prepare_device_config() {
|
|||||||
|
|
||||||
local base_cfg=
|
local base_cfg=
|
||||||
|
|
||||||
json_get_vars country country3 country_ie beacon_int:100 doth require_mode legacy_rates \
|
json_get_vars country country3 country_ie beacon_int:100 dtim_period:2 doth require_mode legacy_rates \
|
||||||
acs_chan_bias local_pwr_constraint spectrum_mgmt_required airtime_mode cell_density \
|
acs_chan_bias local_pwr_constraint spectrum_mgmt_required airtime_mode cell_density \
|
||||||
rts_threshold beacon_rate rssi_reject_assoc_rssi rssi_ignore_probe_request maxassoc \
|
rts_threshold beacon_rate rssi_reject_assoc_rssi rssi_ignore_probe_request maxassoc \
|
||||||
mbssid:0 band reg_power_type stationary_ap
|
rnr_beacon mbssid:0 band reg_power_type stationary_ap acs_exclude_dfs\
|
||||||
|
maxassoc_ignore_probe band
|
||||||
|
|
||||||
hostapd_set_log_options base_cfg
|
hostapd_set_log_options base_cfg
|
||||||
|
|
||||||
@@ -155,6 +159,9 @@ hostapd_prepare_device_config() {
|
|||||||
set_default legacy_rates 0
|
set_default legacy_rates 0
|
||||||
set_default airtime_mode 0
|
set_default airtime_mode 0
|
||||||
set_default cell_density 0
|
set_default cell_density 0
|
||||||
|
set_default rnr_beacon 0
|
||||||
|
set_default ema 0
|
||||||
|
set_default acs_exclude_dfs 0
|
||||||
|
|
||||||
[ -n "$country" ] && {
|
[ -n "$country" ] && {
|
||||||
append base_cfg "country_code=$country" "$N"
|
append base_cfg "country_code=$country" "$N"
|
||||||
@@ -244,8 +251,14 @@ hostapd_prepare_device_config() {
|
|||||||
[ -n "$brlist" ] && append base_cfg "basic_rates=$brlist" "$N"
|
[ -n "$brlist" ] && append base_cfg "basic_rates=$brlist" "$N"
|
||||||
append base_cfg "beacon_int=$beacon_int" "$N"
|
append base_cfg "beacon_int=$beacon_int" "$N"
|
||||||
[ -n "$rts_threshold" ] && append base_cfg "rts_threshold=$rts_threshold" "$N"
|
[ -n "$rts_threshold" ] && append base_cfg "rts_threshold=$rts_threshold" "$N"
|
||||||
|
append base_cfg "dtim_period=$dtim_period" "$N"
|
||||||
[ "$airtime_mode" -gt 0 ] && append base_cfg "airtime_mode=$airtime_mode" "$N"
|
[ "$airtime_mode" -gt 0 ] && append base_cfg "airtime_mode=$airtime_mode" "$N"
|
||||||
[ -n "$maxassoc" ] && append base_cfg "iface_max_num_sta=$maxassoc" "$N"
|
[ -n "$maxassoc" ] && append base_cfg "iface_max_num_sta=$maxassoc" "$N"
|
||||||
|
[ "$maxassoc_ignore_probe" -gt 0 ] && append base_cfg "no_probe_resp_if_max_sta=1" "$N"
|
||||||
|
[ "$rnr_beacon" -gt 0 ] && append base_cfg "rnr_beacon=$rnr_beacon" "$N"
|
||||||
|
[ "$ema" -gt 0 ] && append base_cfg "ema=$ema" "$N"
|
||||||
|
[ "$acs_exclude_dfs" -gt 0 ] && append base_cfg "acs_exclude_dfs=$acs_exclude_dfs" "$N"
|
||||||
|
|
||||||
[ "$mbssid" -gt 0 ] && [ "$mbssid" -le 2 ] && append base_cfg "mbssid=$mbssid" "$N"
|
[ "$mbssid" -gt 0 ] && [ "$mbssid" -le 2 ] && append base_cfg "mbssid=$mbssid" "$N"
|
||||||
|
|
||||||
[ "$band" = "6g" ] && {
|
[ "$band" = "6g" ] && {
|
||||||
@@ -287,15 +300,24 @@ hostapd_common_add_bss_config() {
|
|||||||
config_add_int ieee80211w
|
config_add_int ieee80211w
|
||||||
config_add_int eapol_version
|
config_add_int eapol_version
|
||||||
|
|
||||||
config_add_array auth_server acct_server
|
config_add_string 'auth_server:host' 'server:host'
|
||||||
config_add_string 'server:host'
|
|
||||||
config_add_string auth_secret key
|
config_add_string auth_secret key
|
||||||
config_add_int 'auth_port:port' 'port:port'
|
config_add_int 'auth_port:port' 'port:port'
|
||||||
|
|
||||||
|
config_add_string acct_server
|
||||||
config_add_string acct_secret
|
config_add_string acct_secret
|
||||||
config_add_int acct_port
|
config_add_int acct_port
|
||||||
|
|
||||||
|
config_add_string acct_server_secondary
|
||||||
|
config_add_string acct_secret_secondary
|
||||||
|
config_add_int acct_port_secondary
|
||||||
|
|
||||||
config_add_int acct_interval
|
config_add_int acct_interval
|
||||||
|
|
||||||
|
config_add_string auth_server_secondary
|
||||||
|
config_add_string auth_secret_secondary
|
||||||
|
config_add_int auth_port_secondary
|
||||||
|
|
||||||
config_add_int bss_load_update_period chan_util_avg_period
|
config_add_int bss_load_update_period chan_util_avg_period
|
||||||
|
|
||||||
config_add_string dae_client
|
config_add_string dae_client
|
||||||
@@ -339,8 +361,8 @@ hostapd_common_add_bss_config() {
|
|||||||
config_add_string lci civic
|
config_add_string lci civic
|
||||||
|
|
||||||
config_add_boolean ieee80211r pmk_r1_push ft_psk_generate_local ft_over_ds
|
config_add_boolean ieee80211r pmk_r1_push ft_psk_generate_local ft_over_ds
|
||||||
config_add_int r0_key_lifetime reassociation_deadline
|
config_add_int r0_key_lifetime reassociation_deadline ft_l2_refresh
|
||||||
config_add_string mobility_domain r1_key_holder
|
config_add_string mobility_domain r1_key_holder ft_key
|
||||||
config_add_array r0kh r1kh
|
config_add_array r0kh r1kh
|
||||||
|
|
||||||
config_add_int ieee80211w_max_timeout ieee80211w_retry_timeout
|
config_add_int ieee80211w_max_timeout ieee80211w_retry_timeout
|
||||||
@@ -391,14 +413,18 @@ hostapd_common_add_bss_config() {
|
|||||||
config_add_array radius_auth_req_attr
|
config_add_array radius_auth_req_attr
|
||||||
config_add_array radius_acct_req_attr
|
config_add_array radius_acct_req_attr
|
||||||
|
|
||||||
config_add_int eap_server radius_server_auth_port
|
config_add_int eap_server
|
||||||
config_add_string eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients
|
config_add_string eap_user_file ca_cert server_cert private_key private_key_passwd server_id
|
||||||
|
|
||||||
config_add_boolean fils
|
config_add_boolean fils
|
||||||
config_add_string fils_dhcp
|
config_add_string fils_dhcp
|
||||||
|
|
||||||
|
config_add_boolean ratelimit
|
||||||
config_add_int ocv
|
config_add_int ocv
|
||||||
|
|
||||||
|
config_add_string uci_section
|
||||||
|
config_add_boolean dynamic_probe_resp
|
||||||
|
|
||||||
config_add_boolean apup
|
config_add_boolean apup
|
||||||
config_add_string apup_peer_ifname_prefix
|
config_add_string apup_peer_ifname_prefix
|
||||||
}
|
}
|
||||||
@@ -433,6 +459,7 @@ hostapd_set_psk() {
|
|||||||
local ifname="$1"
|
local ifname="$1"
|
||||||
|
|
||||||
rm -f /var/run/hostapd-${ifname}.psk
|
rm -f /var/run/hostapd-${ifname}.psk
|
||||||
|
touch /var/run/hostapd-${ifname}.psk
|
||||||
for_each_station hostapd_set_psk_file ${ifname}
|
for_each_station hostapd_set_psk_file ${ifname}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -549,18 +576,83 @@ append_airtime_sta_weight() {
|
|||||||
[ -n "$1" ] && append bss_conf "airtime_sta_weight=$1" "$N"
|
[ -n "$1" ] && append bss_conf "airtime_sta_weight=$1" "$N"
|
||||||
}
|
}
|
||||||
|
|
||||||
append_auth_server() {
|
append_radius_server() {
|
||||||
[ -n "$1" ] || return
|
|
||||||
append bss_conf "auth_server_addr=$1" "$N"
|
|
||||||
append bss_conf "auth_server_port=$auth_port" "$N"
|
|
||||||
[ -n "$auth_secret" ] && append bss_conf "auth_server_shared_secret=$auth_secret" "$N"
|
|
||||||
}
|
|
||||||
|
|
||||||
append_acct_server() {
|
json_get_vars \
|
||||||
[ -n "$1" ] || return
|
auth_server auth_secret auth_port \
|
||||||
append bss_conf "acct_server_addr=$1" "$N"
|
auth_server_secondary auth_secret_secondary auth_port_secondary \
|
||||||
append bss_conf "acct_server_port=$acct_port" "$N"
|
dae_client dae_secret dae_port \
|
||||||
[ -n "$acct_secret" ] && append bss_conf "acct_server_shared_secret=$acct_secret" "$N"
|
dynamic_ownip ownip radius_client_addr \
|
||||||
|
eap_reauth_period request_cui \
|
||||||
|
erp_domain mobility_domain \
|
||||||
|
fils_realm fils_dhcp
|
||||||
|
|
||||||
|
set_default dynamic_ownip 1
|
||||||
|
|
||||||
|
# legacy compatibility
|
||||||
|
[ -n "$auth_server" ] || json_get_var auth_server server
|
||||||
|
[ -n "$auth_port" ] || json_get_var auth_port port
|
||||||
|
[ -n "$auth_secret" ] || json_get_var auth_secret key
|
||||||
|
|
||||||
|
[ "$fils" -gt 0 ] && {
|
||||||
|
set_default erp_domain "$mobility_domain"
|
||||||
|
set_default erp_domain "$(echo "$ssid" | md5sum | head -c 8)"
|
||||||
|
set_default fils_realm "$erp_domain"
|
||||||
|
|
||||||
|
append bss_conf "erp_send_reauth_start=1" "$N"
|
||||||
|
append bss_conf "erp_domain=$erp_domain" "$N"
|
||||||
|
append bss_conf "fils_realm=$fils_realm" "$N"
|
||||||
|
append bss_conf "fils_cache_id=$(echo "$fils_realm" | md5sum | head -c 4)" "$N"
|
||||||
|
|
||||||
|
[ "$fils_dhcp" = "*" ] && {
|
||||||
|
json_get_values network network
|
||||||
|
fils_dhcp=
|
||||||
|
for net in $network; do
|
||||||
|
fils_dhcp="$(ifstatus "$net" | jsonfilter -e '@.data.dhcpserver')"
|
||||||
|
[ -n "$fils_dhcp" ] && break
|
||||||
|
done
|
||||||
|
|
||||||
|
[ -z "$fils_dhcp" -a -n "$network_bridge" -a -n "$network_ifname" ] && \
|
||||||
|
fils_dhcp="$(udhcpc -B -n -q -s /lib/netifd/dhcp-get-server.sh -t 1 -i "$network_ifname" 2>/dev/null)"
|
||||||
|
}
|
||||||
|
[ -n "$fils_dhcp" ] && append bss_conf "dhcp_server=$fils_dhcp" "$N"
|
||||||
|
}
|
||||||
|
|
||||||
|
set_default auth_port 1812
|
||||||
|
set_default auth_port_secondary 1812
|
||||||
|
set_default dae_port 3799
|
||||||
|
set_default request_cui 0
|
||||||
|
|
||||||
|
[ "$eap_server" -eq 0 -a -n "$auth_server" ] && {
|
||||||
|
append bss_conf "auth_server_addr=$auth_server" "$N"
|
||||||
|
append bss_conf "auth_server_port=$auth_port" "$N"
|
||||||
|
append bss_conf "auth_server_shared_secret=$auth_secret" "$N"
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -n "$auth_server_secondary" ] && {
|
||||||
|
append bss_conf "auth_server_addr=$auth_server_secondary" "$N"
|
||||||
|
append bss_conf "auth_server_port=$auth_port_secondary" "$N"
|
||||||
|
[ -n "$auth_secret_secondary" ] && \
|
||||||
|
append bss_conf "auth_server_shared_secret=$auth_secret_secondary" "$N"
|
||||||
|
}
|
||||||
|
|
||||||
|
[ "$request_cui" -gt 0 ] && append bss_conf "radius_request_cui=$request_cui" "$N"
|
||||||
|
[ -n "$eap_reauth_period" ] && append bss_conf "eap_reauth_period=$eap_reauth_period" "$N"
|
||||||
|
|
||||||
|
[ -n "$dae_client" -a -n "$dae_secret" ] && {
|
||||||
|
append bss_conf "radius_das_port=$dae_port" "$N"
|
||||||
|
append bss_conf "radius_das_client=$dae_client $dae_secret" "$N"
|
||||||
|
}
|
||||||
|
json_for_each_item append_radius_auth_req_attr radius_auth_req_attr
|
||||||
|
|
||||||
|
if [ -n "$ownip" ]; then
|
||||||
|
append bss_conf "own_ip_addr=$ownip" "$N"
|
||||||
|
elif [ "$dynamic_ownip" -gt 0 ]; then
|
||||||
|
append bss_conf "dynamic_own_ip_addr=$dynamic_ownip" "$N"
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -n "$radius_client_addr" ] && append bss_conf "radius_client_addr=$radius_client_addr" "$N"
|
||||||
|
[ "$macfilter" = radius ] && append bss_conf "macaddr_acl=2" "$N"
|
||||||
}
|
}
|
||||||
|
|
||||||
hostapd_set_bss_options() {
|
hostapd_set_bss_options() {
|
||||||
@@ -570,7 +662,7 @@ hostapd_set_bss_options() {
|
|||||||
|
|
||||||
wireless_vif_parse_encryption
|
wireless_vif_parse_encryption
|
||||||
|
|
||||||
local bss_conf bss_md5sum ft_key
|
local bss_conf bss_md5sum
|
||||||
local wep_rekey wpa_group_rekey wpa_pair_rekey wpa_master_rekey wpa_key_mgmt
|
local wep_rekey wpa_group_rekey wpa_pair_rekey wpa_master_rekey wpa_key_mgmt
|
||||||
|
|
||||||
json_get_vars \
|
json_get_vars \
|
||||||
@@ -581,13 +673,14 @@ hostapd_set_bss_options() {
|
|||||||
wps_independent wps_device_type wps_device_name wps_manufacturer wps_pin \
|
wps_independent wps_device_type wps_device_name wps_manufacturer wps_pin \
|
||||||
macfilter ssid utf8_ssid wmm uapsd hidden short_preamble rsn_preauth \
|
macfilter ssid utf8_ssid wmm uapsd hidden short_preamble rsn_preauth \
|
||||||
iapp_interface eapol_version dynamic_vlan ieee80211w nasid \
|
iapp_interface eapol_version dynamic_vlan ieee80211w nasid \
|
||||||
acct_secret acct_port acct_interval \
|
acct_server acct_secret acct_port acct_interval \
|
||||||
|
acct_server_secondary acct_secret_secondary acct_port_secondary \
|
||||||
bss_load_update_period chan_util_avg_period sae_require_mfp sae_pwe \
|
bss_load_update_period chan_util_avg_period sae_require_mfp sae_pwe \
|
||||||
multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key skip_inactivity_poll \
|
multi_ap multi_ap_backhaul_ssid multi_ap_backhaul_key skip_inactivity_poll \
|
||||||
ppsk airtime_bss_weight airtime_bss_limit airtime_sta_weight \
|
ppsk airtime_bss_weight airtime_bss_limit airtime_sta_weight \
|
||||||
multicast_to_unicast_all proxy_arp per_sta_vif \
|
multicast_to_unicast_all proxy_arp per_sta_vif \
|
||||||
eap_server eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients radius_server_auth_port \
|
eap_server eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients radius_server_auth_port \
|
||||||
vendor_elements fils ocv apup multi_psk
|
vendor_elements fils ocv apup uci_section dynamic_probe_resp multi_psk
|
||||||
|
|
||||||
set_default fils 0
|
set_default fils 0
|
||||||
set_default isolate 0
|
set_default isolate 0
|
||||||
@@ -604,6 +697,7 @@ hostapd_set_bss_options() {
|
|||||||
set_default tdls_prohibit 0
|
set_default tdls_prohibit 0
|
||||||
set_default eapol_version $((wpa & 1))
|
set_default eapol_version $((wpa & 1))
|
||||||
set_default acct_port 1813
|
set_default acct_port 1813
|
||||||
|
set_default acct_port_secondary 1813
|
||||||
set_default bss_load_update_period 60
|
set_default bss_load_update_period 60
|
||||||
set_default chan_util_avg_period 600
|
set_default chan_util_avg_period 600
|
||||||
set_default utf8_ssid 1
|
set_default utf8_ssid 1
|
||||||
@@ -612,6 +706,7 @@ hostapd_set_bss_options() {
|
|||||||
set_default airtime_bss_weight 0
|
set_default airtime_bss_weight 0
|
||||||
set_default airtime_bss_limit 0
|
set_default airtime_bss_limit 0
|
||||||
set_default eap_server 0
|
set_default eap_server 0
|
||||||
|
set_default dynamic_probe_resp 0
|
||||||
set_default apup 0
|
set_default apup 0
|
||||||
|
|
||||||
/usr/sbin/hostapd -vfils || fils=0
|
/usr/sbin/hostapd -vfils || fils=0
|
||||||
@@ -638,6 +733,7 @@ hostapd_set_bss_options() {
|
|||||||
append bss_conf "preamble=$short_preamble" "$N"
|
append bss_conf "preamble=$short_preamble" "$N"
|
||||||
append bss_conf "wmm_enabled=$wmm" "$N"
|
append bss_conf "wmm_enabled=$wmm" "$N"
|
||||||
append bss_conf "ignore_broadcast_ssid=$hidden" "$N"
|
append bss_conf "ignore_broadcast_ssid=$hidden" "$N"
|
||||||
|
append bss_conf "dynamic_probe_resp=$dynamic_probe_resp" "$N"
|
||||||
append bss_conf "uapsd_advertisement_enabled=$uapsd" "$N"
|
append bss_conf "uapsd_advertisement_enabled=$uapsd" "$N"
|
||||||
append bss_conf "utf8_ssid=$utf8_ssid" "$N"
|
append bss_conf "utf8_ssid=$utf8_ssid" "$N"
|
||||||
append bss_conf "multi_ap=$multi_ap" "$N"
|
append bss_conf "multi_ap=$multi_ap" "$N"
|
||||||
@@ -654,10 +750,22 @@ hostapd_set_bss_options() {
|
|||||||
|
|
||||||
[ -n "$nasid" ] && append bss_conf "nas_identifier=$nasid" "$N"
|
[ -n "$nasid" ] && append bss_conf "nas_identifier=$nasid" "$N"
|
||||||
|
|
||||||
[ -n "$acct_interval" ] && \
|
[ -n "$acct_server" ] && {
|
||||||
append bss_conf "radius_acct_interim_interval=$acct_interval" "$N"
|
append bss_conf "acct_server_addr=$acct_server" "$N"
|
||||||
json_for_each_item append_acct_server acct_server
|
append bss_conf "acct_server_port=$acct_port" "$N"
|
||||||
json_for_each_item append_radius_acct_req_attr radius_acct_req_attr
|
[ -n "$acct_secret" ] && \
|
||||||
|
append bss_conf "acct_server_shared_secret=$acct_secret" "$N"
|
||||||
|
[ -n "$acct_interval" ] && \
|
||||||
|
append bss_conf "radius_acct_interim_interval=$acct_interval" "$N"
|
||||||
|
json_for_each_item append_radius_acct_req_attr radius_acct_req_attr
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -n "$acct_server_secondary" ] && {
|
||||||
|
append bss_conf "acct_server_addr=$acct_server_secondary" "$N"
|
||||||
|
append bss_conf "acct_server_port=$acct_port_secondary" "$N"
|
||||||
|
[ -n "$acct_secret_secondary" ] && \
|
||||||
|
append bss_conf "acct_server_shared_secret=$acct_secret_secondary" "$N"
|
||||||
|
}
|
||||||
|
|
||||||
[ -n "$ocv" ] && append bss_conf "ocv=$ocv" "$N"
|
[ -n "$ocv" ] && append bss_conf "ocv=$ocv" "$N"
|
||||||
|
|
||||||
@@ -690,6 +798,8 @@ hostapd_set_bss_options() {
|
|||||||
# Here we make the assumption that if we're in open mode
|
# Here we make the assumption that if we're in open mode
|
||||||
# with WPS enabled, we got to be in unconfigured state.
|
# with WPS enabled, we got to be in unconfigured state.
|
||||||
wps_not_configured=1
|
wps_not_configured=1
|
||||||
|
vlan_possible=1
|
||||||
|
append_radius_server
|
||||||
;;
|
;;
|
||||||
psk|sae|psk-sae)
|
psk|sae|psk-sae)
|
||||||
json_get_vars key wpa_psk_file
|
json_get_vars key wpa_psk_file
|
||||||
@@ -714,74 +824,15 @@ hostapd_set_bss_options() {
|
|||||||
}
|
}
|
||||||
[ "$eapol_version" -ge "1" -a "$eapol_version" -le "2" ] && append bss_conf "eapol_version=$eapol_version" "$N"
|
[ "$eapol_version" -ge "1" -a "$eapol_version" -le "2" ] && append bss_conf "eapol_version=$eapol_version" "$N"
|
||||||
|
|
||||||
|
append_radius_server
|
||||||
set_default dynamic_vlan 0
|
set_default dynamic_vlan 0
|
||||||
vlan_possible=1
|
vlan_possible=1
|
||||||
wps_possible=1
|
wps_possible=1
|
||||||
;;
|
;;
|
||||||
eap|eap2|eap-eap2|eap192)
|
eap|eap192|eap-eap2|eap2)
|
||||||
json_get_vars \
|
append_radius_server
|
||||||
auth_server auth_secret auth_port \
|
|
||||||
dae_client dae_secret dae_port \
|
|
||||||
dynamic_ownip ownip radius_client_addr \
|
|
||||||
eap_reauth_period request_cui \
|
|
||||||
erp_domain mobility_domain \
|
|
||||||
fils_realm fils_dhcp
|
|
||||||
|
|
||||||
# radius can provide VLAN ID for clients
|
# radius can provide VLAN ID for clients
|
||||||
vlan_possible=1
|
vlan_possible=1
|
||||||
|
|
||||||
set_default dynamic_ownip 1
|
|
||||||
|
|
||||||
# legacy compatibility
|
|
||||||
[ -n "$auth_server" ] || json_get_var auth_server server
|
|
||||||
[ -n "$auth_port" ] || json_get_var auth_port port
|
|
||||||
[ -n "$auth_secret" ] || json_get_var auth_secret key
|
|
||||||
|
|
||||||
[ "$fils" -gt 0 ] && {
|
|
||||||
set_default erp_domain "$mobility_domain"
|
|
||||||
set_default erp_domain "$(echo "$ssid" | md5sum | head -c 8)"
|
|
||||||
set_default fils_realm "$erp_domain"
|
|
||||||
|
|
||||||
append bss_conf "erp_send_reauth_start=1" "$N"
|
|
||||||
append bss_conf "erp_domain=$erp_domain" "$N"
|
|
||||||
append bss_conf "fils_realm=$fils_realm" "$N"
|
|
||||||
append bss_conf "fils_cache_id=$(echo "$fils_realm" | md5sum | head -c 4)" "$N"
|
|
||||||
|
|
||||||
[ "$fils_dhcp" = "*" ] && {
|
|
||||||
json_get_values network network
|
|
||||||
fils_dhcp=
|
|
||||||
for net in $network; do
|
|
||||||
fils_dhcp="$(ifstatus "$net" | jsonfilter -e '@.data.dhcpserver')"
|
|
||||||
[ -n "$fils_dhcp" ] && break
|
|
||||||
done
|
|
||||||
|
|
||||||
[ -z "$fils_dhcp" -a -n "$network_bridge" -a -n "$network_ifname" ] && \
|
|
||||||
fils_dhcp="$(udhcpc -B -n -q -s /lib/netifd/dhcp-get-server.sh -t 1 -i "$network_ifname" 2>/dev/null)"
|
|
||||||
}
|
|
||||||
[ -n "$fils_dhcp" ] && append bss_conf "dhcp_server=$fils_dhcp" "$N"
|
|
||||||
}
|
|
||||||
|
|
||||||
set_default auth_port 1812
|
|
||||||
set_default dae_port 3799
|
|
||||||
set_default request_cui 0
|
|
||||||
|
|
||||||
[ "$eap_server" -eq 0 ] && json_for_each_item append_auth_server auth_server
|
|
||||||
[ "$request_cui" -gt 0 ] && append bss_conf "radius_request_cui=$request_cui" "$N"
|
|
||||||
[ -n "$eap_reauth_period" ] && append bss_conf "eap_reauth_period=$eap_reauth_period" "$N"
|
|
||||||
|
|
||||||
[ -n "$dae_client" -a -n "$dae_secret" ] && {
|
|
||||||
append bss_conf "radius_das_port=$dae_port" "$N"
|
|
||||||
append bss_conf "radius_das_client=$dae_client $dae_secret" "$N"
|
|
||||||
}
|
|
||||||
json_for_each_item append_radius_auth_req_attr radius_auth_req_attr
|
|
||||||
|
|
||||||
if [ -n "$ownip" ]; then
|
|
||||||
append bss_conf "own_ip_addr=$ownip" "$N"
|
|
||||||
elif [ "$dynamic_ownip" -gt 0 ]; then
|
|
||||||
append bss_conf "dynamic_own_ip_addr=$dynamic_ownip" "$N"
|
|
||||||
fi
|
|
||||||
|
|
||||||
[ -n "$radius_client_addr" ] && append bss_conf "radius_client_addr=$radius_client_addr" "$N"
|
|
||||||
append bss_conf "eapol_key_index_workaround=1" "$N"
|
append bss_conf "eapol_key_index_workaround=1" "$N"
|
||||||
append bss_conf "ieee8021x=1" "$N"
|
append bss_conf "ieee8021x=1" "$N"
|
||||||
|
|
||||||
@@ -798,6 +849,7 @@ hostapd_set_bss_options() {
|
|||||||
append bss_conf "wpa_psk_radius=3" "$N"
|
append bss_conf "wpa_psk_radius=3" "$N"
|
||||||
append_radius_server
|
append_radius_server
|
||||||
vlan_possible=1
|
vlan_possible=1
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
case "$auth_type" in
|
case "$auth_type" in
|
||||||
@@ -921,45 +973,42 @@ hostapd_set_bss_options() {
|
|||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
json_get_vars ieee80211r
|
|
||||||
set_default ieee80211r 0
|
|
||||||
if [ "$wpa" -ge "1" ]; then
|
if [ "$wpa" -ge "1" ]; then
|
||||||
if [ "$fils" -gt 0 ]; then
|
json_get_vars ieee80211r
|
||||||
json_get_vars fils_realm
|
set_default ieee80211r 0
|
||||||
set_default fils_realm "$(echo "$ssid" | md5sum | head -c 8)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
append bss_conf "wpa_disable_eapol_key_retries=$wpa_disable_eapol_key_retries" "$N"
|
|
||||||
|
|
||||||
hostapd_append_wpa_key_mgmt
|
|
||||||
[ -n "$wpa_key_mgmt" ] && append bss_conf "wpa_key_mgmt=$wpa_key_mgmt" "$N"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$wpa" -ge "2" ]; then
|
|
||||||
if [ "$ieee80211r" -gt "0" ]; then
|
if [ "$ieee80211r" -gt "0" ]; then
|
||||||
json_get_vars mobility_domain ft_psk_generate_local ft_over_ds reassociation_deadline
|
json_get_vars mobility_domain ft_psk_generate_local ft_over_ds reassociation_deadline ft_l2_refresh
|
||||||
|
|
||||||
set_default mobility_domain "$(echo "$ssid" | md5sum | head -c 4)"
|
set_default mobility_domain "$(echo "$ssid" | md5sum | head -c 4)"
|
||||||
set_default ft_over_ds 0
|
set_default ft_over_ds 1
|
||||||
|
set_default ft_l2_refresh 30
|
||||||
set_default reassociation_deadline 1000
|
set_default reassociation_deadline 1000
|
||||||
|
skip_kh_setup=0
|
||||||
|
|
||||||
case "$auth_type" in
|
case "$auth_type" in
|
||||||
psk)
|
psk|psk-sae)
|
||||||
set_default ft_psk_generate_local 1
|
set_default ft_psk_generate_local 1
|
||||||
|
skip_kh_setup="$ft_psk_generate_local"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
set_default ft_psk_generate_local 0
|
set_default ft_psk_generate_local 0
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
case "$auth_type" in
|
||||||
|
*sae*) skip_kh_setup=0;;
|
||||||
|
esac
|
||||||
|
|
||||||
[ -n "$network_ifname" ] && append bss_conf "ft_iface=$network_ifname" "$N"
|
[ -n "$network_ifname" ] && append bss_conf "ft_iface=$network_ifname" "$N"
|
||||||
append bss_conf "mobility_domain=$mobility_domain" "$N"
|
append bss_conf "mobility_domain=$mobility_domain" "$N"
|
||||||
append bss_conf "ft_psk_generate_local=$ft_psk_generate_local" "$N"
|
append bss_conf "ft_psk_generate_local=$ft_psk_generate_local" "$N"
|
||||||
append bss_conf "ft_over_ds=$ft_over_ds" "$N"
|
append bss_conf "ft_over_ds=$ft_over_ds" "$N"
|
||||||
append bss_conf "reassociation_deadline=$reassociation_deadline" "$N"
|
append bss_conf "reassociation_deadline=$reassociation_deadline" "$N"
|
||||||
|
[ -n "$ft_l2_refresh" ] && append bss_conf "ft_l2_refresh=$ft_l2_refresh" "$N"
|
||||||
|
|
||||||
if [ "$ft_psk_generate_local" -eq "0" ]; then
|
if [ "$skip_kh_setup" -eq "0" ]; then
|
||||||
json_get_vars r0_key_lifetime r1_key_holder pmk_r1_push
|
json_get_vars r0_key_lifetime r1_key_holder pmk_r1_push ft_key
|
||||||
json_get_values r0kh r0kh
|
json_get_values r0kh r0kh
|
||||||
json_get_values r1kh r1kh
|
json_get_values r1kh r1kh
|
||||||
|
|
||||||
@@ -971,12 +1020,15 @@ hostapd_set_bss_options() {
|
|||||||
wireless_setup_vif_failed FT_KEY_CANT_BE_DERIVED
|
wireless_setup_vif_failed FT_KEY_CANT_BE_DERIVED
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
ft_key=`echo -n "$mobility_domain/${auth_secret:-${key}}" | md5sum | awk '{print $1}'`
|
[ -z "$ft_key" ] && {
|
||||||
|
key=`echo -n "$mobility_domain/$auth_secret" | md5sum | awk '{print $1}'`
|
||||||
|
|
||||||
set_default r0kh "ff:ff:ff:ff:ff:ff,*,$ft_key"
|
set_default r0kh "ff:ff:ff:ff:ff:ff,*,$key"
|
||||||
set_default r1kh "00:00:00:00:00:00,00:00:00:00:00:00,$ft_key"
|
set_default r1kh "00:00:00:00:00:00,00:00:00:00:00:00,$key"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[ -n "$ft_key" ] && append bss_conf "ft_key=$ft_key" "$N"
|
||||||
[ -n "$r1_key_holder" ] && append bss_conf "r1_key_holder=$r1_key_holder" "$N"
|
[ -n "$r1_key_holder" ] && append bss_conf "r1_key_holder=$r1_key_holder" "$N"
|
||||||
append bss_conf "r0_key_lifetime=$r0_key_lifetime" "$N"
|
append bss_conf "r0_key_lifetime=$r0_key_lifetime" "$N"
|
||||||
append bss_conf "pmk_r1_push=$pmk_r1_push" "$N"
|
append bss_conf "pmk_r1_push=$pmk_r1_push" "$N"
|
||||||
@@ -989,7 +1041,18 @@ hostapd_set_bss_options() {
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
if [ "$fils" -gt 0 ]; then
|
||||||
|
json_get_vars fils_realm
|
||||||
|
set_default fils_realm "$(echo "$ssid" | md5sum | head -c 8)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
append bss_conf "wpa_disable_eapol_key_retries=$wpa_disable_eapol_key_retries" "$N"
|
||||||
|
|
||||||
|
hostapd_append_wpa_key_mgmt
|
||||||
|
[ -n "$wpa_key_mgmt" ] && append bss_conf "wpa_key_mgmt=$wpa_key_mgmt" "$N"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$wpa" -ge "2" ]; then
|
||||||
if [ -n "$network_bridge" -a "$rsn_preauth" = 1 ]; then
|
if [ -n "$network_bridge" -a "$rsn_preauth" = 1 ]; then
|
||||||
set_default auth_cache 1
|
set_default auth_cache 1
|
||||||
append bss_conf "rsn_preauth=1" "$N"
|
append bss_conf "rsn_preauth=1" "$N"
|
||||||
@@ -1189,6 +1252,8 @@ hostapd_set_bss_options() {
|
|||||||
append bss_conf "per_sta_vif=$per_sta_vif" "$N"
|
append bss_conf "per_sta_vif=$per_sta_vif" "$N"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[ -n "$uci_section" ] && append bss_conf "uci_section=$uci_section" "$N"
|
||||||
|
|
||||||
if [ "$apup" -gt 0 ]; then
|
if [ "$apup" -gt 0 ]; then
|
||||||
append bss_conf "apup=$apup" "$N"
|
append bss_conf "apup=$apup" "$N"
|
||||||
|
|
||||||
|
|||||||
@@ -7,14 +7,14 @@ board_config_update
|
|||||||
board=$(board_name)
|
board=$(board_name)
|
||||||
|
|
||||||
case "$board" in
|
case "$board" in
|
||||||
|
sercomm,ap72tip-v4|\
|
||||||
sercomm,ap72tip)
|
sercomm,ap72tip)
|
||||||
|
ucidef_set_led_default "power" "POWER" "blue:status" "on"
|
||||||
ucidef_set_led_netdev "wan_link" "wan_link" "green:phy" "eth0" "link"
|
ucidef_set_led_netdev "wan_link" "wan_link" "green:phy" "eth0" "link"
|
||||||
ucidef_set_led_netdev "wan_act" "wan_act" "yellow:phy" "eth0" "rx tx"
|
ucidef_set_led_netdev "wan_act" "wan_act" "yellow:phy" "eth0" "rx tx"
|
||||||
;;
|
;;
|
||||||
sonicfi,rap7110c-341x)
|
sonicfi,rap7110c-341x|\
|
||||||
ucidef_set_led_default "power" "POWER" "pwm:blue" "on"
|
sonicfi,rap750w-311a)
|
||||||
;;
|
|
||||||
cig,wf189w)
|
|
||||||
ucidef_set_led_default "power" "POWER" "pwm:blue" "on"
|
ucidef_set_led_default "power" "POWER" "pwm:blue" "on"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|||||||
@@ -22,8 +22,16 @@ ipq53xx_setup_interfaces()
|
|||||||
ucidef_set_interfaces_lan_wan "" "eth0"
|
ucidef_set_interfaces_lan_wan "" "eth0"
|
||||||
;;
|
;;
|
||||||
cig,wf189w)
|
cig,wf189w)
|
||||||
ucidef_add_switch "switch1" "5u@eth0" "3:lan" "2:lan" "1:lan" "0u@eth1" "4:wan"
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
||||||
|
ucidef_add_switch "switch1" "0u@eth1" "3:lan" "2:lan" "1:lan"
|
||||||
;;
|
;;
|
||||||
|
cig,wf189h)
|
||||||
|
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
||||||
|
ucidef_add_switch "switch1" "0u@eth1" "3:lan" "2:lan"
|
||||||
|
;;
|
||||||
|
sercomm,ap72tip-v4)
|
||||||
|
ucidef_set_interface_wan "eth0"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -32,6 +40,7 @@ qcom_setup_macs()
|
|||||||
local board="$1"
|
local board="$1"
|
||||||
case $board in
|
case $board in
|
||||||
cig,wf189w|\
|
cig,wf189w|\
|
||||||
|
cig,wf189h|\
|
||||||
cig,wf189)
|
cig,wf189)
|
||||||
mtd=$(find_mtd_chardev "0:APPSBLENV")
|
mtd=$(find_mtd_chardev "0:APPSBLENV")
|
||||||
[ -z "$mtd" ] && return;
|
[ -z "$mtd" ] && return;
|
||||||
@@ -46,12 +55,30 @@ qcom_setup_macs()
|
|||||||
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3)
|
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3)
|
||||||
ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4)
|
ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4)
|
||||||
;;
|
;;
|
||||||
|
sercomm,ap72tip)
|
||||||
|
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
|
lan_mac=$(cat /sys/class/net/eth1/address)
|
||||||
|
ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2)
|
||||||
|
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3)
|
||||||
|
ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 4)
|
||||||
|
;;
|
||||||
edgecore,eap105)
|
edgecore,eap105)
|
||||||
wan_mac=$(cat /sys/class/net/eth0/address)
|
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
lan_mac=$(macaddr_add "$wan_mac" 1)
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||||
;;
|
;;
|
||||||
sonicfi,rap7110c-341x|\
|
sonicfi,rap7110c-341x)
|
||||||
|
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
|
ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 1)
|
||||||
|
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 2)
|
||||||
|
ucidef_set_wireless_macaddr_base 6g $(macaddr_add "$wan_mac" 3)
|
||||||
|
;;
|
||||||
sonicfi,rap750w-311a)
|
sonicfi,rap750w-311a)
|
||||||
|
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
|
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||||
|
ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 2)
|
||||||
|
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 3)
|
||||||
|
;;
|
||||||
|
sercomm,ap72tip-v4)
|
||||||
wan_mac=$(cat /sys/class/net/eth0/address)
|
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||||
ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 1)
|
ucidef_set_wireless_macaddr_base 2g $(macaddr_add "$wan_mac" 1)
|
||||||
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 2)
|
ucidef_set_wireless_macaddr_base 5g $(macaddr_add "$wan_mac" 2)
|
||||||
|
|||||||
@@ -28,8 +28,10 @@ case "$FIRMWARE" in
|
|||||||
ath12k/IPQ5332/hw1.0/caldata.bin)
|
ath12k/IPQ5332/hw1.0/caldata.bin)
|
||||||
case "$board" in
|
case "$board" in
|
||||||
cig,wf189w|\
|
cig,wf189w|\
|
||||||
|
cig,wf189h|\
|
||||||
cig,wf189|\
|
cig,wf189|\
|
||||||
edgecore,eap105|\
|
edgecore,eap105|\
|
||||||
|
sercomm,ap72tip-v4|\
|
||||||
sercomm,ap72tip)
|
sercomm,ap72tip)
|
||||||
caldata_extract "0:ART" 0x1000 0x20000
|
caldata_extract "0:ART" 0x1000 0x20000
|
||||||
;;
|
;;
|
||||||
@@ -45,6 +47,7 @@ ath12k/QCN92XX/hw1.0/cal-pci-0001:01:00.0.bin)
|
|||||||
case "$board" in
|
case "$board" in
|
||||||
cig,wf189|\
|
cig,wf189|\
|
||||||
edgecore,eap105|\
|
edgecore,eap105|\
|
||||||
|
sercomm,ap72tip-v4|\
|
||||||
sercomm,ap72tip)
|
sercomm,ap72tip)
|
||||||
caldata_extract "0:ART" 0x58800 0x2d000
|
caldata_extract "0:ART" 0x58800 0x2d000
|
||||||
;;
|
;;
|
||||||
@@ -56,12 +59,13 @@ ath12k/QCN92XX/hw1.0/cal-pci-0001:01:00.0.bin)
|
|||||||
ath12k/QCN6432/hw1.0/caldata_1.bin)
|
ath12k/QCN6432/hw1.0/caldata_1.bin)
|
||||||
case "$board" in
|
case "$board" in
|
||||||
sonicfi,rap750w-311a)
|
sonicfi,rap750w-311a)
|
||||||
caldata_extract "0:ART" 0x26800 0x18800
|
caldata_extract "0:ART" 0x12800 0x18800
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
ath12k/QCN6432/hw1.0/cal-ahb-soc@0:wifi1@c0000000.bin)
|
ath12k/QCN6432/hw1.0/cal-ahb-soc@0:wifi1@c0000000.bin)
|
||||||
case "$board" in
|
case "$board" in
|
||||||
|
cig,wf189h|\
|
||||||
cig,wf189w)
|
cig,wf189w)
|
||||||
caldata_extract "0:ART" 0x26800 0x20000
|
caldata_extract "0:ART" 0x26800 0x20000
|
||||||
;;
|
;;
|
||||||
@@ -69,6 +73,7 @@ ath12k/QCN6432/hw1.0/cal-ahb-soc@0:wifi1@c0000000.bin)
|
|||||||
;;
|
;;
|
||||||
ath12k/QCN6432/hw1.0/cal-ahb-soc@0:wifi2@c0000000.bin)
|
ath12k/QCN6432/hw1.0/cal-ahb-soc@0:wifi2@c0000000.bin)
|
||||||
case "$board" in
|
case "$board" in
|
||||||
|
cig,wf189h|\
|
||||||
cig,wf189w)
|
cig,wf189w)
|
||||||
caldata_extract "0:ART" 0x58800 0x20000
|
caldata_extract "0:ART" 0x58800 0x20000
|
||||||
;;
|
;;
|
||||||
|
|||||||
77
feeds/qca-wifi-7/ipq53xx/base-files/etc/init.d/smp-affinity
Executable file
77
feeds/qca-wifi-7/ipq53xx/base-files/etc/init.d/smp-affinity
Executable file
@@ -0,0 +1,77 @@
|
|||||||
|
#!/bin/sh /etc/rc.common
|
||||||
|
|
||||||
|
START=99
|
||||||
|
|
||||||
|
boot() {
|
||||||
|
# For CE(assigned 2 core to copy engine)
|
||||||
|
# using 3 core will cause firmware crash due to bss channel survey timed out
|
||||||
|
i=0
|
||||||
|
cpu_mul=2
|
||||||
|
ce="ce"
|
||||||
|
ce1="ce_"
|
||||||
|
ce_name="$ce$i"
|
||||||
|
ce_name1="$ce1$i"
|
||||||
|
while [ $i -lt 15 ]
|
||||||
|
do
|
||||||
|
cpu=1
|
||||||
|
for irq_num in `grep -e "$ce_name" -e "$ce_name1" /proc/interrupts | cut -d ':' -f 1`
|
||||||
|
do
|
||||||
|
[ -n "$irq_num" ] && echo $cpu > /proc/irq/$irq_num/smp_affinity
|
||||||
|
cpu=$((cpu * cpu_mul))
|
||||||
|
if [ $cpu -gt 4 ] ; then cpu=1; fi
|
||||||
|
done
|
||||||
|
i=$((i+1))
|
||||||
|
ce_name="$ce$i"
|
||||||
|
ce_name1="$ce1$i"
|
||||||
|
done
|
||||||
|
|
||||||
|
#For IPQ5332 2G radio
|
||||||
|
irq_affinity_num=`grep -E -m1 'reo2host-destination-ring4' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'reo2host-destination-ring3' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 4 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'reo2host-destination-ring2' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 2 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'reo2host-destination-ring1' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 1 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'wbm2host-tx-completions-ring4' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'wbm2host-tx-completions-ring3' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 4 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'wbm2host-tx-completions-ring2' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 2 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'wbm2host-tx-completions-ring1' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 1 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'reo2ost-exception' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'wbm2host-rx-release' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 'reo2host-status' /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
|
||||||
|
# 5G and 6G radio
|
||||||
|
# pci0 and pci1 for Wkiki (two radio and one radio split mode)
|
||||||
|
# pcic1 and pcic2 are for Pebble
|
||||||
|
for j in pci0 pci1 pcic1 pcic2; do
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_4 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 1 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_5 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 2 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_6 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 4 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_7 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_0 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 1 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_1 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 2 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_2 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 4 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_11 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_3 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 8 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
irq_affinity_num=`grep -E -m1 "$j"_wlan_dp_8 /proc/interrupts | cut -d ':' -f 1 | tail -n1 | tr -d ' '`
|
||||||
|
[ -n "$irq_affinity_num" ] && echo 2 > /proc/irq/$irq_affinity_num/smp_affinity
|
||||||
|
done
|
||||||
|
}
|
||||||
@@ -87,6 +87,7 @@ platform_do_upgrade() {
|
|||||||
board=$(board_name)
|
board=$(board_name)
|
||||||
case $board in
|
case $board in
|
||||||
cig,wf189w|\
|
cig,wf189w|\
|
||||||
|
cig,wf189h|\
|
||||||
cig,wf189)
|
cig,wf189)
|
||||||
if [ -f /proc/boot_info/bootconfig0/rootfs/upgradepartition ]; then
|
if [ -f /proc/boot_info/bootconfig0/rootfs/upgradepartition ]; then
|
||||||
CI_UBIPART="$(cat /proc/boot_info/bootconfig0/rootfs/upgradepartition)"
|
CI_UBIPART="$(cat /proc/boot_info/bootconfig0/rootfs/upgradepartition)"
|
||||||
@@ -119,5 +120,9 @@ platform_do_upgrade() {
|
|||||||
sonicfi_dualimage_check
|
sonicfi_dualimage_check
|
||||||
nand_upgrade_tar "$1"
|
nand_upgrade_tar "$1"
|
||||||
;;
|
;;
|
||||||
|
sercomm,ap72tip-v4|\
|
||||||
|
sercomm,ap72tip)
|
||||||
|
nand_upgrade_tar "$1"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,10 @@
|
|||||||
serial1 = &blsp1_uart1;
|
serial1 = &blsp1_uart1;
|
||||||
ethernet0 = "/soc/dp1";
|
ethernet0 = "/soc/dp1";
|
||||||
ethernet1 = "/soc/dp2";
|
ethernet1 = "/soc/dp2";
|
||||||
|
led-boot = &led_power_green;
|
||||||
|
led-failsafe = &led_power_red;
|
||||||
|
led-running = &led_power_green;
|
||||||
|
led-upgrade = &led_power_green;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
@@ -43,6 +47,7 @@
|
|||||||
|
|
||||||
phy0: ethernet-phy@0 {
|
phy0: ethernet-phy@0 {
|
||||||
reg = <8>;
|
reg = <8>;
|
||||||
|
compatible ="ethernet-phy-ieee802.3-c45";
|
||||||
};
|
};
|
||||||
|
|
||||||
phy1: ethernet-phy@1 {
|
phy1: ethernet-phy@1 {
|
||||||
@@ -178,13 +183,26 @@
|
|||||||
pinctrl-0 = <&gpio_leds_default>;
|
pinctrl-0 = <&gpio_leds_default>;
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
|
|
||||||
led-0 {
|
led_power_blue: led@26 {
|
||||||
color = <LED_COLOR_ID_GREEN>;
|
label = "status:blue";
|
||||||
function = LED_FUNCTION_WLAN;
|
gpios = <&tlmm 45 GPIO_ACTIVE_HIGH>;
|
||||||
gpios = <&tlmm 36 GPIO_ACTIVE_HIGH>;
|
max-brightness = <160>;
|
||||||
linux,default-trigger = "phy0tx";
|
linux,default-trigger = "none";
|
||||||
default-state = "off";
|
};
|
||||||
};
|
|
||||||
|
led_power_green:led@30 {
|
||||||
|
label = "status:green";
|
||||||
|
gpios = <&tlmm 26 GPIO_ACTIVE_HIGH>;
|
||||||
|
max-brightness = <160>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power_red:led@45 {
|
||||||
|
label = "status:red";
|
||||||
|
gpios = <&tlmm 30 GPIO_ACTIVE_HIGH>;
|
||||||
|
max-brightness = <160>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
gpio_keys {
|
gpio_keys {
|
||||||
@@ -194,9 +212,9 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
button@1 {
|
button@1 {
|
||||||
label = "wps";
|
label = "rst";
|
||||||
linux,code = <KEY_WPS_BUTTON>;
|
linux,code = <KEY_RESTART>;
|
||||||
gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
|
gpios = <&tlmm 17 GPIO_ACTIVE_LOW>;
|
||||||
linux,input-type = <1>;
|
linux,input-type = <1>;
|
||||||
debounce-interval = <60>;
|
debounce-interval = <60>;
|
||||||
};
|
};
|
||||||
@@ -462,7 +480,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
button_pins: button-state {
|
button_pins: button-state {
|
||||||
pins = "gpio35";
|
pins = "gpio17";
|
||||||
function = "gpio";
|
function = "gpio";
|
||||||
drive-strength = <8>;
|
drive-strength = <8>;
|
||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
@@ -481,6 +499,24 @@
|
|||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
output-low;
|
output-low;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
led_pins: led_pins {
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio26";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio30";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio45";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
&license_manager {
|
&license_manager {
|
||||||
|
|||||||
777
feeds/qca-wifi-7/ipq53xx/dts/ipq5332-cig-wf189h.dts
Normal file
777
feeds/qca-wifi-7/ipq53xx/dts/ipq5332-cig-wf189h.dts
Normal file
@@ -0,0 +1,777 @@
|
|||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
||||||
|
/*
|
||||||
|
* IPQ5332 RDP446 board device tree source
|
||||||
|
*
|
||||||
|
* Copyright (c) 2020-2021 The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "ipq5332.dtsi"
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
#include "ipq5332-default-memory.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "CIG WF189H";
|
||||||
|
compatible = "cig,wf189h", "qcom,ipq5332-ap-mi04.1", "qcom,ipq5332-rdp446", "qcom,ipq5332";
|
||||||
|
|
||||||
|
/* 1G Layout for IPQ5332 + QCN6432 + QCN6432
|
||||||
|
* +==========+==============+========================+
|
||||||
|
* | | | |
|
||||||
|
* | Region | Start Offset | Size |
|
||||||
|
* | | | |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* | Q6 | | |
|
||||||
|
* | code/ | 0x4A900000 | 25MB |
|
||||||
|
* | data | | |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* | IPQ5332 | | |
|
||||||
|
* | data | 0x4C200000 | 21MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* | IPQ5332 | | |
|
||||||
|
* | M3 Dump | 0x4D700000 | 1MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* | IPQ5332 | | |
|
||||||
|
* | QDSS | 0x4D800000 | 1MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* | IPQ5332 | | |
|
||||||
|
* | CALDB | 0x4D900000 | 5MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_1| | |
|
||||||
|
* | data | 0x4DE00000 | 21MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_1| | |
|
||||||
|
* | M3 Dump | 0x4F300000 | 1MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_1| | |
|
||||||
|
* | QDSS | 0x4E400000 | 1MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_1| | |
|
||||||
|
* | CALDB | 0x4F500000 | 5MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_2| | |
|
||||||
|
* | data | 0x4FA00000 | 21MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_2| | |
|
||||||
|
* | M3 Dump | 0x50F00000 | 1MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_2| | |
|
||||||
|
* | QDSS | 0x51000000 | 1MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* |QCN6432_2| | |
|
||||||
|
* | CALDB | 0x51100000 | 5MB |
|
||||||
|
* +---------+--------------+-------------------------+
|
||||||
|
* | | | |
|
||||||
|
* | MLO | 0x51600000 | 12MB |
|
||||||
|
* +==================================================+
|
||||||
|
* | |
|
||||||
|
* | |
|
||||||
|
* | |
|
||||||
|
* | Rest of memory for Linux |
|
||||||
|
* | |
|
||||||
|
* | |
|
||||||
|
* | |
|
||||||
|
* +==================================================+
|
||||||
|
*/
|
||||||
|
|
||||||
|
reserved-memory {
|
||||||
|
|
||||||
|
/delete-node/ m3_dump@4cc00000;
|
||||||
|
/delete-node/ q6_etr_dump@1;
|
||||||
|
/delete-node/ mlo_global_mem_0@0x4db00000;
|
||||||
|
/delete-node/ wcnss@4a900000;
|
||||||
|
/delete-node/ q6_caldb_region@4ce00000;
|
||||||
|
|
||||||
|
q6_mem_regions: q6_mem_regions@4A900000 {
|
||||||
|
reg = <0x0 0x4a900000 0x0 0x6D00000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_code_data: q6_code_data@4A900000 {
|
||||||
|
reg = <0x0 0x4a900000 0x0 0x1900000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_ipq5332_data: q6_ipq5332_data@4C200000 {
|
||||||
|
reg = <0x0 0x4C200000 0x0 0x1500000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump: m3_dump@4D700000 {
|
||||||
|
reg = <0x0 0x4D700000 0x0 0x100000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_etr_region: q6_etr_dump@4D800000 {
|
||||||
|
reg = <0x0 0x4D800000 0x0 0x100000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_ipq5332_caldb: q6_ipq5332_caldb@4D900000 {
|
||||||
|
reg = <0x0 0x4D900000 0x0 0x500000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6432_data_1: q6_qcn6432_data_1@4DE00000 {
|
||||||
|
reg = <0x0 0x4DE00000 0x0 0x1500000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump_qcn6432_1: m3_dump_qcn6432_1@4F300000 {
|
||||||
|
reg = <0x0 0x4F300000 0x0 0x100000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6432_etr_1: q6_qcn6432_etr_1@4F400000 {
|
||||||
|
reg = <0x0 0x4F400000 0x0 0x100000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6432_caldb_1: q6_qcn6432_caldb_1@4F500000 {
|
||||||
|
reg = <0x0 0x4F500000 0x0 0x500000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6432_data_2: q6_qcn6432_data_2@4FA00000 {
|
||||||
|
reg = <0x0 0x4FA00000 0x0 0x1500000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump_qcn6432_2: m3_dump_qcn6432_2@50F00000 {
|
||||||
|
reg = <0x0 0x50F00000 0x0 0x100000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6432_etr_2: q6_qcn6432_etr_2@51000000 {
|
||||||
|
reg = <0x0 0x51000000 0x0 0x100000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6432_caldb_2: q6_qcn6432_caldb_2@51100000 {
|
||||||
|
reg = <0x0 0x51100000 0x0 0x500000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
|
||||||
|
mlo_global_mem0: mlo_global_mem_0@51600000 {
|
||||||
|
reg = <0x0 0x51600000 0x0 0xC00000>;
|
||||||
|
no-map;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &blsp1_uart0;
|
||||||
|
serial1 = &blsp1_uart1;
|
||||||
|
ethernet0 = "/soc/dp1";
|
||||||
|
ethernet1 = "/soc/dp2";
|
||||||
|
led-boot = &led_power_green;
|
||||||
|
led-failsafe = &led_power_red;
|
||||||
|
led-running = &led_power_green;
|
||||||
|
led-upgrade = &led_power_green;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0";
|
||||||
|
};
|
||||||
|
|
||||||
|
soc@0 {
|
||||||
|
mdio:mdio@90000 {
|
||||||
|
pinctrl-0 = <&mdio1_pins &mdio0_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
/*gpio51 for manhattan reset*/
|
||||||
|
phy-reset-gpio = <&tlmm 22 GPIO_ACTIVE_LOW>;
|
||||||
|
phyaddr_fixup = <0xC90F018>;
|
||||||
|
uniphyaddr_fixup = <0xC90F014>;
|
||||||
|
mdio_clk_fixup; /* MDIO clock sequence fix up flag */
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
phy0: ethernet-phy@0 {
|
||||||
|
reg = <1>;
|
||||||
|
fixup;
|
||||||
|
};
|
||||||
|
phy1: ethernet-phy@1 {
|
||||||
|
reg = <2>;
|
||||||
|
fixup;
|
||||||
|
};
|
||||||
|
phy2: ethernet-phy@2 {
|
||||||
|
reg = <3>;
|
||||||
|
fixup;
|
||||||
|
};
|
||||||
|
phy3: ethernet-phy@3 {
|
||||||
|
reg = <4>;
|
||||||
|
fixup;
|
||||||
|
};
|
||||||
|
|
||||||
|
switch0@10 {
|
||||||
|
compatible = "qca,qca8386";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
reg = <0x10>;
|
||||||
|
|
||||||
|
ports {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
|
||||||
|
port@0 {
|
||||||
|
reg = <0>;
|
||||||
|
label = "cpu";
|
||||||
|
ethernet = <&gmac2>;
|
||||||
|
dsa-tag-protocol = "qca_4b";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@1 {
|
||||||
|
reg = <1>;
|
||||||
|
label = "lan1";
|
||||||
|
phy-handle = <&phy0>;
|
||||||
|
phy-mode = "usxgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@2 {
|
||||||
|
reg = <2>;
|
||||||
|
label = "lan2";
|
||||||
|
phy-handle = <&phy1>;
|
||||||
|
phy-mode = "usxgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@3 {
|
||||||
|
reg = <3>;
|
||||||
|
label = "lan3";
|
||||||
|
phy-handle = <&phy2>;
|
||||||
|
phy-mode = "usxgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@4 {
|
||||||
|
reg = <4>;
|
||||||
|
label = "lan4";
|
||||||
|
phy-handle = <&phy3>;
|
||||||
|
phy-mode = "usxgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
port@5 {
|
||||||
|
reg = <5>;
|
||||||
|
forced-speed = <2500>;
|
||||||
|
forced-duplex = <1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pwmleds {
|
||||||
|
compatible = "pwm-leds";
|
||||||
|
|
||||||
|
led_power_red: red {
|
||||||
|
label = "pwm:red";
|
||||||
|
pwms = <&pwm 3 1250000>;
|
||||||
|
max-brightness = <160>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power_green: green {
|
||||||
|
label = "pwm:green";
|
||||||
|
pwms = <&pwm 2 1250000>;
|
||||||
|
max-brightness = <160>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power_blue: blue {
|
||||||
|
label = "pwm:blue";
|
||||||
|
pwms = <&pwm 1 1250000>;
|
||||||
|
max-brightness = <160>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pinctrl-0 = <&button_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
button@1 {
|
||||||
|
label = "rst";
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
gpios = <&tlmm 21 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
debounce-interval = <60>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-instance {
|
||||||
|
num_devices = <0x2>;
|
||||||
|
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x2>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x4>; /* wan port bitmap */
|
||||||
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
||||||
|
switch_mac_mode1 = <0xf>; /* mac mode for uniphy instance1*/
|
||||||
|
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||||
|
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <1>;
|
||||||
|
forced-speed = <2500>;
|
||||||
|
forced-duplex = <1>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <4>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-switch1@1 {
|
||||||
|
compatible = "qcom,ess-switch-qca8386";
|
||||||
|
device_id = <1>;
|
||||||
|
switch_access_mode = "mdio";
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0 */
|
||||||
|
switch_mac_mode1 = <0xc>; /* mac mode1 for uniphy instance1 */
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x0e>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x0>; /* wan port bitmap */
|
||||||
|
// link-polling-required = <0>;
|
||||||
|
fdb_sync = "interrupt";
|
||||||
|
link-intr-gpio = <&tlmm 24 GPIO_ACTIVE_HIGH>;
|
||||||
|
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <0>;
|
||||||
|
forced-speed = <2500>;
|
||||||
|
forced-duplex = <1>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <1>;
|
||||||
|
phy_address = <1>;
|
||||||
|
};
|
||||||
|
port@2 {
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <2>;
|
||||||
|
};
|
||||||
|
port@3 {
|
||||||
|
port_id = <3>;
|
||||||
|
phy_address = <3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
led_source@2 {
|
||||||
|
source = <2>;
|
||||||
|
mode = "normal";
|
||||||
|
speed = "all";
|
||||||
|
blink_en = "enable";
|
||||||
|
active = "high";
|
||||||
|
};
|
||||||
|
led_source@5 {
|
||||||
|
source = <5>;
|
||||||
|
mode = "normal";
|
||||||
|
speed = "all";
|
||||||
|
blink_en = "enable";
|
||||||
|
active = "high";
|
||||||
|
};
|
||||||
|
led_source@8 {
|
||||||
|
source = <8>;
|
||||||
|
mode = "normal";
|
||||||
|
speed = "all";
|
||||||
|
blink_en = "enable";
|
||||||
|
active = "high";
|
||||||
|
};
|
||||||
|
led_source@11 {
|
||||||
|
source = <11>;
|
||||||
|
mode = "normal";
|
||||||
|
speed = "all";
|
||||||
|
blink_en = "enable";
|
||||||
|
active = "high";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x3a504000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,mht-dev = <1>;
|
||||||
|
qcom,is_switch_connected = <1>;
|
||||||
|
qcom,ppe-offload-disabled = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
gmac2:dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x3a500000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
qcom,mht-dev = <1>;
|
||||||
|
qcom,is_switch_connected = <1>;
|
||||||
|
qcom,ppe-offload-disabled = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* EDMA host driver configuration for the board */
|
||||||
|
edma@3ab00000 {
|
||||||
|
qcom,txdesc-ring-start = <4>; /* Tx desc ring start ID */
|
||||||
|
qcom,txdesc-rings = <12>; /* Total number of Tx desc rings to be provisioned */
|
||||||
|
qcom,mht-txdesc-rings = <8>; /* Extra Tx desc rings to be provisioned for MHT SW ports */
|
||||||
|
qcom,txcmpl-ring-start = <4>; /* Tx complete ring start ID */
|
||||||
|
qcom,txcmpl-rings = <12>; /* Total number of Tx complete rings to be provisioned */
|
||||||
|
qcom,mht-txcmpl-rings = <8>; /* Extra Tx complete rings to be provisioned for mht sw ports. */
|
||||||
|
qcom,rxfill-ring-start = <4>; /* Rx fill ring start ID */
|
||||||
|
qcom,rxfill-rings = <4>; /* Total number of Rx fill rings to be provisioned */
|
||||||
|
qcom,rxdesc-ring-start = <12>; /* Rx desc ring start ID */
|
||||||
|
qcom,rxdesc-rings = <4>; /* Total number of Rx desc rings to be provisioned */
|
||||||
|
qcom,rx-page-mode = <0>; /* Rx fill ring page mode */
|
||||||
|
qcom,tx-map-priority-level = <1>; /* Tx priority level per port */
|
||||||
|
qcom,rx-map-priority-level = <1>; /* Rx priority level per core */
|
||||||
|
qcom,ppeds-num = <2>; /* Number of PPEDS nodes */
|
||||||
|
/* PPE-DS node format: <Rx-fill Tx-cmpl Rx Tx Queue-base Queue-count> */
|
||||||
|
qcom,ppeds-map = <1 1 1 1 32 8>, /* PPEDS Node#0 ring and queue map */
|
||||||
|
<2 2 2 2 40 8>; /* PPEDS Node#1 ring and queue map */
|
||||||
|
qcom,txdesc-map = <8 9 10 11>, /* Port0 per-core Tx ring map */
|
||||||
|
<12 13 14 15>, /* MHT-Port1 per-core Tx ring map */
|
||||||
|
<4 5 6 7>, /* MHT-Port2 per-core Tx ring map/packets from vp*/
|
||||||
|
<16 17 18 19>, /* MHT-Port3 per-core Tx ring map */
|
||||||
|
<20 21 22 23>; /* MHT-Port4 per-core Tx ring map */
|
||||||
|
qcom,txdesc-fc-grp-map = <1 2 3 4 5>; /* Per GMAC flow control group map */
|
||||||
|
qcom,rxfill-map = <4 5 6 7>; /* Per-core Rx fill ring map */
|
||||||
|
qcom,rxdesc-map = <12 13 14 15>; /* Per-core Rx desc ring map */
|
||||||
|
qcom,rx-queue-start = <0>; /* Rx queue start */
|
||||||
|
qcom,rx-ring-queue-map = <0 8 16 24>, /* Priority 0 queues per-core Rx ring map */
|
||||||
|
<1 9 17 25>, /* Priority 1 queues per-core Rx ring map */
|
||||||
|
<2 10 18 26>, /* Priority 2 queues per-core Rx ring map */
|
||||||
|
<3 11 19 27>, /* Priority 3 queues per-core Rx ring map */
|
||||||
|
<4 12 20 28>, /* Priority 4 queues per-core Rx ring map */
|
||||||
|
<5 13 21 29>, /* Priority 5 queues per-core Rx ring map */
|
||||||
|
<6 14 22 30>, /* Priority 6 queues per-core Rx ring map */
|
||||||
|
<7 15 23 31>; /* Priority 7 queues per-core Rx ring map */
|
||||||
|
interrupts = <0 163 4>, /* Tx complete ring id #4 IRQ info */
|
||||||
|
<0 164 4>, /* Tx complete ring id #5 IRQ info */
|
||||||
|
<0 165 4>, /* Tx complete ring id #6 IRQ info */
|
||||||
|
<0 166 4>, /* Tx complete ring id #7 IRQ info */
|
||||||
|
<0 167 4>, /* Tx complete ring id #8 IRQ info */
|
||||||
|
<0 168 4>, /* Tx complete ring id #9 IRQ info */
|
||||||
|
<0 169 4>, /* Tx complete ring id #10 IRQ info */
|
||||||
|
<0 170 4>, /* Tx complete ring id #11 IRQ info */
|
||||||
|
<0 171 4>, /* Tx complete ring id #12 IRQ info */
|
||||||
|
<0 172 4>, /* Tx complete ring id #13 IRQ info */
|
||||||
|
<0 173 4>, /* Tx complete ring id #14 IRQ info */
|
||||||
|
<0 174 4>, /* Tx complete ring id #15 IRQ info */
|
||||||
|
<0 139 4>, /* Rx desc ring id #12 IRQ info */
|
||||||
|
<0 140 4>, /* Rx desc ring id #13 IRQ info */
|
||||||
|
<0 141 4>, /* Rx desc ring id #14 IRQ info */
|
||||||
|
<0 142 4>, /* Rx desc ring id #15 IRQ info */
|
||||||
|
<0 191 4>, /* Misc error IRQ info */
|
||||||
|
<0 160 4>, /* PPEDS Node #1(TxComp ring id #1) TxComplete IRQ info */
|
||||||
|
<0 128 4>, /* PPEDS Node #1(Rx Desc ring id #1) Rx Desc IRQ info */
|
||||||
|
<0 152 4>, /* PPEDS Node #1(RxFill Desc ring id #1) Rx Fill IRQ info */
|
||||||
|
<0 161 4>, /* PPEDS Node #2(TxComp ring id #2) TxComplete IRQ info */
|
||||||
|
<0 129 4>, /* PPEDS Node #2(Rx Desc ring id #2) Rx Desc IRQ info */
|
||||||
|
<0 153 4>, /* PPEDS Node #2(RxFill Desc ring id #2) Rx Fill IRQ info */
|
||||||
|
<0 175 4>, /* MHT port Tx complete ring id #16 IRQ info */
|
||||||
|
<0 176 4>, /* MHT port Tx complete ring id #17 IRQ info */
|
||||||
|
<0 177 4>, /* MHT port Tx complete ring id #18 IRQ info */
|
||||||
|
<0 178 4>, /* MHT port Tx complete ring id #19 IRQ info */
|
||||||
|
<0 179 4>, /* MHT port Tx complete ring id #20 IRQ info */
|
||||||
|
<0 180 4>, /* MHT port Tx complete ring id #21 IRQ info */
|
||||||
|
<0 181 4>, /* MHT port Tx complete ring id #22 IRQ info */
|
||||||
|
<0 182 4>; /* MHT port Tx complete ring id #23 IRQ info */
|
||||||
|
};
|
||||||
|
|
||||||
|
wsi: wsi {
|
||||||
|
id = <0>;
|
||||||
|
num_chip = <3>;
|
||||||
|
status = "okay";
|
||||||
|
chip_info = <0 2 1 2>,
|
||||||
|
<1 2 2 0>,
|
||||||
|
<2 2 0 1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6v5_wcss: remoteproc@d100000 {
|
||||||
|
boot-args = <0x1 0x4 0x3 0x1 0x2f 0x2>,
|
||||||
|
<0x1 0x4 0x4 0x2 0x2c 0x2>;
|
||||||
|
memory-region = <&q6_mem_regions>,
|
||||||
|
<&mlo_global_mem0>;
|
||||||
|
|
||||||
|
/delete-node/ remoteproc_pd1;
|
||||||
|
/delete-node/ remoteproc_pd2;
|
||||||
|
/delete-node/ remoteproc_pd3;
|
||||||
|
|
||||||
|
q6_wcss_pd4: remoteproc_pd4 {
|
||||||
|
compatible = "qcom,ipq5332-mpd-upd-text";
|
||||||
|
firmware = "IPQ5332/q6_fw4.mdt";
|
||||||
|
|
||||||
|
q6_wcss_pd1: remoteproc_pd1 {
|
||||||
|
compatible = "qcom,ipq5332-wcss-ahb-mpd";
|
||||||
|
firmware = "IPQ5332/q6_fw1.mdt";
|
||||||
|
m3_firmware = "IPQ5332/iu_fw.mdt";
|
||||||
|
interrupts-extended = <&wcss_smp2p_in 8 0>,
|
||||||
|
<&wcss_smp2p_in 9 0>,
|
||||||
|
<&wcss_smp2p_in 12 0>,
|
||||||
|
<&wcss_smp2p_in 11 0>;
|
||||||
|
interrupt-names = "fatal",
|
||||||
|
"ready",
|
||||||
|
"spawn-ack",
|
||||||
|
"stop-ack";
|
||||||
|
|
||||||
|
qcom,smem-states = <&wcss_smp2p_out 8>,
|
||||||
|
<&wcss_smp2p_out 9>,
|
||||||
|
<&wcss_smp2p_out 10>;
|
||||||
|
qcom,smem-state-names = "shutdown",
|
||||||
|
"stop",
|
||||||
|
"spawn";
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_wcss_pd2: remoteproc_pd2 {
|
||||||
|
compatible = "qcom,ipq5332-wcss-pcie-mpd";
|
||||||
|
firmware = "IPQ5332/q6_fw2.mdt";
|
||||||
|
m3_firmware = "qcn6432/iu_fw.mdt";
|
||||||
|
interrupts-extended = <&wcss_smp2p_in 16 0>,
|
||||||
|
<&wcss_smp2p_in 17 0>,
|
||||||
|
<&wcss_smp2p_in 20 0>,
|
||||||
|
<&wcss_smp2p_in 19 0>;
|
||||||
|
interrupt-names = "fatal",
|
||||||
|
"ready",
|
||||||
|
"spawn-ack",
|
||||||
|
"stop-ack";
|
||||||
|
|
||||||
|
qcom,smem-states = <&wcss_smp2p_out 16>,
|
||||||
|
<&wcss_smp2p_out 17>,
|
||||||
|
<&wcss_smp2p_out 18>;
|
||||||
|
qcom,smem-state-names = "shutdown",
|
||||||
|
"stop",
|
||||||
|
"spawn";
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_wcss_pd3: remoteproc_pd3 {
|
||||||
|
compatible = "qcom,ipq5332-wcss-pcie-mpd";
|
||||||
|
firmware = "IPQ5332/q6_fw3.mdt";
|
||||||
|
interrupts-extended = <&wcss_smp2p_in 24 0>,
|
||||||
|
<&wcss_smp2p_in 25 0>,
|
||||||
|
<&wcss_smp2p_in 28 0>,
|
||||||
|
<&wcss_smp2p_in 27 0>;
|
||||||
|
interrupt-names = "fatal",
|
||||||
|
"ready",
|
||||||
|
"spawn-ack",
|
||||||
|
"stop-ack";
|
||||||
|
|
||||||
|
qcom,smem-states = <&wcss_smp2p_out 24>,
|
||||||
|
<&wcss_smp2p_out 25>,
|
||||||
|
<&wcss_smp2p_out 26>;
|
||||||
|
qcom,smem-state-names = "shutdown",
|
||||||
|
"stop",
|
||||||
|
"spawn";
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart0 {
|
||||||
|
pinctrl-0 = <&serial_0_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart1 {
|
||||||
|
pinctrl-0 = <&serial_1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sleep_clk {
|
||||||
|
clock-frequency = <32000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&xo {
|
||||||
|
clock-frequency = <24000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_bam {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_nand {
|
||||||
|
pinctrl-0 = <&qspi_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
nandcs@0 {
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
nand-ecc-strength = <8>;
|
||||||
|
nand-ecc-step-size = <512>;
|
||||||
|
nand-bus-width = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&tlmm {
|
||||||
|
qspi_default_state: qspi-default-state {
|
||||||
|
qspi_clock {
|
||||||
|
pins = "gpio13";
|
||||||
|
function = "qspi_clk";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_cs {
|
||||||
|
pins = "gpio12";
|
||||||
|
function = "qspi_cs";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_data {
|
||||||
|
pins = "gpio8", "gpio9", "gpio10", "gpio11";
|
||||||
|
function = "qspi_data";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
pwm_pins: pwm_pinmux {
|
||||||
|
/* PWM LED GREEN */
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio30";
|
||||||
|
function = "pwm1";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
/* PWM LED BLUE */
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio31";
|
||||||
|
function = "pwm1";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
/* PWM LED RED */
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio29";
|
||||||
|
function = "pwm1";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
serial_1_pins: serial1-pinmux {
|
||||||
|
pins = "gpio33", "gpio34", "gpio35", "gpio36";
|
||||||
|
function = "blsp1_uart2";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
button_pins: button-state {
|
||||||
|
pins = "gpio21";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_0_data_clk_pins: spi-0-data-clk-state {
|
||||||
|
pins = "gpio14", "gpio15", "gpio16";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_0_cs_pins: spi-0-cs-state {
|
||||||
|
pins = "gpio17";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio1_pins: mdio1-state {
|
||||||
|
mux_0 {
|
||||||
|
pins = "gpio27";
|
||||||
|
function = "mdc1";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio28";
|
||||||
|
function = "mdio1";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&license_manager {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pwm {
|
||||||
|
pinctrl-0 = <&pwm_pins>;
|
||||||
|
used-pwm-indices = <1>, <1>, <0>, <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hs_m31phy_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi0 {
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,rproc = <&q6_wcss_pd1>;
|
||||||
|
qcom,rproc_rpd = <&q6v5_wcss>;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd1";
|
||||||
|
qcom,tgt-mem-mode = <0>;
|
||||||
|
qcom,bdf-addr = <0x4C200000 0x4C200000 0x4C200000 0x0 0x0 0x0>;
|
||||||
|
qcom,caldb-addr = <0x4D900000 0x4D900000 0x4D900000 0x0 0x0 0x0>;
|
||||||
|
qcom,caldb-size = <0x500000>;
|
||||||
|
qcom,board_id = <0x41>;
|
||||||
|
mem-region = <&q6_ipq5332_data>;
|
||||||
|
memory-region = <&q6_ipq5332_data>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi1 {
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,rproc = <&q6_wcss_pd2>;
|
||||||
|
qcom,rproc_rpd = <&q6v5_wcss>;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd2";
|
||||||
|
qcom,tgt-mem-mode = <0>;
|
||||||
|
qcom,bdf-addr = <0x4DE00000 0x4DE00000 0x4DE00000 0x0 0x0 0x0>;
|
||||||
|
qcom,caldb-addr = <0x4F500000 0x4F500000 0x4F500000 0x0 0x0 0x0>;
|
||||||
|
qcom,umac-irq-reset-addr = <0x20000884>;
|
||||||
|
qcom,caldb-size = <0x500000>;
|
||||||
|
qcom,board_id = <0x061>;
|
||||||
|
mem-region = <&q6_qcn6432_data_1>;
|
||||||
|
memory-region = <&q6_qcn6432_data_1>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <1>;
|
||||||
|
status = "okay";
|
||||||
|
interrupts = <GIC_SPI 33 IRQ_TYPE_EDGE_RISING>;
|
||||||
|
interrupt-names = "umac_reset";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi2 {
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,rproc = <&q6_wcss_pd3>;
|
||||||
|
qcom,rproc_rpd = <&q6v5_wcss>;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd3";
|
||||||
|
qcom,tgt-mem-mode = <0>;
|
||||||
|
qcom,bdf-addr = <0x4FA00000 0x4FA00000 0x4FA00000 0x0 0x0 0x0>;
|
||||||
|
qcom,caldb-addr = <0x51100000 0x51100000 0x51100000 0x0 0x0 0x0>;
|
||||||
|
qcom,umac-irq-reset-addr = <0x18000884>;
|
||||||
|
qcom,caldb-size = <0x500000>;
|
||||||
|
qcom,board_id = <0x0b1>;
|
||||||
|
mem-region = <&q6_qcn6432_data_2>;
|
||||||
|
memory-region = <&q6_qcn6432_data_2>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <2>;
|
||||||
|
status = "okay";
|
||||||
|
interrupts = <GIC_SPI 410 IRQ_TYPE_EDGE_RISING>;
|
||||||
|
interrupt-names = "umac_reset";
|
||||||
|
};
|
||||||
@@ -166,10 +166,10 @@
|
|||||||
serial1 = &blsp1_uart1;
|
serial1 = &blsp1_uart1;
|
||||||
ethernet0 = "/soc/dp1";
|
ethernet0 = "/soc/dp1";
|
||||||
ethernet1 = "/soc/dp2";
|
ethernet1 = "/soc/dp2";
|
||||||
led-boot = &led_power;
|
led-boot = &led_power_green;
|
||||||
led-failsafe = &led_power;
|
led-failsafe = &led_power_red;
|
||||||
led-running = &led_power;
|
led-running = &led_power_green;
|
||||||
led-upgrade = &led_power;
|
led-upgrade = &led_power_green;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
@@ -261,21 +261,21 @@
|
|||||||
pwmleds {
|
pwmleds {
|
||||||
compatible = "pwm-leds";
|
compatible = "pwm-leds";
|
||||||
|
|
||||||
red {
|
led_power_red: red {
|
||||||
label = "pwm:red";
|
label = "pwm:red";
|
||||||
pwms = <&pwm 3 1250000>;
|
pwms = <&pwm 3 1250000>;
|
||||||
max-brightness = <160>;
|
max-brightness = <160>;
|
||||||
linux,default-trigger = "none";
|
linux,default-trigger = "none";
|
||||||
};
|
};
|
||||||
|
|
||||||
green {
|
led_power_green: green {
|
||||||
label = "pwm:green";
|
label = "pwm:green";
|
||||||
pwms = <&pwm 2 1250000>;
|
pwms = <&pwm 2 1250000>;
|
||||||
max-brightness = <160>;
|
max-brightness = <160>;
|
||||||
linux,default-trigger = "none";
|
linux,default-trigger = "none";
|
||||||
};
|
};
|
||||||
|
|
||||||
led_power: blue {
|
led_power_blue: blue {
|
||||||
label = "pwm:blue";
|
label = "pwm:blue";
|
||||||
pwms = <&pwm 1 1250000>;
|
pwms = <&pwm 1 1250000>;
|
||||||
max-brightness = <160>;
|
max-brightness = <160>;
|
||||||
@@ -307,7 +307,7 @@
|
|||||||
switch_lan_bmp = <0x2>; /* lan port bitmap */
|
switch_lan_bmp = <0x2>; /* lan port bitmap */
|
||||||
switch_wan_bmp = <0x4>; /* wan port bitmap */
|
switch_wan_bmp = <0x4>; /* wan port bitmap */
|
||||||
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
||||||
switch_mac_mode1 = <0xc>; /* mac mode for uniphy instance1*/
|
switch_mac_mode1 = <0xf>; /* mac mode for uniphy instance1*/
|
||||||
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||||
|
|
||||||
qcom,port_phyinfo {
|
qcom,port_phyinfo {
|
||||||
@@ -318,8 +318,7 @@
|
|||||||
};
|
};
|
||||||
port@1 {
|
port@1 {
|
||||||
port_id = <2>;
|
port_id = <2>;
|
||||||
forced-speed = <2500>;
|
phy_address = <4>;
|
||||||
forced-duplex = <1>;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -331,9 +330,9 @@
|
|||||||
mdio-bus = <&mdio>;
|
mdio-bus = <&mdio>;
|
||||||
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0 */
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0 */
|
||||||
switch_mac_mode1 = <0xc>; /* mac mode1 for uniphy instance1 */
|
switch_mac_mode1 = <0xc>; /* mac mode1 for uniphy instance1 */
|
||||||
switch_cpu_bmp = <0x21>; /* cpu port bitmap */
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
switch_lan_bmp = <0x0e>; /* lan port bitmap */
|
switch_lan_bmp = <0x0e>; /* lan port bitmap */
|
||||||
switch_wan_bmp = <0x10>; /* wan port bitmap */
|
switch_wan_bmp = <0x0>; /* wan port bitmap */
|
||||||
// link-polling-required = <0>;
|
// link-polling-required = <0>;
|
||||||
fdb_sync = "interrupt";
|
fdb_sync = "interrupt";
|
||||||
link-intr-gpio = <&tlmm 24 GPIO_ACTIVE_HIGH>;
|
link-intr-gpio = <&tlmm 24 GPIO_ACTIVE_HIGH>;
|
||||||
@@ -356,15 +355,6 @@
|
|||||||
port_id = <3>;
|
port_id = <3>;
|
||||||
phy_address = <3>;
|
phy_address = <3>;
|
||||||
};
|
};
|
||||||
port@4 {
|
|
||||||
port_id = <4>;
|
|
||||||
phy_address = <4>;
|
|
||||||
};
|
|
||||||
port@5 {
|
|
||||||
port_id = <5>;
|
|
||||||
forced-speed = <2500>;
|
|
||||||
forced-duplex = <1>;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
led_source@2 {
|
led_source@2 {
|
||||||
|
|||||||
591
feeds/qca-wifi-7/ipq53xx/dts/ipq5332-sercomm-ap72tip-v4.dts
Normal file
591
feeds/qca-wifi-7/ipq53xx/dts/ipq5332-sercomm-ap72tip-v4.dts
Normal file
@@ -0,0 +1,591 @@
|
|||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
||||||
|
/*
|
||||||
|
* IPQ5332 RDP468 board device tree source
|
||||||
|
*
|
||||||
|
* Copyright (c) 2020-2021 The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
#include "ipq5332.dtsi"
|
||||||
|
#include "ipq5332-default-memory.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Sercomm WiFi-7";
|
||||||
|
compatible = "sercomm,ap72tip-v4", "qcom,ipq5332-ap-mi01.6", "qcom,ipq5332";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &blsp1_uart0; /*console*/
|
||||||
|
serial1 = &blsp1_uart1; /*ble*/
|
||||||
|
ethernet0 = "/soc/dp1";
|
||||||
|
ethernet1 = "/soc/dp2";
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0";
|
||||||
|
};
|
||||||
|
|
||||||
|
soc@0 {
|
||||||
|
|
||||||
|
#if 0 //AQR114C
|
||||||
|
mdio:mdio@90000 {
|
||||||
|
pinctrl-0 = <&mdio1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
phy-reset-gpio = <&tlmm 0 GPIO_ACTIVE_LOW>;
|
||||||
|
phyaddr_fixup = <0xC90F018>;
|
||||||
|
uniphyaddr_fixup = <0xC90F014>;
|
||||||
|
mdio_clk_fixup; /* MDIO clock sequence fix up flag */
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
phy0: ethernet-phy@0 {
|
||||||
|
reg = <24>;
|
||||||
|
};
|
||||||
|
|
||||||
|
phy1: ethernet-phy@1 { //aqr114c
|
||||||
|
reg = <0>;
|
||||||
|
compatible ="ethernet-phy-ieee802.3-c45";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-instance {
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x0>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x6>; /* wan port bitmap */
|
||||||
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
||||||
|
switch_mac_mode1 = <0xf>; /* mac mode for uniphy instance1*/
|
||||||
|
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||||
|
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <1>;
|
||||||
|
phy_address = <24>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
};
|
||||||
|
port@1 { //aqr114c
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <0>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
ethernet-phy-ieee802.3-c45;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x3a500000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
qcom,phy-mdio-addr = <24>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x3a504000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,phy-mdio-addr = <0>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
#else //SFP
|
||||||
|
mdio:mdio@90000 {
|
||||||
|
pinctrl-0 = <&mdio1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
/*gpio0 for napa*/
|
||||||
|
phy-reset-gpio = <&tlmm 0 GPIO_ACTIVE_LOW>;
|
||||||
|
status = "okay";
|
||||||
|
phy0: ethernet-phy@0 {
|
||||||
|
reg = <24>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ess-instance {
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x0>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x6>; /* wan port bitmap */
|
||||||
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
||||||
|
switch_mac_mode1 = <0xe>; /* mac mode for uniphy instance1 sfp PORT_WRAPPER_10GBASE_R*/
|
||||||
|
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <1>;
|
||||||
|
phy_address = <24>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <30>;
|
||||||
|
media-type = "sfp";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x3a500000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
qcom,phy-mdio-addr = <24>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x3a504000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
qcom,phy-mdio-addr = <30>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* EDMA host driver configuration for the board */
|
||||||
|
edma@3ab00000 {
|
||||||
|
qcom,txdesc-ring-start = <4>; /* Tx desc ring start ID */
|
||||||
|
qcom,txdesc-rings = <12>; /* Total number of Tx desc rings to be provisioned */
|
||||||
|
qcom,mht-txdesc-rings = <8>; /* Extra Tx desc rings to be provisioned for MHT SW ports */
|
||||||
|
qcom,txcmpl-ring-start = <4>; /* Tx complete ring start ID */
|
||||||
|
qcom,txcmpl-rings = <12>; /* Total number of Tx complete rings to be provisioned */
|
||||||
|
qcom,mht-txcmpl-rings = <8>; /* Extra Tx complete rings to be provisioned for mht sw ports. */
|
||||||
|
qcom,rxfill-ring-start = <4>; /* Rx fill ring start ID */
|
||||||
|
qcom,rxfill-rings = <4>; /* Total number of Rx fill rings to be provisioned */
|
||||||
|
qcom,rxdesc-ring-start = <12>; /* Rx desc ring start ID */
|
||||||
|
qcom,rxdesc-rings = <4>; /* Total number of Rx desc rings to be provisioned */
|
||||||
|
qcom,rx-page-mode = <0>; /* Rx fill ring page mode */
|
||||||
|
qcom,tx-map-priority-level = <1>; /* Tx priority level per port */
|
||||||
|
qcom,rx-map-priority-level = <1>; /* Rx priority level per core */
|
||||||
|
qcom,ppeds-num = <2>; /* Number of PPEDS nodes */
|
||||||
|
/* PPE-DS node format: <Rx-fill Tx-cmpl Rx Tx Queue-base Queue-count> */
|
||||||
|
qcom,ppeds-map = <1 1 1 1 32 8>, /* PPEDS Node#0 ring and queue map */
|
||||||
|
<2 2 2 2 40 8>; /* PPEDS Node#1 ring and queue map */
|
||||||
|
qcom,txdesc-map = <8 9 10 11>, /* Port0 per-core Tx ring map */
|
||||||
|
<12 13 14 15>, /* MHT-Port1 per-core Tx ring map */
|
||||||
|
<4 5 6 7>, /* MHT-Port2 per-core Tx ring map/packets from vp*/
|
||||||
|
<16 17 18 19>, /* MHT-Port3 per-core Tx ring map */
|
||||||
|
<20 21 22 23>; /* MHT-Port4 per-core Tx ring map */
|
||||||
|
qcom,txdesc-fc-grp-map = <1 2 3 4 5>; /* Per GMAC flow control group map */
|
||||||
|
qcom,rxfill-map = <4 5 6 7>; /* Per-core Rx fill ring map */
|
||||||
|
qcom,rxdesc-map = <12 13 14 15>; /* Per-core Rx desc ring map */
|
||||||
|
qcom,rx-queue-start = <0>; /* Rx queue start */
|
||||||
|
qcom,rx-ring-queue-map = <0 8 16 24>, /* Priority 0 queues per-core Rx ring map */
|
||||||
|
<1 9 17 25>, /* Priority 1 queues per-core Rx ring map */
|
||||||
|
<2 10 18 26>, /* Priority 2 queues per-core Rx ring map */
|
||||||
|
<3 11 19 27>, /* Priority 3 queues per-core Rx ring map */
|
||||||
|
<4 12 20 28>, /* Priority 4 queues per-core Rx ring map */
|
||||||
|
<5 13 21 29>, /* Priority 5 queues per-core Rx ring map */
|
||||||
|
<6 14 22 30>, /* Priority 6 queues per-core Rx ring map */
|
||||||
|
<7 15 23 31>; /* Priority 7 queues per-core Rx ring map */
|
||||||
|
interrupts = <0 163 4>, /* Tx complete ring id #4 IRQ info */
|
||||||
|
<0 164 4>, /* Tx complete ring id #5 IRQ info */
|
||||||
|
<0 165 4>, /* Tx complete ring id #6 IRQ info */
|
||||||
|
<0 166 4>, /* Tx complete ring id #7 IRQ info */
|
||||||
|
<0 167 4>, /* Tx complete ring id #8 IRQ info */
|
||||||
|
<0 168 4>, /* Tx complete ring id #9 IRQ info */
|
||||||
|
<0 169 4>, /* Tx complete ring id #10 IRQ info */
|
||||||
|
<0 170 4>, /* Tx complete ring id #11 IRQ info */
|
||||||
|
<0 171 4>, /* Tx complete ring id #12 IRQ info */
|
||||||
|
<0 172 4>, /* Tx complete ring id #13 IRQ info */
|
||||||
|
<0 173 4>, /* Tx complete ring id #14 IRQ info */
|
||||||
|
<0 174 4>, /* Tx complete ring id #15 IRQ info */
|
||||||
|
<0 139 4>, /* Rx desc ring id #12 IRQ info */
|
||||||
|
<0 140 4>, /* Rx desc ring id #13 IRQ info */
|
||||||
|
<0 141 4>, /* Rx desc ring id #14 IRQ info */
|
||||||
|
<0 142 4>, /* Rx desc ring id #15 IRQ info */
|
||||||
|
<0 191 4>, /* Misc error IRQ info */
|
||||||
|
<0 160 4>, /* PPEDS Node #1(TxComp ring id #1) TxComplete IRQ info */
|
||||||
|
<0 128 4>, /* PPEDS Node #1(Rx Desc ring id #1) Rx Desc IRQ info */
|
||||||
|
<0 152 4>, /* PPEDS Node #1(RxFill Desc ring id #1) Rx Fill IRQ info */
|
||||||
|
<0 161 4>, /* PPEDS Node #2(TxComp ring id #2) TxComplete IRQ info */
|
||||||
|
<0 129 4>, /* PPEDS Node #2(Rx Desc ring id #2) Rx Desc IRQ info */
|
||||||
|
<0 153 4>, /* PPEDS Node #2(RxFill Desc ring id #2) Rx Fill IRQ info */
|
||||||
|
<0 175 4>, /* MHT port Tx complete ring id #16 IRQ info */
|
||||||
|
<0 176 4>, /* MHT port Tx complete ring id #17 IRQ info */
|
||||||
|
<0 177 4>, /* MHT port Tx complete ring id #18 IRQ info */
|
||||||
|
<0 178 4>, /* MHT port Tx complete ring id #19 IRQ info */
|
||||||
|
<0 179 4>, /* MHT port Tx complete ring id #20 IRQ info */
|
||||||
|
<0 180 4>, /* MHT port Tx complete ring id #21 IRQ info */
|
||||||
|
<0 181 4>, /* MHT port Tx complete ring id #22 IRQ info */
|
||||||
|
<0 182 4>; /* MHT port Tx complete ring id #23 IRQ info */
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led@25 {
|
||||||
|
label = "blue:status";
|
||||||
|
gpios = <&tca6416 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
led@61 {
|
||||||
|
label = "green:phy";
|
||||||
|
gpios = <&tca6416 15 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
led@62 {
|
||||||
|
label = "yellow:phy";
|
||||||
|
gpios = <&tca6416 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pinctrl-0 = <&button_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
button@1 {
|
||||||
|
label = "rst";
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
gpios = <&tlmm 1 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
debounce-interval = <60>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
wsi: wsi {
|
||||||
|
id = <0>;
|
||||||
|
num_chip = <2>;
|
||||||
|
status = "okay";
|
||||||
|
chip_info = <0 1 1>,
|
||||||
|
<1 1 0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi0 {
|
||||||
|
// led-gpio = <&tlmm 36 GPIO_ACTIVE_HIGH>;
|
||||||
|
qcom,rproc = <&q6_wcss_pd1>;
|
||||||
|
qcom,rproc_rpd = <&q6v5_wcss>;
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd1";
|
||||||
|
memory-region = <&q6_region>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <0>;
|
||||||
|
qcom,board_id = <0x16>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qcn9224_pcie1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart0 {
|
||||||
|
pinctrl-0 = <&serial_0_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart1 {
|
||||||
|
pinctrl-0 = <&serial_1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_i2c2 {
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
pinctrl-0 = <&i2c_0_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
tca6416: gpio@20 {
|
||||||
|
compatible = "ti,tca6416";
|
||||||
|
reg = <0x20>;
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_spi0 { //nor flash
|
||||||
|
pinctrl-0 = <&spi_0_data_clk_pins &spi_0_cs_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
flash@0 {
|
||||||
|
compatible = "n25q128a11";
|
||||||
|
//, "jedec,spi-nor";
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_spi1 { /*tpm*/
|
||||||
|
pinctrl-0 = <&spi_1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
cs-select = <0>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
tpm: spi-tpm@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "st,st33htpm-spi";
|
||||||
|
reg = <0>;
|
||||||
|
spi-max-frequency = <20000000>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcm {
|
||||||
|
pinctrl-0 = <&audio_pins_pri>;
|
||||||
|
pinctrl-names = "primary";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc {
|
||||||
|
bus-width = <4>;
|
||||||
|
max-frequency = <192000000>;
|
||||||
|
mmc-ddr-1_8v;
|
||||||
|
mmc-hs200-1_8v;
|
||||||
|
non-removable;
|
||||||
|
pinctrl-0 = <&sdc_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sleep_clk {
|
||||||
|
clock-frequency = <32000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&xo {
|
||||||
|
clock-frequency = <24000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_bam {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_nand {
|
||||||
|
pinctrl-0 = <&qspi_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
nandcs@0 {
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
nand-ecc-strength = <8>;
|
||||||
|
nand-ecc-step-size = <512>;
|
||||||
|
nand-bus-width = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie1_phy_x2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie1 {
|
||||||
|
pinctrl-0 = <&pcie1_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
perst-gpios = <&tlmm 47 GPIO_ACTIVE_LOW>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
pcie1_rp {
|
||||||
|
reg = <0 0 0 0 0>;
|
||||||
|
|
||||||
|
qcom,mhi@1 {
|
||||||
|
reg = <0 0 0 0 0>;
|
||||||
|
boot-args = <0x2 0x4 0x34 0x3 0x0 0x0 /* MX Rail, GPIO52, Drive strength 0x3 */
|
||||||
|
0x4 0x4 0x18 0x3 0x0 0x0 /* RFA1p2 Rail, GPIO24, Drive strength 0x3 */
|
||||||
|
0x0 0x4 0x0 0x0 0x0 0x0>; /* End of arguments */
|
||||||
|
memory-region = <&qcn9224_pcie1>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <1>;
|
||||||
|
qcom,board_id = <0x100f>; //0x1019->0x100f
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/* PINCTRL */
|
||||||
|
|
||||||
|
&tlmm {
|
||||||
|
|
||||||
|
audio_pins_pri: audio_pinmux_pri {
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio29";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio30";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio31";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <4>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_4 {
|
||||||
|
pins = "gpio32";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <4>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c_0_pins: i2c-0-state {
|
||||||
|
pins = "gpio43", "gpio45";
|
||||||
|
function = "blsp2_i2c0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_1_pins: spi-1-pins { /* tpm */
|
||||||
|
pins = "gpio29", "gpio30", "gpio31", "gpio32";
|
||||||
|
function = "blsp1_spi0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc_default_state: sdc-default-state {
|
||||||
|
clk-pins {
|
||||||
|
pins = "gpio13";
|
||||||
|
function = "sdc_clk";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
cmd-pins {
|
||||||
|
pins = "gpio12";
|
||||||
|
function = "sdc_cmd";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
data-pins {
|
||||||
|
pins = "gpio8", "gpio9", "gpio10", "gpio11";
|
||||||
|
function = "sdc_data";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_0_data_clk_pins: spi-0-data-clk-state {
|
||||||
|
pins = "gpio14", "gpio15", "gpio16";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_0_cs_pins: spi-0-cs-state {
|
||||||
|
pins = "gpio17";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_default_state: qspi-default-state {
|
||||||
|
qspi_clock {
|
||||||
|
pins = "gpio13";
|
||||||
|
function = "qspi_clk";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_cs {
|
||||||
|
pins = "gpio12";
|
||||||
|
function = "qspi_cs";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_data {
|
||||||
|
pins = "gpio8", "gpio9", "gpio10", "gpio11";
|
||||||
|
function = "qspi_data";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
serial_1_pins: serial1-pinmux { /*ble*/
|
||||||
|
// pins = "gpio33", "gpio34", "gpio35", "gpio36";
|
||||||
|
pins = "gpio33", "gpio35";
|
||||||
|
function = "blsp1_uart2";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* gpio_leds_default: gpio-leds-default-state {
|
||||||
|
pins = "gpio36";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};*/
|
||||||
|
|
||||||
|
button_pins: button-state {
|
||||||
|
pins = "gpio1";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
pwm_pins: pwm-state {
|
||||||
|
pins = "gpio46";
|
||||||
|
function = "pwm0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pcie1_default_state: pcie1-default-state {
|
||||||
|
pins = "gpio47";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
output-low;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&license_manager {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb3 {
|
||||||
|
qcom,multiplexed-phy;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pwm {
|
||||||
|
pinctrl-0 = <&pwm_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hs_m31phy_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ssuniphy_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
//sercomm add
|
||||||
|
&wifi3 {
|
||||||
|
/* QCN9224 5G+6G */
|
||||||
|
hremote_node = <&qcn9224_pcie1>;
|
||||||
|
qcom,board_id = <0x100f>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
601
feeds/qca-wifi-7/ipq53xx/dts/ipq5332-sercomm-ap72tip.dts
Normal file
601
feeds/qca-wifi-7/ipq53xx/dts/ipq5332-sercomm-ap72tip.dts
Normal file
@@ -0,0 +1,601 @@
|
|||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
||||||
|
/*
|
||||||
|
* IPQ5332 RDP468 board device tree source
|
||||||
|
*
|
||||||
|
* Copyright (c) 2020-2021 The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <dt-bindings/gpio/gpio.h>
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
#include <dt-bindings/leds/common.h>
|
||||||
|
#include "ipq5332.dtsi"
|
||||||
|
#include "ipq5332-default-memory.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Sercomm WiFi-7";
|
||||||
|
compatible = "sercomm,ap72tip", "qcom,ipq5332-ap-mi01.6", "qcom,ipq5332";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &blsp1_uart0; /*console*/
|
||||||
|
serial1 = &blsp1_uart1; /*ble*/
|
||||||
|
ethernet0 = "/soc/dp1";
|
||||||
|
ethernet1 = "/soc/dp2";
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0";
|
||||||
|
};
|
||||||
|
|
||||||
|
soc@0 {
|
||||||
|
|
||||||
|
#if 1 //AQR114C
|
||||||
|
mdio:mdio@90000 {
|
||||||
|
pinctrl-0 = <&mdio1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
phy-reset-gpio = <&tlmm 0 GPIO_ACTIVE_LOW>;
|
||||||
|
phyaddr_fixup = <0xC90F018>;
|
||||||
|
uniphyaddr_fixup = <0xC90F014>;
|
||||||
|
mdio_clk_fixup; /* MDIO clock sequence fix up flag */
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
phy0: ethernet-phy@0 {
|
||||||
|
reg = <24>;
|
||||||
|
};
|
||||||
|
|
||||||
|
phy1: ethernet-phy@1 { //aqr114c
|
||||||
|
reg = <0>;
|
||||||
|
compatible ="ethernet-phy-ieee802.3-c45";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-instance {
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x0>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x6>; /* wan port bitmap */
|
||||||
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
||||||
|
switch_mac_mode1 = <0xf>; /* mac mode for uniphy instance1*/
|
||||||
|
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||||
|
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <1>;
|
||||||
|
phy_address = <24>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
};
|
||||||
|
port@1 { //aqr114c
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <0>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
ethernet-phy-ieee802.3-c45;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x3a500000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
qcom,phy-mdio-addr = <24>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x3a504000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,phy-mdio-addr = <0>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
#else //SFP
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x3a500000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
qcom,phy-mdio-addr = <24>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x3a504000 0x4000>;
|
||||||
|
qcom,mactype = <1>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
mdio-bus = <&mdio>;
|
||||||
|
qcom,phy-mdio-addr = <30>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio:mdio@90000 {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-0 = <&mdio1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
/*gpio0 for napa*/
|
||||||
|
phy-reset-gpio = <&tlmm 0 0>;
|
||||||
|
|
||||||
|
phy0: ethernet-phy@0 {
|
||||||
|
reg = <24>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-instance {
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x0>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x6>; /* wan port bitmap */
|
||||||
|
switch_mac_mode = <0xc>; /* mac mode for uniphy instance0*/
|
||||||
|
switch_mac_mode1 = <0xe>; /* mac mode for uniphy instance1 sfp PORT_WRAPPER_10GBASE_R*/
|
||||||
|
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <1>;
|
||||||
|
phy_address = <24>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <2>;
|
||||||
|
phy_address = <30>;
|
||||||
|
media-type = "sfp";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* EDMA host driver configuration for the board */
|
||||||
|
edma@3ab00000 {
|
||||||
|
qcom,txdesc-ring-start = <4>; /* Tx desc ring start ID */
|
||||||
|
qcom,txdesc-rings = <12>; /* Total number of Tx desc rings to be provisioned */
|
||||||
|
qcom,mht-txdesc-rings = <8>; /* Extra Tx desc rings to be provisioned for MHT SW ports */
|
||||||
|
qcom,txcmpl-ring-start = <4>; /* Tx complete ring start ID */
|
||||||
|
qcom,txcmpl-rings = <12>; /* Total number of Tx complete rings to be provisioned */
|
||||||
|
qcom,mht-txcmpl-rings = <8>; /* Extra Tx complete rings to be provisioned for mht sw ports. */
|
||||||
|
qcom,rxfill-ring-start = <4>; /* Rx fill ring start ID */
|
||||||
|
qcom,rxfill-rings = <4>; /* Total number of Rx fill rings to be provisioned */
|
||||||
|
qcom,rxdesc-ring-start = <12>; /* Rx desc ring start ID */
|
||||||
|
qcom,rxdesc-rings = <4>; /* Total number of Rx desc rings to be provisioned */
|
||||||
|
qcom,rx-page-mode = <0>; /* Rx fill ring page mode */
|
||||||
|
qcom,tx-map-priority-level = <1>; /* Tx priority level per port */
|
||||||
|
qcom,rx-map-priority-level = <1>; /* Rx priority level per core */
|
||||||
|
qcom,ppeds-num = <2>; /* Number of PPEDS nodes */
|
||||||
|
/* PPE-DS node format: <Rx-fill Tx-cmpl Rx Tx Queue-base Queue-count> */
|
||||||
|
qcom,ppeds-map = <1 1 1 1 32 8>, /* PPEDS Node#0 ring and queue map */
|
||||||
|
<2 2 2 2 40 8>; /* PPEDS Node#1 ring and queue map */
|
||||||
|
qcom,txdesc-map = <8 9 10 11>, /* Port0 per-core Tx ring map */
|
||||||
|
<12 13 14 15>, /* MHT-Port1 per-core Tx ring map */
|
||||||
|
<4 5 6 7>, /* MHT-Port2 per-core Tx ring map/packets from vp*/
|
||||||
|
<16 17 18 19>, /* MHT-Port3 per-core Tx ring map */
|
||||||
|
<20 21 22 23>; /* MHT-Port4 per-core Tx ring map */
|
||||||
|
qcom,txdesc-fc-grp-map = <1 2 3 4 5>; /* Per GMAC flow control group map */
|
||||||
|
qcom,rxfill-map = <4 5 6 7>; /* Per-core Rx fill ring map */
|
||||||
|
qcom,rxdesc-map = <12 13 14 15>; /* Per-core Rx desc ring map */
|
||||||
|
qcom,rx-queue-start = <0>; /* Rx queue start */
|
||||||
|
qcom,rx-ring-queue-map = <0 8 16 24>, /* Priority 0 queues per-core Rx ring map */
|
||||||
|
<1 9 17 25>, /* Priority 1 queues per-core Rx ring map */
|
||||||
|
<2 10 18 26>, /* Priority 2 queues per-core Rx ring map */
|
||||||
|
<3 11 19 27>, /* Priority 3 queues per-core Rx ring map */
|
||||||
|
<4 12 20 28>, /* Priority 4 queues per-core Rx ring map */
|
||||||
|
<5 13 21 29>, /* Priority 5 queues per-core Rx ring map */
|
||||||
|
<6 14 22 30>, /* Priority 6 queues per-core Rx ring map */
|
||||||
|
<7 15 23 31>; /* Priority 7 queues per-core Rx ring map */
|
||||||
|
interrupts = <0 163 4>, /* Tx complete ring id #4 IRQ info */
|
||||||
|
<0 164 4>, /* Tx complete ring id #5 IRQ info */
|
||||||
|
<0 165 4>, /* Tx complete ring id #6 IRQ info */
|
||||||
|
<0 166 4>, /* Tx complete ring id #7 IRQ info */
|
||||||
|
<0 167 4>, /* Tx complete ring id #8 IRQ info */
|
||||||
|
<0 168 4>, /* Tx complete ring id #9 IRQ info */
|
||||||
|
<0 169 4>, /* Tx complete ring id #10 IRQ info */
|
||||||
|
<0 170 4>, /* Tx complete ring id #11 IRQ info */
|
||||||
|
<0 171 4>, /* Tx complete ring id #12 IRQ info */
|
||||||
|
<0 172 4>, /* Tx complete ring id #13 IRQ info */
|
||||||
|
<0 173 4>, /* Tx complete ring id #14 IRQ info */
|
||||||
|
<0 174 4>, /* Tx complete ring id #15 IRQ info */
|
||||||
|
<0 139 4>, /* Rx desc ring id #12 IRQ info */
|
||||||
|
<0 140 4>, /* Rx desc ring id #13 IRQ info */
|
||||||
|
<0 141 4>, /* Rx desc ring id #14 IRQ info */
|
||||||
|
<0 142 4>, /* Rx desc ring id #15 IRQ info */
|
||||||
|
<0 191 4>, /* Misc error IRQ info */
|
||||||
|
<0 160 4>, /* PPEDS Node #1(TxComp ring id #1) TxComplete IRQ info */
|
||||||
|
<0 128 4>, /* PPEDS Node #1(Rx Desc ring id #1) Rx Desc IRQ info */
|
||||||
|
<0 152 4>, /* PPEDS Node #1(RxFill Desc ring id #1) Rx Fill IRQ info */
|
||||||
|
<0 161 4>, /* PPEDS Node #2(TxComp ring id #2) TxComplete IRQ info */
|
||||||
|
<0 129 4>, /* PPEDS Node #2(Rx Desc ring id #2) Rx Desc IRQ info */
|
||||||
|
<0 153 4>, /* PPEDS Node #2(RxFill Desc ring id #2) Rx Fill IRQ info */
|
||||||
|
<0 175 4>, /* MHT port Tx complete ring id #16 IRQ info */
|
||||||
|
<0 176 4>, /* MHT port Tx complete ring id #17 IRQ info */
|
||||||
|
<0 177 4>, /* MHT port Tx complete ring id #18 IRQ info */
|
||||||
|
<0 178 4>, /* MHT port Tx complete ring id #19 IRQ info */
|
||||||
|
<0 179 4>, /* MHT port Tx complete ring id #20 IRQ info */
|
||||||
|
<0 180 4>, /* MHT port Tx complete ring id #21 IRQ info */
|
||||||
|
<0 181 4>, /* MHT port Tx complete ring id #22 IRQ info */
|
||||||
|
<0 182 4>; /* MHT port Tx complete ring id #23 IRQ info */
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
|
||||||
|
led@25 {
|
||||||
|
label = "blue:status";
|
||||||
|
gpios = <&tca6416 9 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
led@24 {
|
||||||
|
label = "red:status";
|
||||||
|
gpios = <&tca6416 10 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
led_power: led@16 {
|
||||||
|
label = "green:status";
|
||||||
|
gpios = <&tca6416 11 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
led@61 {
|
||||||
|
label = "green:phy";
|
||||||
|
gpios = <&tca6416 15 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
led@62 {
|
||||||
|
label = "yellow:phy";
|
||||||
|
gpios = <&tca6416 14 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
/*
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pinctrl-0 = <&button_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
button@1 {
|
||||||
|
label = "rst";
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
gpios = <&tlmm 25 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
debounce-interval = <60>;
|
||||||
|
};
|
||||||
|
};*/
|
||||||
|
|
||||||
|
wsi: wsi {
|
||||||
|
id = <0>;
|
||||||
|
num_chip = <2>;
|
||||||
|
status = "okay";
|
||||||
|
chip_info = <0 1 1>,
|
||||||
|
<1 1 0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi0 {
|
||||||
|
// led-gpio = <&tlmm 36 GPIO_ACTIVE_HIGH>;
|
||||||
|
qcom,rproc = <&q6_wcss_pd1>;
|
||||||
|
qcom,rproc_rpd = <&q6v5_wcss>;
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd1";
|
||||||
|
memory-region = <&q6_region>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <0>;
|
||||||
|
qcom,board_id = <0x16>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qcn9224_pcie1 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart0 {
|
||||||
|
pinctrl-0 = <&serial_0_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart1 {
|
||||||
|
pinctrl-0 = <&serial_1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_i2c2 {
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
pinctrl-0 = <&i2c_0_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
tca6416: gpio@20 {
|
||||||
|
compatible = "ti,tca6416";
|
||||||
|
reg = <0x20>;
|
||||||
|
gpio-controller;
|
||||||
|
#gpio-cells = <2>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_spi0 { //nor flash
|
||||||
|
pinctrl-0 = <&spi_0_data_clk_pins &spi_0_cs_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
flash@0 {
|
||||||
|
compatible = "n25q128a11";
|
||||||
|
//, "jedec,spi-nor";
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_spi1 { /*tpm*/
|
||||||
|
pinctrl-0 = <&spi_1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
cs-select = <0>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
tpm: spi-tpm@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "st,st33htpm-spi";
|
||||||
|
reg = <0>;
|
||||||
|
spi-max-frequency = <20000000>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcm {
|
||||||
|
pinctrl-0 = <&audio_pins_pri>;
|
||||||
|
pinctrl-names = "primary";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc {
|
||||||
|
bus-width = <4>;
|
||||||
|
max-frequency = <192000000>;
|
||||||
|
mmc-ddr-1_8v;
|
||||||
|
mmc-hs200-1_8v;
|
||||||
|
non-removable;
|
||||||
|
pinctrl-0 = <&sdc_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sleep_clk {
|
||||||
|
clock-frequency = <32000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&xo {
|
||||||
|
clock-frequency = <24000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_bam {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_nand {
|
||||||
|
pinctrl-0 = <&qspi_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
nandcs@0 {
|
||||||
|
reg = <0>;
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
|
||||||
|
nand-ecc-strength = <8>;
|
||||||
|
nand-ecc-step-size = <512>;
|
||||||
|
nand-bus-width = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie1_phy_x2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie1 {
|
||||||
|
pinctrl-0 = <&pcie1_default_state>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
perst-gpios = <&tlmm 47 GPIO_ACTIVE_LOW>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
pcie1_rp {
|
||||||
|
reg = <0 0 0 0 0>;
|
||||||
|
|
||||||
|
qcom,mhi@1 {
|
||||||
|
reg = <0 0 0 0 0>;
|
||||||
|
boot-args = <0x2 0x4 0x34 0x3 0x0 0x0 /* MX Rail, GPIO52, Drive strength 0x3 */
|
||||||
|
0x4 0x4 0x18 0x3 0x0 0x0 /* RFA1p2 Rail, GPIO24, Drive strength 0x3 */
|
||||||
|
0x0 0x4 0x0 0x0 0x0 0x0>; /* End of arguments */
|
||||||
|
memory-region = <&qcn9224_pcie1>;
|
||||||
|
qcom,wsi = <&wsi>;
|
||||||
|
qcom,wsi_index = <1>;
|
||||||
|
qcom,board_id = <0x100f>; //0x1019->0x100f
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/* PINCTRL */
|
||||||
|
|
||||||
|
&tlmm {
|
||||||
|
|
||||||
|
audio_pins_pri: audio_pinmux_pri {
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio29";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio30";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio31";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <4>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_4 {
|
||||||
|
pins = "gpio32";
|
||||||
|
function = "audio_pri";
|
||||||
|
drive-strength = <4>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c_0_pins: i2c-0-state {
|
||||||
|
pins = "gpio43", "gpio45";
|
||||||
|
function = "blsp2_i2c0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_1_pins: spi-1-pins { /* tpm */
|
||||||
|
pins = "gpio29", "gpio30", "gpio31", "gpio32";
|
||||||
|
function = "blsp1_spi0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
sdc_default_state: sdc-default-state {
|
||||||
|
clk-pins {
|
||||||
|
pins = "gpio13";
|
||||||
|
function = "sdc_clk";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
cmd-pins {
|
||||||
|
pins = "gpio12";
|
||||||
|
function = "sdc_cmd";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
data-pins {
|
||||||
|
pins = "gpio8", "gpio9", "gpio10", "gpio11";
|
||||||
|
function = "sdc_data";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_0_data_clk_pins: spi-0-data-clk-state {
|
||||||
|
pins = "gpio14", "gpio15", "gpio16";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
spi_0_cs_pins: spi-0-cs-state {
|
||||||
|
pins = "gpio17";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <2>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_default_state: qspi-default-state {
|
||||||
|
qspi_clock {
|
||||||
|
pins = "gpio13";
|
||||||
|
function = "qspi_clk";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_cs {
|
||||||
|
pins = "gpio12";
|
||||||
|
function = "qspi_cs";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_data {
|
||||||
|
pins = "gpio8", "gpio9", "gpio10", "gpio11";
|
||||||
|
function = "qspi_data";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
serial_1_pins: serial1-pinmux { /*ble*/
|
||||||
|
// pins = "gpio33", "gpio34", "gpio35", "gpio36";
|
||||||
|
pins = "gpio33", "gpio35";
|
||||||
|
function = "blsp1_uart2";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* gpio_leds_default: gpio-leds-default-state {
|
||||||
|
pins = "gpio36";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};*/
|
||||||
|
/*
|
||||||
|
button_pins: button-state {
|
||||||
|
pins = "gpio25";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};*/
|
||||||
|
|
||||||
|
pwm_pins: pwm-state {
|
||||||
|
pins = "gpio46";
|
||||||
|
function = "pwm0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
|
||||||
|
pcie1_default_state: pcie1-default-state {
|
||||||
|
pins = "gpio47";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
output-low;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&license_manager {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb3 {
|
||||||
|
qcom,multiplexed-phy;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pwm {
|
||||||
|
pinctrl-0 = <&pwm_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&hs_m31phy_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ssuniphy_0 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
//sercomm add
|
||||||
|
&wifi3 {
|
||||||
|
/* QCN9224 5G+6G */
|
||||||
|
hremote_node = <&qcn9224_pcie1>;
|
||||||
|
qcom,board_id = <0x100f>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
@@ -242,6 +242,10 @@
|
|||||||
serial1 = &blsp1_uart1;
|
serial1 = &blsp1_uart1;
|
||||||
ethernet0 = "/soc/dp1";
|
ethernet0 = "/soc/dp1";
|
||||||
ethernet1 = "/soc/dp2";
|
ethernet1 = "/soc/dp2";
|
||||||
|
led-boot = &led_power;
|
||||||
|
led-failsafe = &led_power;
|
||||||
|
led-running = &led_power;
|
||||||
|
led-upgrade = &led_power;
|
||||||
};
|
};
|
||||||
|
|
||||||
chosen {
|
chosen {
|
||||||
@@ -324,19 +328,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
leds {
|
|
||||||
compatible = "gpio-leds";
|
|
||||||
pinctrl-0 = <&gpio_leds_default>;
|
|
||||||
pinctrl-names = "default";
|
|
||||||
|
|
||||||
led-0 {
|
|
||||||
color = <LED_COLOR_ID_GREEN>;
|
|
||||||
function = LED_FUNCTION_WLAN;
|
|
||||||
gpios = <&tlmm 36 GPIO_ACTIVE_HIGH>;
|
|
||||||
linux,default-trigger = "phy0tx";
|
|
||||||
default-state = "off";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gpio_keys {
|
gpio_keys {
|
||||||
compatible = "gpio-keys";
|
compatible = "gpio-keys";
|
||||||
@@ -345,14 +336,39 @@
|
|||||||
status = "okay";
|
status = "okay";
|
||||||
|
|
||||||
button@1 {
|
button@1 {
|
||||||
label = "wps";
|
label = "reset";
|
||||||
linux,code = <KEY_WPS_BUTTON>;
|
linux,code = <KEY_RESTART>;
|
||||||
gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
|
gpios = <&tlmm 24 GPIO_ACTIVE_LOW>;
|
||||||
linux,input-type = <1>;
|
linux,input-type = <1>;
|
||||||
debounce-interval = <60>;
|
debounce-interval = <60>;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pwmleds {
|
||||||
|
compatible = "pwm-leds";
|
||||||
|
|
||||||
|
red {
|
||||||
|
label = "pwm:red";
|
||||||
|
pwms = <&pwm 2 1250000>;
|
||||||
|
max-brightness = <1>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
|
||||||
|
green {
|
||||||
|
label = "pwm:green";
|
||||||
|
pwms = <&pwm 3 1250000>;
|
||||||
|
max-brightness = <1>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
|
||||||
|
led_power: blue {
|
||||||
|
label = "pwm:blue";
|
||||||
|
pwms = <&pwm 1 1250000>;
|
||||||
|
max-brightness = <1>;
|
||||||
|
linux,default-trigger = "none";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
ess-instance {
|
ess-instance {
|
||||||
num_devices = <0x2>;
|
num_devices = <0x2>;
|
||||||
|
|
||||||
@@ -411,34 +427,6 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
led_source@2 {
|
|
||||||
source = <2>;
|
|
||||||
mode = "normal";
|
|
||||||
speed = "all";
|
|
||||||
blink_en = "enable";
|
|
||||||
active = "high";
|
|
||||||
};
|
|
||||||
led_source@5 {
|
|
||||||
source = <5>;
|
|
||||||
mode = "normal";
|
|
||||||
speed = "all";
|
|
||||||
blink_en = "enable";
|
|
||||||
active = "high";
|
|
||||||
};
|
|
||||||
led_source@8 {
|
|
||||||
source = <8>;
|
|
||||||
mode = "normal";
|
|
||||||
speed = "all";
|
|
||||||
blink_en = "enable";
|
|
||||||
active = "high";
|
|
||||||
};
|
|
||||||
led_source@11 {
|
|
||||||
source = <11>;
|
|
||||||
mode = "normal";
|
|
||||||
speed = "all";
|
|
||||||
blink_en = "enable";
|
|
||||||
active = "high";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -549,7 +537,7 @@
|
|||||||
memory-region = <&q6_mem_regions>;
|
memory-region = <&q6_mem_regions>;
|
||||||
|
|
||||||
q6_wcss_pd1: remoteproc_pd1 {
|
q6_wcss_pd1: remoteproc_pd1 {
|
||||||
status = "ok";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
q6_wcss_pd2: remoteproc_pd2 {
|
q6_wcss_pd2: remoteproc_pd2 {
|
||||||
@@ -570,7 +558,7 @@
|
|||||||
qcom,smem-state-names = "shutdown",
|
qcom,smem-state-names = "shutdown",
|
||||||
"stop",
|
"stop",
|
||||||
"spawn";
|
"spawn";
|
||||||
status = "ok";
|
status = "okay";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -581,13 +569,13 @@
|
|||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
&blsp1_uart1 {
|
&blsp1_uart1 {
|
||||||
pinctrl-0 = <&serial_1_pins>;
|
pinctrl-0 = <&serial_1_pins>;
|
||||||
pinctrl-names = "default";
|
pinctrl-names = "default";
|
||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
&blsp1_i2c1 {
|
&blsp1_i2c1 {
|
||||||
clock-frequency = <400000>;
|
clock-frequency = <400000>;
|
||||||
pinctrl-0 = <&i2c_1_pins>;
|
pinctrl-0 = <&i2c_1_pins>;
|
||||||
@@ -664,29 +652,50 @@
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pwm_pins: pwm_pinmux {
|
||||||
|
/* PWM LED GREEN */
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio43";
|
||||||
|
function = "pwm0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
/* PWM LED BLUE */
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio45";
|
||||||
|
function = "pwm0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
/* PWM LED RED */
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio44";
|
||||||
|
function = "pwm0";
|
||||||
|
drive-strength = <8>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
/*
|
||||||
serial_1_pins: serial1-pinmux {
|
serial_1_pins: serial1-pinmux {
|
||||||
pins = "gpio33", "gpio34", "gpio35", "gpio36";
|
pins = "gpio33", "gpio34", "gpio35", "gpio36";
|
||||||
function = "blsp1_uart2";
|
function = "blsp1_uart2";
|
||||||
drive-strength = <8>;
|
drive-strength = <8>;
|
||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
i2c_1_pins: i2c-1-state {
|
i2c_1_pins: i2c-1-state {
|
||||||
pins = "gpio29", "gpio30";
|
pins = "gpio29", "gpio30";
|
||||||
function = "blsp1_i2c0";
|
function = "blsp1_i2c0";
|
||||||
drive-strength = <8>;
|
drive-strength = <8>;
|
||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
gpio_leds_default: gpio-leds-default-state {
|
gpio_leds_default: gpio-leds-default-state {
|
||||||
pins = "gpio36";
|
pins = "gpio36";
|
||||||
function = "gpio";
|
function = "gpio";
|
||||||
drive-strength = <8>;
|
drive-strength = <8>;
|
||||||
bias-pull-down;
|
bias-pull-down;
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
button_pins: button-state {
|
button_pins: button-state {
|
||||||
pins = "gpio35";
|
pins = "gpio24";
|
||||||
function = "gpio";
|
function = "gpio";
|
||||||
drive-strength = <8>;
|
drive-strength = <8>;
|
||||||
bias-pull-up;
|
bias-pull-up;
|
||||||
@@ -725,6 +734,13 @@
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
&pwm {
|
||||||
|
pinctrl-0 = <&pwm_pins>;
|
||||||
|
used-pwm-indices = <0>, <1>, <1>, <1>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
&hs_m31phy_0 {
|
&hs_m31phy_0 {
|
||||||
status = "okay";
|
status = "okay";
|
||||||
};
|
};
|
||||||
@@ -747,7 +763,7 @@
|
|||||||
memory-region = <&q6_ipq5332_data>;
|
memory-region = <&q6_ipq5332_data>;
|
||||||
qcom,wsi = <&wsi>;
|
qcom,wsi = <&wsi>;
|
||||||
qcom,wsi_index = <0>;
|
qcom,wsi_index = <0>;
|
||||||
status = "ok";
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
|
||||||
&wifi1 {
|
&wifi1 {
|
||||||
@@ -768,7 +784,7 @@
|
|||||||
memory-region = <&q6_qcn6432_data_1>;
|
memory-region = <&q6_qcn6432_data_1>;
|
||||||
qcom,wsi = <&wsi>;
|
qcom,wsi = <&wsi>;
|
||||||
qcom,wsi_index = <1>;
|
qcom,wsi_index = <1>;
|
||||||
status = "ok";
|
status = "okay";
|
||||||
interrupts = <GIC_SPI 33 IRQ_TYPE_EDGE_RISING>;
|
interrupts = <GIC_SPI 33 IRQ_TYPE_EDGE_RISING>;
|
||||||
interrupt-names = "umac_reset";
|
interrupt-names = "umac_reset";
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -736,6 +736,36 @@
|
|||||||
status = "disabled";
|
status = "disabled";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
blsp1_spi1: spi@78b6000 {
|
||||||
|
compatible = "qcom,spi-qup-v2.2.1";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
reg = <0x078b6000 0x600>;
|
||||||
|
interrupts = <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
clocks = <&gcc GCC_BLSP1_QUP2_SPI_APPS_CLK>,
|
||||||
|
<&gcc GCC_BLSP1_AHB_CLK>;
|
||||||
|
clock-names = "core", "iface";
|
||||||
|
dmas = <&blsp_dma 6>, <&blsp_dma 7>;
|
||||||
|
dma-names = "tx", "rx";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
|
blsp1_i2c2: i2c@78b7000 {
|
||||||
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
reg = <0x78b7000 0x600>;
|
||||||
|
interrupts = <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
clocks = <&gcc GCC_BLSP1_AHB_CLK>,
|
||||||
|
<&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>;
|
||||||
|
clock-names = "iface", "core";
|
||||||
|
clock-frequency = <400000>;
|
||||||
|
dmas = <&blsp_dma 8>, <&blsp_dma 9>;
|
||||||
|
dma-names = "rx", "tx";
|
||||||
|
status = "disabled";
|
||||||
|
};
|
||||||
|
|
||||||
blsp1_i2c1: i2c@78b6000 {
|
blsp1_i2c1: i2c@78b6000 {
|
||||||
compatible = "qcom,i2c-qup-v2.2.1";
|
compatible = "qcom,i2c-qup-v2.2.1";
|
||||||
reg = <0x078b6000 0x600>;
|
reg = <0x078b6000 0x600>;
|
||||||
|
|||||||
13
feeds/qca-wifi-7/ipq53xx/files-6.1/drivers/net/phy/rtk/rtk_phy.c
Executable file → Normal file
13
feeds/qca-wifi-7/ipq53xx/files-6.1/drivers/net/phy/rtk/rtk_phy.c
Executable file → Normal file
@@ -48,6 +48,9 @@ static int rtl826xb_get_features(struct phy_device *phydev)
|
|||||||
linkmode_clear_bit(ETHTOOL_LINK_MODE_10baseT_Full_BIT,
|
linkmode_clear_bit(ETHTOOL_LINK_MODE_10baseT_Full_BIT,
|
||||||
phydev->supported);
|
phydev->supported);
|
||||||
|
|
||||||
|
linkmode_clear_bit(ETHTOOL_LINK_MODE_10000baseT_Full_BIT,
|
||||||
|
phydev->supported);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,7 +83,6 @@ static int rtkphy_config_init(struct phy_device *phydev)
|
|||||||
case REALTEK_PHY_ID_RTL8261N:
|
case REALTEK_PHY_ID_RTL8261N:
|
||||||
case REALTEK_PHY_ID_RTL8264B:
|
case REALTEK_PHY_ID_RTL8264B:
|
||||||
phydev_info(phydev, "%s:%u [RTL8261N/RTL826XB] phy_id: 0x%X PHYAD:%d\n", __FUNCTION__, __LINE__, phydev->drv->phy_id, phydev->mdio.addr);
|
phydev_info(phydev, "%s:%u [RTL8261N/RTL826XB] phy_id: 0x%X PHYAD:%d\n", __FUNCTION__, __LINE__, phydev->drv->phy_id, phydev->mdio.addr);
|
||||||
phy_modify_mmd_changed(phydev, 7, 0x20, BIT(12), 0);
|
|
||||||
|
|
||||||
#if 1 /* toggle reset */
|
#if 1 /* toggle reset */
|
||||||
phy_modify_mmd_changed(phydev, 30, 0x145, BIT(0) , 1);
|
phy_modify_mmd_changed(phydev, 30, 0x145, BIT(0) , 1);
|
||||||
@@ -213,7 +215,6 @@ static int rtkphy_c45_aneg_done(struct phy_device *phydev)
|
|||||||
static int rtkphy_c45_read_status(struct phy_device *phydev)
|
static int rtkphy_c45_read_status(struct phy_device *phydev)
|
||||||
{
|
{
|
||||||
int ret = 0, status = 0;
|
int ret = 0, status = 0;
|
||||||
uint16_t local;
|
|
||||||
phydev->speed = SPEED_UNKNOWN;
|
phydev->speed = SPEED_UNKNOWN;
|
||||||
phydev->duplex = DUPLEX_UNKNOWN;
|
phydev->duplex = DUPLEX_UNKNOWN;
|
||||||
phydev->pause = 0;
|
phydev->pause = 0;
|
||||||
@@ -232,9 +233,6 @@ static int rtkphy_c45_read_status(struct phy_device *phydev)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
phy_write_mmd(phydev, 7, 0x20, 0x181);
|
|
||||||
local = phy_read_mmd(phydev, 7, 0x20);
|
|
||||||
|
|
||||||
status = phy_read_mmd(phydev, 31, 0xA414);
|
status = phy_read_mmd(phydev, 31, 0xA414);
|
||||||
if (status < 0)
|
if (status < 0)
|
||||||
return status;
|
return status;
|
||||||
@@ -242,11 +240,6 @@ static int rtkphy_c45_read_status(struct phy_device *phydev)
|
|||||||
phydev->lp_advertising, status & BIT(11));
|
phydev->lp_advertising, status & BIT(11));
|
||||||
|
|
||||||
phy_resolve_aneg_linkmode(phydev);
|
phy_resolve_aneg_linkmode(phydev);
|
||||||
if((phydev->speed == 10000) && (local == 0x181))
|
|
||||||
{
|
|
||||||
phydev->speed = 5000;
|
|
||||||
phydev->duplex = DUPLEX_FULL;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2288,7 +2288,7 @@ CONFIG_GPIOLIB_FASTPATH_LIMIT=512
|
|||||||
# CONFIG_GPIO_ML_IOH is not set
|
# CONFIG_GPIO_ML_IOH is not set
|
||||||
# CONFIG_GPIO_MOCKUP is not set
|
# CONFIG_GPIO_MOCKUP is not set
|
||||||
# CONFIG_GPIO_MPC8XXX is not set
|
# CONFIG_GPIO_MPC8XXX is not set
|
||||||
# CONFIG_GPIO_PCA953X is not set
|
CONFIG_GPIO_PCA953X=y
|
||||||
# CONFIG_GPIO_PCA953X_IRQ is not set
|
# CONFIG_GPIO_PCA953X_IRQ is not set
|
||||||
# CONFIG_GPIO_PCA9570 is not set
|
# CONFIG_GPIO_PCA9570 is not set
|
||||||
# CONFIG_GPIO_PCF857X is not set
|
# CONFIG_GPIO_PCF857X is not set
|
||||||
|
|||||||
@@ -14,16 +14,30 @@ endef
|
|||||||
TARGET_DEVICES += cig_wf189
|
TARGET_DEVICES += cig_wf189
|
||||||
|
|
||||||
define Device/sercomm_ap72tip
|
define Device/sercomm_ap72tip
|
||||||
DEVICE_TITLE := Sercomm AP72 TIP
|
DEVICE_TITLE := Sercomm AP72TIP
|
||||||
DEVICE_DTS := ipq5332-sercomm-ap72tip
|
DEVICE_DTS := ipq5332-sercomm-ap72tip
|
||||||
DEVICE_DTS_CONFIG := config@mi01.2-qcn9160-c1
|
DEVICE_DTS_DIR := ../dts
|
||||||
|
DEVICE_DTS_CONFIG := config@mi01.6
|
||||||
IMAGES := sysupgrade.tar nand-factory.bin nand-factory.ubi
|
IMAGES := sysupgrade.tar nand-factory.bin nand-factory.ubi
|
||||||
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
||||||
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
||||||
IMAGE/nand-factory.ubi := append-ubi
|
IMAGE/nand-factory.ubi := append-ubi
|
||||||
DEVICE_PACKAGES := ath12k-wifi-sercomm-ap72tip ath12k-firmware-qcn92xx ath12k-firmware-ipq5332
|
DEVICE_PACKAGES := ath12k-wifi-sercomm-ap72tip ath12k-firmware-qcn92xx ath12k-firmware-ipq5332
|
||||||
endef
|
endef
|
||||||
#TARGET_DEVICES += sercomm_ap72tip
|
TARGET_DEVICES += sercomm_ap72tip
|
||||||
|
|
||||||
|
define Device/sercomm_ap72tip-v4
|
||||||
|
DEVICE_TITLE := Sercomm AP72TIP-v4
|
||||||
|
DEVICE_DTS := ipq5332-sercomm-ap72tip-v4
|
||||||
|
DEVICE_DTS_DIR := ../dts
|
||||||
|
DEVICE_DTS_CONFIG := config@mi01.6
|
||||||
|
IMAGES := sysupgrade.tar nand-factory.bin nand-factory.ubi
|
||||||
|
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
||||||
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
||||||
|
IMAGE/nand-factory.ubi := append-ubi
|
||||||
|
DEVICE_PACKAGES := ath12k-wifi-sercomm-ap72tip-v4 ath12k-firmware-qcn92xx ath12k-firmware-ipq5332
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += sercomm_ap72tip-v4
|
||||||
|
|
||||||
define Device/edgecore_eap105
|
define Device/edgecore_eap105
|
||||||
DEVICE_TITLE := Edgecore EAP105
|
DEVICE_TITLE := Edgecore EAP105
|
||||||
@@ -61,7 +75,7 @@ define Device/sonicfi_rap750w_311a
|
|||||||
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
||||||
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
||||||
IMAGE/nand-factory.ubi := append-ubi
|
IMAGE/nand-factory.ubi := append-ubi
|
||||||
DEVICE_PACKAGES := ath12k-wifi-sonicfi-rap750w-311a ath12k-firmware-ipq5332-peb
|
DEVICE_PACKAGES := ath12k-wifi-sonicfi-rap750w-311a ath12k-firmware-ipq5332-peb -ath12k-firmware-qcn92xx
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += sonicfi_rap750w_311a
|
TARGET_DEVICES += sonicfi_rap750w_311a
|
||||||
|
|
||||||
@@ -77,3 +91,17 @@ define Device/cig_wf189w
|
|||||||
DEVICE_PACKAGES := ath12k-wifi-cig-wf189w ath12k-firmware-ipq5332-peb-peb
|
DEVICE_PACKAGES := ath12k-wifi-cig-wf189w ath12k-firmware-ipq5332-peb-peb
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += cig_wf189w
|
TARGET_DEVICES += cig_wf189w
|
||||||
|
|
||||||
|
|
||||||
|
define Device/cig_wf189h
|
||||||
|
DEVICE_TITLE := CIG WF189H
|
||||||
|
DEVICE_DTS := ipq5332-cig-wf189h
|
||||||
|
DEVICE_DTS_DIR := ../dts
|
||||||
|
DEVICE_DTS_CONFIG := config@mi04.1
|
||||||
|
IMAGES := sysupgrade.tar nand-factory.bin nand-factory.ubi
|
||||||
|
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
||||||
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
||||||
|
IMAGE/nand-factory.ubi := append-ubi
|
||||||
|
DEVICE_PACKAGES := ath12k-wifi-cig-wf189h ath12k-firmware-ipq5332-peb-peb
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += cig_wf189h
|
||||||
|
|||||||
@@ -0,0 +1,262 @@
|
|||||||
|
From 9181fe30babf33002126dd4367fb314077827609 Mon Sep 17 00:00:00 2001
|
||||||
|
From: huangyunxiang <huangyunxiang@cigtech.com>
|
||||||
|
Date: Mon, 28 Apr 2025 09:51:00 +0800
|
||||||
|
Subject: [PATCH] qca-ssdk Fix 10G rtl phy driver for c45 mdio read/write and
|
||||||
|
set fix ablity set
|
||||||
|
|
||||||
|
---
|
||||||
|
include/hsl/hsl.h | 4 +-
|
||||||
|
include/init/ssdk_plat.h | 7 ++
|
||||||
|
src/hsl/phy/rtl826xb_phy.c | 73 +++++++++++--------
|
||||||
|
src/init/ssdk_init.c | 2 +
|
||||||
|
src/init/ssdk_plat.c | 54 ++++++++++++++
|
||||||
|
5 files changed, 106 insertions(+), 34 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/include/hsl/hsl.h b/include/hsl/hsl.h
|
||||||
|
index e6b49d6b55..6e82450991 100644
|
||||||
|
--- a/include/hsl/hsl.h
|
||||||
|
+++ b/include/hsl/hsl.h
|
||||||
|
@@ -193,7 +193,7 @@ do { \
|
||||||
|
rv = SW_NOT_INITIALIZED; \
|
||||||
|
} \
|
||||||
|
} while (0);
|
||||||
|
-
|
||||||
|
+#endif
|
||||||
|
#define HSL_PHY_GET(rv, dev, phy_addr, reg, value) \
|
||||||
|
do { \
|
||||||
|
hsl_api_t *p_api = hsl_api_ptr_get(dev); \
|
||||||
|
@@ -213,7 +213,7 @@ do { \
|
||||||
|
rv = SW_NOT_INITIALIZED; \
|
||||||
|
} \
|
||||||
|
} while (0);
|
||||||
|
-#endif
|
||||||
|
+//#endif
|
||||||
|
/*qca808x_start*/
|
||||||
|
#if (defined(API_LOCK) \
|
||||||
|
&& (defined(HSL_STANDALONG) || (defined(KERNEL_MODULE) && defined(USER_MODE))))
|
||||||
|
diff --git a/include/init/ssdk_plat.h b/include/init/ssdk_plat.h
|
||||||
|
index 92596477af..9fe5bb824a 100644
|
||||||
|
--- a/include/init/ssdk_plat.h
|
||||||
|
+++ b/include/init/ssdk_plat.h
|
||||||
|
@@ -471,6 +471,13 @@ a_uint32_t qca_mii_read(a_uint32_t dev_id, a_uint32_t reg);
|
||||||
|
void qca_mii_write(a_uint32_t dev_id, a_uint32_t reg, a_uint32_t val);
|
||||||
|
int qca_mii_update(a_uint32_t dev_id, a_uint32_t reg, a_uint32_t mask, a_uint32_t val);
|
||||||
|
|
||||||
|
+sw_error_t
|
||||||
|
+qca_ar8327_phy_read(a_uint32_t dev_id, a_uint32_t phy_addr,
|
||||||
|
+ a_uint32_t reg, a_uint16_t* data);
|
||||||
|
+sw_error_t
|
||||||
|
+qca_ar8327_phy_write(a_uint32_t dev_id, a_uint32_t phy_addr,
|
||||||
|
+ a_uint32_t reg, a_uint16_t data);
|
||||||
|
+
|
||||||
|
a_uint32_t __qca_mii_read(a_uint32_t dev_id, a_uint32_t reg);
|
||||||
|
void __qca_mii_write(a_uint32_t dev_id, a_uint32_t reg, a_uint32_t val);
|
||||||
|
int __qca_mii_update(a_uint32_t dev_id, a_uint32_t reg, a_uint32_t mask, a_uint32_t val);
|
||||||
|
diff --git a/src/hsl/phy/rtl826xb_phy.c b/src/hsl/phy/rtl826xb_phy.c
|
||||||
|
index a336348aa9..4eaa1ea4f1 100644
|
||||||
|
--- a/src/hsl/phy/rtl826xb_phy.c
|
||||||
|
+++ b/src/hsl/phy/rtl826xb_phy.c
|
||||||
|
@@ -48,46 +48,66 @@ void rtl826xb_phy_lock_init(void)
|
||||||
|
|
||||||
|
static a_uint16_t rtl826x_phy_mmd_read(a_uint32_t dev_id, a_uint32_t phy_id, a_uint16_t reg_mmd, a_uint16_t reg_id)
|
||||||
|
{
|
||||||
|
+ a_uint16_t phy_data;
|
||||||
|
+ sw_error_t rv;
|
||||||
|
a_uint32_t reg_id_c45 = RTL826XB_REG_ADDRESS(reg_mmd, reg_id);
|
||||||
|
-
|
||||||
|
- return __hsl_phy_mii_reg_read(dev_id, phy_id, reg_id_c45);
|
||||||
|
+ HSL_PHY_GET(rv, dev_id, phy_id, reg_id_c45, &phy_data);
|
||||||
|
+ return phy_data;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static sw_error_t rtl826x_phy_mmd_write(a_uint32_t dev_id, a_uint32_t phy_id, a_uint16_t reg_mmd, a_uint16_t reg_id, a_uint16_t reg_val)
|
||||||
|
{
|
||||||
|
+ sw_error_t rv;
|
||||||
|
a_uint32_t reg_id_c45 = RTL826XB_REG_ADDRESS(reg_mmd, reg_id);
|
||||||
|
-
|
||||||
|
- return __hsl_phy_mii_reg_write(dev_id, phy_id, reg_id_c45, reg_val);
|
||||||
|
+ HSL_PHY_SET(rv, dev_id, phy_id, reg_id_c45, reg_val);
|
||||||
|
+ return rv;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static a_uint16_t rtl826x_phy_reg_read(a_uint32_t dev_id, a_uint32_t phy_id, a_uint32_t reg)
|
||||||
|
{
|
||||||
|
- return __hsl_phy_mii_reg_read(dev_id, phy_id, reg);
|
||||||
|
+ a_uint16_t phy_data;
|
||||||
|
+ sw_error_t rv;
|
||||||
|
+ HSL_PHY_GET(rv, dev_id, phy_id, reg, &phy_data);
|
||||||
|
+ return phy_data;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static sw_error_t rtl826x_phy_reg_write(a_uint32_t dev_id, a_uint32_t phy_id, a_uint32_t reg, a_uint16_t reg_val)
|
||||||
|
{
|
||||||
|
- return __hsl_phy_mii_reg_write(dev_id, phy_id, reg, reg_val);
|
||||||
|
+ sw_error_t rv;
|
||||||
|
+
|
||||||
|
+ HSL_PHY_SET(rv, dev_id, phy_id, reg, reg_val);
|
||||||
|
+
|
||||||
|
+ return rv;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static a_int16_t hal_miim_mmd_read(a_uint32_t dev_id, a_uint32_t phy_id, a_uint16_t mmdAddr, a_uint16_t mmdReg)
|
||||||
|
{
|
||||||
|
+ a_uint16_t phy_data;
|
||||||
|
+ sw_error_t rv;
|
||||||
|
+
|
||||||
|
a_uint32_t reg_id_c45 = RTL826XB_REG_ADDRESS(mmdAddr, mmdReg);
|
||||||
|
|
||||||
|
- return __hsl_phy_mii_reg_read(dev_id, phy_id, reg_id_c45);
|
||||||
|
+ HSL_PHY_GET(rv, dev_id, phy_id, reg_id_c45, &phy_data);
|
||||||
|
+
|
||||||
|
+ return phy_data;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
static a_int32_t hal_miim_mmd_write(a_uint32_t dev_id, a_uint32_t phy_id, a_uint16_t mmdAddr, a_uint16_t mmdReg, a_uint16_t phy_data)
|
||||||
|
{
|
||||||
|
+ sw_error_t rv;
|
||||||
|
+
|
||||||
|
a_uint32_t reg_id_c45 = RTL826XB_REG_ADDRESS(mmdAddr, mmdReg);
|
||||||
|
|
||||||
|
- return __hsl_phy_mii_reg_write(dev_id, phy_id, reg_id_c45, phy_data);
|
||||||
|
+ HSL_PHY_SET(rv, dev_id, phy_id, reg_id_c45, phy_data);
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+ return rv;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1281,34 +1301,23 @@ phy_826xb_autoNegoAbility_set(a_uint32_t dev_id, a_uint32_t phy_id, a_uint32_t a
|
||||||
|
hsl_phy_phydev_autoneg_update(dev_id, phy_id, A_TRUE, autoneg);
|
||||||
|
|
||||||
|
phyData = phy_common_general_reg_mmd_get(dev_id, phy_id, PHY_MMD_AN, 16);
|
||||||
|
+ phyData &= (~(0x0020 | 0x0040 | FAL_PHY_ADV_100TX_HD | FAL_PHY_ADV_100TX_FD | FAL_PHY_ADV_PAUSE | FAL_PHY_ADV_ASY_PAUSE));
|
||||||
|
+ phyData |= (autoneg & FAL_PHY_ADV_100TX_HD) ? (FAL_PHY_ADV_100TX_HD) : (0);
|
||||||
|
+ phyData |= ((autoneg & FAL_PHY_ADV_100TX_FD)) ? (FAL_PHY_ADV_100TX_FD) : (0);
|
||||||
|
+// phyData |= (autoneg & FAL_PHY_ADV_PAUSE) ? (FAL_PHY_ADV_PAUSE) : (0);
|
||||||
|
+// phyData |= (autoneg & FAL_PHY_ADV_ASY_PAUSE) ? (FAL_PHY_ADV_ASY_PAUSE) : (0);
|
||||||
|
|
||||||
|
- phyData &= (~(0x0020 | 0x0040 | 0x0080 | 0x0100 | 0x0400 | 0x0800));
|
||||||
|
- phyData |= ((autoneg & 1 << 1)) ? (0x0040) : (0);
|
||||||
|
- phyData |= ((autoneg & 1 << 2)) ? (0x0080) : (0);
|
||||||
|
- phyData |= ((autoneg & 1 << 3)) ? (0x0100) : (0);
|
||||||
|
- phyData |= ((autoneg & 1 << 4)) ? (0x0400) : (0);
|
||||||
|
- phyData |= ((autoneg & 1 << 5)) ? (0x0800) : (0);
|
||||||
|
-// phyData |= ((autoneg & 1 << 9)) ? (0x0400) : (0);
|
||||||
|
-// phyData |= ((autoneg & 1 << 10)) ? (0x0800) : (0);
|
||||||
|
-
|
||||||
|
- phy_common_general_reg_mmd_set(dev_id, phy_id, PHY_MMD_AN, 16, phyData);
|
||||||
|
-
|
||||||
|
+ phy_common_general_reg_mmd_set(dev_id, phy_id, PHY_MMD_AN, 16, phyData);
|
||||||
|
phyData = phy_common_general_reg_mmd_get(dev_id, phy_id, PHY_MMD_AN, 32);
|
||||||
|
+ phyData &= (~(FAL_PHY_ADV_2500T_FD | FAL_PHY_ADV_5000T_FD | FAL_PHY_ADV_10000T_FD));
|
||||||
|
+ phyData |= (autoneg & FAL_PHY_ADV_2500T_FD) ? (FAL_PHY_ADV_2500T_FD) : (0);
|
||||||
|
+ phyData |= (autoneg & FAL_PHY_ADV_5000T_FD) ? (FAL_PHY_ADV_5000T_FD) : (0);
|
||||||
|
+// phyData |= (autoneg & FAL_PHY_ADV_10000T_FD) ? (FAL_PHY_ADV_10000T_FD) : (0);
|
||||||
|
|
||||||
|
- phyData &= (~(0x4000 | 0x2000 | 0x1000));
|
||||||
|
- phyData |= (autoneg & 1 << 12) ? (0x0080) : (0);
|
||||||
|
- phyData |= (autoneg & 1 << 13) ? (0x0100) : (0);
|
||||||
|
- phyData |= (autoneg & 1 << 14) ? (0x1000) : (0);
|
||||||
|
-
|
||||||
|
- phy_common_general_reg_mmd_set(dev_id, phy_id, PHY_MMD_AN, 32, phyData);
|
||||||
|
-
|
||||||
|
-
|
||||||
|
+ phy_common_general_reg_mmd_set(dev_id, phy_id, PHY_MMD_AN, 32, phyData);
|
||||||
|
phyData = phy_common_general_reg_mmd_get(dev_id, phy_id, PHY_MMD_VEND2, 0xA412);
|
||||||
|
-
|
||||||
|
-
|
||||||
|
- phyData &= (~(0x0100 | 0x0200));
|
||||||
|
- phyData |= (autoneg & 1 << 9) ? (0x0200) : (0);
|
||||||
|
-// phyData |= (autoneg & 1 << 5) ? (0x0200) : (0);
|
||||||
|
+ phyData &= (~(0x0100 | FAL_PHY_ADV_1000T_FD));
|
||||||
|
+ phyData |= (autoneg & FAL_PHY_ADV_1000T_FD) ? (FAL_PHY_ADV_1000T_FD) : (0);
|
||||||
|
|
||||||
|
phy_common_general_reg_mmd_set(dev_id, phy_id, PHY_MMD_VEND2, 0xA412, phyData);
|
||||||
|
|
||||||
|
diff --git a/src/init/ssdk_init.c b/src/init/ssdk_init.c
|
||||||
|
index 59f5fc43c0..fb6288db73 100644
|
||||||
|
--- a/src/init/ssdk_init.c
|
||||||
|
+++ b/src/init/ssdk_init.c
|
||||||
|
@@ -2210,6 +2210,8 @@ static void ssdk_cfg_default_init(ssdk_init_cfg *cfg)
|
||||||
|
memset(cfg, 0, sizeof(ssdk_init_cfg));
|
||||||
|
cfg->cpu_mode = HSL_CPU_1;
|
||||||
|
cfg->nl_prot = 30;
|
||||||
|
+ cfg->reg_func.mdio_set = qca_ar8327_phy_write;
|
||||||
|
+ cfg->reg_func.mdio_get = qca_ar8327_phy_read;
|
||||||
|
/*qca808x_end*/
|
||||||
|
|
||||||
|
cfg->reg_func.header_reg_set = qca_switch_reg_write;
|
||||||
|
diff --git a/src/init/ssdk_plat.c b/src/init/ssdk_plat.c
|
||||||
|
index 87bd0dbaf1..24285c8de7 100644
|
||||||
|
--- a/src/init/ssdk_plat.c
|
||||||
|
+++ b/src/init/ssdk_plat.c
|
||||||
|
@@ -458,6 +458,60 @@ int __qca_mii_update(a_uint32_t dev_id, a_uint32_t reg, a_uint32_t mask, a_uint3
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
+a_bool_t
|
||||||
|
+phy_addr_validation_check(a_uint32_t phy_addr)
|
||||||
|
+{
|
||||||
|
+
|
||||||
|
+ if ((phy_addr > SSDK_PHY_BCAST_ID) || (phy_addr < SSDK_PHY_MIN_ID))
|
||||||
|
+ return A_FALSE;
|
||||||
|
+ else
|
||||||
|
+ return A_TRUE;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+sw_error_t
|
||||||
|
+qca_ar8327_phy_read(a_uint32_t dev_id, a_uint32_t phy_addr,
|
||||||
|
+ a_uint32_t reg, a_uint16_t* data)
|
||||||
|
+{
|
||||||
|
+ struct mii_bus *bus = NULL;
|
||||||
|
+
|
||||||
|
+ if (A_TRUE != phy_addr_validation_check (phy_addr))
|
||||||
|
+ {
|
||||||
|
+ return SW_BAD_PARAM;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ bus = ssdk_phy_miibus_get(dev_id, phy_addr);
|
||||||
|
+ if (!bus)
|
||||||
|
+ return SW_NOT_SUPPORTED;
|
||||||
|
+
|
||||||
|
+ mutex_lock(&bus->mdio_lock);
|
||||||
|
+ *data = __mdiobus_read(bus, phy_addr, reg);
|
||||||
|
+ mutex_unlock(&bus->mdio_lock);
|
||||||
|
+
|
||||||
|
+ return 0;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+sw_error_t
|
||||||
|
+qca_ar8327_phy_write(a_uint32_t dev_id, a_uint32_t phy_addr,
|
||||||
|
+ a_uint32_t reg, a_uint16_t data)
|
||||||
|
+{
|
||||||
|
+ struct mii_bus *bus = NULL;
|
||||||
|
+
|
||||||
|
+ if (A_TRUE != phy_addr_validation_check (phy_addr))
|
||||||
|
+ {
|
||||||
|
+ return SW_BAD_PARAM;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ bus = ssdk_phy_miibus_get(dev_id, phy_addr);
|
||||||
|
+ if (!bus)
|
||||||
|
+ return SW_NOT_SUPPORTED;
|
||||||
|
+
|
||||||
|
+ mutex_lock(&bus->mdio_lock);
|
||||||
|
+ __mdiobus_write(bus, phy_addr, reg, data);
|
||||||
|
+ mutex_unlock(&bus->mdio_lock);
|
||||||
|
+
|
||||||
|
+ return 0;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
a_uint32_t qca_mii_read(a_uint32_t dev_id, a_uint32_t reg)
|
||||||
|
{
|
||||||
|
a_uint32_t val = 0xffffffff;
|
||||||
|
--
|
||||||
|
2.34.1
|
||||||
|
|
||||||
@@ -79,6 +79,8 @@ hfcl,ion4xe)
|
|||||||
;;
|
;;
|
||||||
cig,wf186w|\
|
cig,wf186w|\
|
||||||
cig,wf189|\
|
cig,wf189|\
|
||||||
|
cig,wf189w|\
|
||||||
|
cig,wf189h|\
|
||||||
cig,wf186h|\
|
cig,wf186h|\
|
||||||
yuncore,ax840|\
|
yuncore,ax840|\
|
||||||
yuncore,fap655)
|
yuncore,fap655)
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ STOP=01
|
|||||||
USE_PROCD=1
|
USE_PROCD=1
|
||||||
|
|
||||||
start_service() {
|
start_service() {
|
||||||
rm -rf /tmp/threshold_breach_count_phy*
|
rm -rf /tmp/threshold_breach_count*
|
||||||
rm -rf /tmp/fixed_channel_phy*
|
rm -rf /tmp/fixed_channel*
|
||||||
|
|
||||||
procd_open_instance
|
procd_open_instance
|
||||||
procd_set_param command /usr/bin/rrmd.uc
|
procd_set_param command /usr/bin/rrmd.uc
|
||||||
|
|||||||
@@ -265,7 +265,7 @@ function dfs_chan_check(iface_num, rcs_channel) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function fixed_channel_config(iface, iface_num, fixed_channel_f, auto_channel_f, fixed_chan_bkp, channel_config) {
|
function fixed_channel_config(iface, iface_num, fixed_channel_f, auto_channel_f, fixed_chan_bkp, channel_config) {
|
||||||
// if fixed channel config is stored in the /tmp/fixed_channel_phyX file
|
// if fixed channel config is stored in the /tmp/fixed_channel_<radio_iface> file
|
||||||
if (fixed_channel_f == 1) {
|
if (fixed_channel_f == 1) {
|
||||||
if (auto_channel_f == 1) {
|
if (auto_channel_f == 1) {
|
||||||
// if current channel is auto => change to fixed
|
// if current channel is auto => change to fixed
|
||||||
@@ -290,6 +290,7 @@ function fixed_channel_config(iface, iface_num, fixed_channel_f, auto_channel_f,
|
|||||||
function get_chan_util(radio_band, sleep_time) {
|
function get_chan_util(radio_band, sleep_time) {
|
||||||
let pdev_stats = {};
|
let pdev_stats = {};
|
||||||
let chan_util = 0;
|
let chan_util = 0;
|
||||||
|
let total_usage = 0;
|
||||||
|
|
||||||
let prev_values = {
|
let prev_values = {
|
||||||
txFrameCount: null,
|
txFrameCount: null,
|
||||||
@@ -348,7 +349,8 @@ function get_chan_util(radio_band, sleep_time) {
|
|||||||
if (ignore != 1) {
|
if (ignore != 1) {
|
||||||
let cycle_count_delta = curr_values.cycleCount - prev_values.cycleCount;
|
let cycle_count_delta = curr_values.cycleCount - prev_values.cycleCount;
|
||||||
let rx_clear_delta = curr_values.rxClearCount - prev_values.rxClearCount;
|
let rx_clear_delta = curr_values.rxClearCount - prev_values.rxClearCount;
|
||||||
let total_usage = (rx_clear_delta * 100) / cycle_count_delta;
|
if (cycle_count_delta && cycle_count_delta > 0)
|
||||||
|
total_usage = (rx_clear_delta * 100) / cycle_count_delta;
|
||||||
chan_util = total_usage;
|
chan_util = total_usage;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -673,7 +675,7 @@ function channel_optimize() {
|
|||||||
ulog_info(`[%s] Allowed consecutive Channel Utilization threshold breach count = %d \n`, radio_iface[j], config.consecutive_threshold_breach);
|
ulog_info(`[%s] Allowed consecutive Channel Utilization threshold breach count = %d \n`, radio_iface[j], config.consecutive_threshold_breach);
|
||||||
|
|
||||||
if (!current_threshold_breach_count || current_threshold_breach_count == null || current_threshold_breach_count == 'NaN') {
|
if (!current_threshold_breach_count || current_threshold_breach_count == null || current_threshold_breach_count == 'NaN') {
|
||||||
// /tmp/phyX_breachcount file doesn't exist yet or has invalid value
|
// /tmp/threshold_breach_count_<radio_iface> file doesn't exist yet or has invalid value
|
||||||
current_threshold_breach_count = 0;
|
current_threshold_breach_count = 0;
|
||||||
}
|
}
|
||||||
ulog_info(`[%s] Previous consecutive Channel Utilization threshold breach count = %d \n`, radio_iface[j], current_threshold_breach_count);
|
ulog_info(`[%s] Previous consecutive Channel Utilization threshold breach count = %d \n`, radio_iface[j], current_threshold_breach_count);
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ PKG_NAME:=ucentral-schema
|
|||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE_URL=https://github.com/Telecominfraproject/wlan-ucentral-schema.git
|
PKG_SOURCE_URL=https://github.com/Telecominfraproject/wlan-ucentral-schema.git
|
||||||
PKG_MIRROR_HASH:=fe33f072d7bcbbb14c7c3415e0750699bb5dae8a9af06c59c90c020f8b192a15
|
PKG_MIRROR_HASH:=cd070141672c85e72001e2e36616aa7159c6dc8ca4bbacca1b61a41c145cde2f
|
||||||
PKG_SOURCE_PROTO:=git
|
PKG_SOURCE_PROTO:=git
|
||||||
PKG_SOURCE_DATE:=2025-01-27
|
PKG_SOURCE_DATE:=2025-01-27
|
||||||
PKG_SOURCE_VERSION:=5a6d23b76bc51289ae99d22fdf406516b0c630e6
|
PKG_SOURCE_VERSION:=048a53d4a6cf3ef570dab9e2d10989844ae7c355
|
||||||
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
|
PKG_MAINTAINER:=John Crispin <john@phrozen.org>
|
||||||
PKG_LICENSE:=BSD-3-Clause
|
PKG_LICENSE:=BSD-3-Clause
|
||||||
|
|
||||||
|
|||||||
@@ -12,3 +12,4 @@ include:
|
|||||||
packages:
|
packages:
|
||||||
- ipq53xx
|
- ipq53xx
|
||||||
- ftm
|
- ftm
|
||||||
|
- qca-ssdk-shell
|
||||||
|
|||||||
14
profiles/cig_wf189h.yml
Normal file
14
profiles/cig_wf189h.yml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
profile: cig_wf189h
|
||||||
|
target: ipq53xx
|
||||||
|
subtarget: generic
|
||||||
|
description: Build image for the CIG WF189h
|
||||||
|
image: bin/targets/ipq53xx/generic/openwrt-ipq53xx-cig_wf189h-squashfs-sysupgrade.tar
|
||||||
|
feeds:
|
||||||
|
- name: qca
|
||||||
|
path: ../../feeds/qca-wifi-7
|
||||||
|
include:
|
||||||
|
- ucentral-ap
|
||||||
|
packages:
|
||||||
|
- ipq53xx
|
||||||
|
- qca-ssdk-shell
|
||||||
16
profiles/sercomm_ap72tip-v4.yml
Normal file
16
profiles/sercomm_ap72tip-v4.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
---
|
||||||
|
profile: sercomm_ap72tip-v4
|
||||||
|
target: ipq53xx
|
||||||
|
subtarget: generic
|
||||||
|
description: Build image for the Sercomm AP72TIP-v4
|
||||||
|
image: bin/targets/ipq53xx/generic/openwrt-ipq53xx-sercomm_ap72tip-v4-squashfs-sysupgrade.tar
|
||||||
|
feeds:
|
||||||
|
- name: qca
|
||||||
|
path: ../../feeds/qca-wifi-7
|
||||||
|
include:
|
||||||
|
- ucentral-ap
|
||||||
|
packages:
|
||||||
|
- ipq53xx
|
||||||
|
- qca-ssdk-shell
|
||||||
|
diffconfig: |
|
||||||
|
CONFIG_KERNEL_IPQ_MEM_PROFILE=0
|
||||||
@@ -2,14 +2,14 @@
|
|||||||
profile: sercomm_ap72tip
|
profile: sercomm_ap72tip
|
||||||
target: ipq53xx
|
target: ipq53xx
|
||||||
subtarget: generic
|
subtarget: generic
|
||||||
description: Build image for the Sercomm AP72 TIP
|
description: Build image for the Sercomm AP72TIP
|
||||||
image: bin/targets/ipq53xx/generic/openwrt-ipq53xx-sercomm_ap72tip-squashfs-sysupgrade.tar
|
image: bin/targets/ipq53xx/generic/openwrt-ipq53xx-sercomm_ap72tip-squashfs-sysupgrade.tar
|
||||||
feeds:
|
feeds:
|
||||||
- name: ipq95xx
|
- name: qca
|
||||||
path: ../../feeds/ipq95xx
|
path: ../../feeds/qca-wifi-7
|
||||||
packages:
|
|
||||||
- ipq53xx
|
|
||||||
include:
|
include:
|
||||||
- ucentral-ap
|
- ucentral-ap
|
||||||
|
packages:
|
||||||
|
- ipq53xx
|
||||||
diffconfig: |
|
diffconfig: |
|
||||||
CONFIG_KERNEL_IPQ_MEM_PROFILE=0
|
CONFIG_KERNEL_IPQ_MEM_PROFILE=0
|
||||||
|
|||||||
15
profiles/sonicfi_rap650c.yml
Normal file
15
profiles/sonicfi_rap650c.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
profile: sonicfi_rap650c
|
||||||
|
target: ipq807x
|
||||||
|
subtarget: generic
|
||||||
|
description: Build image for the SonicFi RAP650C
|
||||||
|
image: bin/targets/ipq807x/generic/openwrt-ipq807x-sonicfi_rap650c-squashfs-sysupgrade.tar
|
||||||
|
feeds:
|
||||||
|
- name: ipq807x
|
||||||
|
path: ../../feeds/ipq807x_v5.4
|
||||||
|
include:
|
||||||
|
- ucentral-ap
|
||||||
|
packages:
|
||||||
|
- ipq807x
|
||||||
|
diffconfig: |
|
||||||
|
CONFIG_KERNEL_IPQ_MEM_PROFILE=0
|
||||||
@@ -45,6 +45,7 @@ packages:
|
|||||||
- ucentral-schema
|
- ucentral-schema
|
||||||
- ucentral-state
|
- ucentral-state
|
||||||
- ucentral-tools
|
- ucentral-tools
|
||||||
|
- udhcpinject
|
||||||
- udhcprelay
|
- udhcprelay
|
||||||
- ufp
|
- ufp
|
||||||
- ugps
|
- ugps
|
||||||
|
|||||||
Reference in New Issue
Block a user