mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-10-30 18:07:52 +00:00
WIFI-14410: Wifi7 driver with RAP7110C-341X support
Signed-off-by: Wingate Chi <wingate.chi@cybertan.com.tw>
This commit is contained in:
committed by
John Crispin
parent
426943c1c0
commit
a9694847cd
2
.github/workflows/build-dev.yml
vendored
2
.github/workflows/build-dev.yml
vendored
@@ -21,7 +21,7 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
target: [ 'cig_wf186h', 'cig_wf186w', 'cig_wf188n', 'cig_wf196', 'cig_wf189', 'cybertan_eww631-a1', 'cybertan_eww631-b1', 'cybertan_rap630w-312g', 'cybertan_rap63xc-211g', 'sonicfi_rap630c-311g', 'sonicfi_rap630w-311g', 'sonicfi_rap630w-211g', 'edgecore_eap101', 'edgecore_eap102', 'edgecore_eap104', 'edgecore_eap105', 'edgecore_eap111', 'edgecore_eap112', 'edgecore_oap101', 'edgecore_oap101-6e', 'edgecore_oap101e', 'edgecore_oap101e-6e', 'hfcl_ion4xe', 'hfcl_ion4xi', 'hfcl_ion4x', 'hfcl_ion4x_2', 'hfcl_ion4x_3', 'hfcl_ion4xi_w', 'hfcl_ion4x_w', 'indio_um-305ax', 'sercomm_ap72tip', 'udaya_a6-id2', 'udaya_a6-od2', 'yuncore_ax820', 'yuncore_ax840', 'yuncore_fap640', 'yuncore_fap650', 'yuncore_fap655' ]
|
||||
target: [ 'cig_wf186h', 'cig_wf186w', 'cig_wf188n', 'cig_wf196', 'cig_wf189', 'cybertan_eww631-a1', 'cybertan_eww631-b1', 'cybertan_rap630w-312g', 'cybertan_rap63xc-211g', 'sonicfi_rap630c-311g', 'sonicfi_rap630w-311g', 'sonicfi_rap630w-211g', 'sonicfi_rap7110c-341x', 'edgecore_eap101', 'edgecore_eap102', 'edgecore_eap104', 'edgecore_eap105', 'edgecore_eap111', 'edgecore_eap112', 'edgecore_oap101', 'edgecore_oap101-6e', 'edgecore_oap101e', 'edgecore_oap101e-6e', 'hfcl_ion4xe', 'hfcl_ion4xi', 'hfcl_ion4x', 'hfcl_ion4x_2', 'hfcl_ion4x_3', 'hfcl_ion4xi_w', 'hfcl_ion4x_w', 'indio_um-305ax', 'sercomm_ap72tip', 'udaya_a6-id2', 'udaya_a6-od2', 'yuncore_ax820', 'yuncore_ax840', 'yuncore_fap640', 'yuncore_fap650', 'yuncore_fap655' ]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
|
||||
@@ -11,6 +11,9 @@ sercomm,ap72tip)
|
||||
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"
|
||||
;;
|
||||
sonicfi,rap7110c-341x)
|
||||
ucidef_set_led_default "power" "POWER" "pwm:blue" "on"
|
||||
;;
|
||||
esac
|
||||
|
||||
board_config_flush
|
||||
|
||||
@@ -12,19 +12,20 @@ ipq53xx_setup_interfaces()
|
||||
qcom,ipq9574-ap-al02-c4)
|
||||
ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4 eth5" "eth0"
|
||||
;;
|
||||
|
||||
cig,wf189|\
|
||||
edgecore,eap105|\
|
||||
sercomm,ap72tip)
|
||||
ucidef_set_interfaces_lan_wan "eth1" "eth0"
|
||||
;;
|
||||
;;
|
||||
sonicfi,rap7110c-341x)
|
||||
ucidef_set_interfaces_lan_wan "" "eth0"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
qcom_setup_macs()
|
||||
{
|
||||
local board="$1"
|
||||
|
||||
case $board in
|
||||
cig,wf189)
|
||||
mtd=$(find_mtd_chardev "0:APPSBLENV")
|
||||
@@ -44,6 +45,12 @@ qcom_setup_macs()
|
||||
wan_mac=$(cat /sys/class/net/eth0/address)
|
||||
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||
;;
|
||||
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)
|
||||
;;
|
||||
*)
|
||||
wan_mac=$(cat /sys/class/net/eth1/address)
|
||||
lan_mac=$(macaddr_add "$wan_mac" 1)
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#!/bin/sh
|
||||
|
||||
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
||||
|
||||
. /lib/functions.sh
|
||||
. /lib/functions/system.sh
|
||||
. /lib/functions/caldata.sh
|
||||
|
||||
caldata_die() {
|
||||
echo "caldata: " "$*"
|
||||
@@ -35,23 +35,30 @@ ath12k_generate_macs_eap105() {
|
||||
}
|
||||
|
||||
board=$(board_name)
|
||||
|
||||
case "$FIRMWARE" in
|
||||
ath12k/IPQ5332/hw1.0/caldata.bin)
|
||||
case "$board" in
|
||||
cig,wf189|\
|
||||
edgecore,eap105|\
|
||||
sonicfi,rap750w-311a|\
|
||||
sercomm,ap72tip)
|
||||
caldata_extract "0:ART" 0x1000 0x20000
|
||||
;;
|
||||
sonicfi,rap7110c-341x)
|
||||
caldata_extract_mmc "0:ART" 0x1000 0xF800
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
ath12k/QCN92XX/hw1.0/cal-pci-0001:01:00.0.bin)
|
||||
case "$board" in
|
||||
cig,wf189|\
|
||||
edgecore,eap105|\
|
||||
sonicfi,rap750w-311a|\
|
||||
sercomm,ap72tip)
|
||||
caldata_extract "0:ART" 0x58800 0x2d000
|
||||
caldata_extract "0:ART" 0x58800 0x2d000
|
||||
;;
|
||||
sonicfi,rap7110c-341x)
|
||||
caldata_extract_mmc "0:ART" 0x58800 0x2d000
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
73
feeds/qca/ipq53xx/base-files/lib/upgrade/platform.sh
Normal file → Executable file
73
feeds/qca/ipq53xx/base-files/lib/upgrade/platform.sh
Normal file → Executable file
@@ -3,6 +3,76 @@
|
||||
RAMFS_COPY_BIN='fw_printenv fw_setenv'
|
||||
RAMFS_COPY_DATA='/etc/fw_env.config /var/lock/fw_printenv.lock'
|
||||
|
||||
find_mmc_part() {
|
||||
local DEVNAME PARTNAME
|
||||
|
||||
if grep -q "$1" /proc/mtd; then
|
||||
echo "" && return 0
|
||||
fi
|
||||
|
||||
for DEVNAME in /sys/block/mmcblk*/mmcblk*p*; do
|
||||
PARTNAME=$(grep PARTNAME ${DEVNAME}/uevent | cut -f2 -d'=')
|
||||
[ "$PARTNAME" = "$1" ] && echo "/dev/$(basename $DEVNAME)" && return 0
|
||||
done
|
||||
}
|
||||
|
||||
do_flash_emmc() {
|
||||
local tar_file=$1
|
||||
local emmcblock=$(find_mmc_part $2)
|
||||
local board_dir=$3
|
||||
local part=$4
|
||||
|
||||
[ -b "$emmcblock" ] || emmcblock=$(find_mmc_part $2)
|
||||
|
||||
[ -z "$emmcblock" ] && {
|
||||
echo failed to find $2
|
||||
return
|
||||
}
|
||||
|
||||
echo erase $4 / $emmcblock
|
||||
dd if=/dev/zero of=${emmcblock} 2> /dev/null
|
||||
echo flash $4
|
||||
tar Oxf $tar_file ${board_dir}/$part | dd of=${emmcblock}
|
||||
}
|
||||
|
||||
emmc_do_upgrade() {
|
||||
local tar_file="$1"
|
||||
local block_kernel="0:HLOS"
|
||||
local block_rootfs="rootfs"
|
||||
local board_dir=$(tar tf $tar_file | grep -m 1 '^sysupgrade-.*/$')
|
||||
board_dir=${board_dir%/}
|
||||
|
||||
board=$(board_name)
|
||||
case $board in
|
||||
sonicfi,rap7110c-341x)
|
||||
local boot_part=""
|
||||
boot_part=$(fw_printenv | grep bootfrom | awk -F'=' '{printf $2}')
|
||||
[ -n "$boot_part" ] || boot_part="0"
|
||||
echo "**** boot_part=$boot_part" > /dev/console
|
||||
|
||||
if [ "$boot_part" = "0" ]; then
|
||||
block_kernel="0:HLOS_1"
|
||||
block_rootfs="rootfs_1"
|
||||
fw_setenv bootfrom 1
|
||||
elif [ "$boot_part" = "1" ]; then
|
||||
block_kernel="0:HLOS"
|
||||
block_rootfs="rootfs"
|
||||
fw_setenv bootfrom 0
|
||||
else
|
||||
echo "Invalid boot partition $boot_part! Skip upgrade....."
|
||||
return
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
do_flash_emmc $tar_file $block_kernel $board_dir kernel
|
||||
do_flash_emmc $tar_file $block_rootfs $board_dir root
|
||||
|
||||
local emmcblock="$(find_mmc_part "rootfs_data")"
|
||||
if [ -e "$emmcblock" ]; then
|
||||
mkfs.ext4 -F "$emmcblock"
|
||||
fi
|
||||
}
|
||||
|
||||
platform_check_image() {
|
||||
local magic_long="$(get_magic_long "$1")"
|
||||
[ "$magic_long" = "73797375" ] && return 0
|
||||
@@ -40,5 +110,8 @@ platform_do_upgrade() {
|
||||
fi
|
||||
nand_upgrade_tar "$1"
|
||||
;;
|
||||
sonicfi,rap7110c-341x)
|
||||
emmc_do_upgrade $1 $1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
1
feeds/qca/ipq53xx/config-6.1
Normal file → Executable file
1
feeds/qca/ipq53xx/config-6.1
Normal file → Executable file
@@ -1217,3 +1217,4 @@ CONFIG_ARM_PMU=y
|
||||
CONFIG_REALTEK_PHY=y
|
||||
CONFIG_RTK_MSSDK_PHY=y
|
||||
# CONFIG_NF_CONNTRACK_CHAIN_EVENTS is not set
|
||||
CONFIG_LEDS_PWM=y
|
||||
365
feeds/qca/ipq53xx/dts/ipq5332-sonicfi-rap7110c-341x.dts
Executable file
365
feeds/qca/ipq53xx/dts/ipq5332-sonicfi-rap7110c-341x.dts
Executable file
@@ -0,0 +1,365 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
||||
/*
|
||||
* IPQ5332 AP-MI01.6 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 = "SONICFI RAP7110C-341X";
|
||||
compatible = "sonicfi,rap7110c-341x","qcom,ipq5332-ap-mi01.6", "qcom,ipq5332";
|
||||
|
||||
aliases {
|
||||
serial0 = &blsp1_uart0;
|
||||
ethernet0 = "/soc/dp1";
|
||||
led-boot = &led_power;
|
||||
led-failsafe = &led_power;
|
||||
led-running = &led_power;
|
||||
led-upgrade = &led_power;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0";
|
||||
};
|
||||
|
||||
soc@0 {
|
||||
mdio:mdio@90000 {
|
||||
pinctrl-0 = <&mdio1_pins>;
|
||||
pinctrl-names = "default";
|
||||
phy-reset-gpio = <&tlmm 49 GPIO_ACTIVE_LOW>;
|
||||
phyaddr_fixup = <0xC90F018>;
|
||||
uniphyaddr_fixup = <0xC90F014>;
|
||||
mdio_clk_fixup; /* MDIO clock sequence fix up flag */
|
||||
status = "okay";
|
||||
|
||||
phy0: ethernet-phy@0 {
|
||||
compatible ="ethernet-phy-ieee802.3-c45";
|
||||
reg = <8>;
|
||||
};
|
||||
};
|
||||
|
||||
ess-instance {
|
||||
num_devices = <0x1>;
|
||||
ess-switch@3a000000 {
|
||||
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||
switch_lan_bmp = <0x2>; /* lan port bitmap */
|
||||
switch_wan_bmp = <0x0>; /* wan port bitmap */
|
||||
switch_mac_mode = <0xd>; /* mac mode for uniphy instance0*/
|
||||
switch_mac_mode1 = <0xff>; /* mac mode for uniphy instance1*/
|
||||
switch_mac_mode2 = <0xff>; /* mac mode for uniphy instance2*/
|
||||
qcom,port_phyinfo {
|
||||
port@0 {
|
||||
port_id = <1>;
|
||||
phy_address = <8>;
|
||||
mdiobus = <&mdio>;
|
||||
ethernet-phy-ieee802.3-c45;
|
||||
};
|
||||
port@1 {
|
||||
port_id = <2>;
|
||||
forced-speed = <2500>;
|
||||
forced-duplex = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
dp1 {
|
||||
device_type = "network";
|
||||
compatible = "qcom,nss-dp";
|
||||
qcom,id = <1>;
|
||||
reg = <0x3a500000 0x4000>;
|
||||
qcom,mactype = <1>;
|
||||
local-mac-address = [000000000000];
|
||||
qcom,phy-mdio-addr = <8>;
|
||||
qcom,link-poll = <1>;
|
||||
phy-mode = "usxgmii";
|
||||
};
|
||||
|
||||
/* 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 */
|
||||
};
|
||||
|
||||
gpio_keys {
|
||||
compatible = "gpio-keys";
|
||||
pinctrl-0 = <&button_pins>;
|
||||
pinctrl-names = "default";
|
||||
button@1 {
|
||||
label = "reset";
|
||||
linux,code = <KEY_RESTART>;
|
||||
gpios = <&tlmm 24 GPIO_ACTIVE_LOW>;
|
||||
linux,input-type = <1>;
|
||||
debounce-interval = <60>;
|
||||
};
|
||||
};
|
||||
|
||||
pwmleds {
|
||||
compatible = "pwm-leds";
|
||||
|
||||
red {
|
||||
label = "pwm:red";
|
||||
pwms = <&pwm 0 1250000>;
|
||||
max-brightness = <160>;
|
||||
linux,default-trigger = "none";
|
||||
};
|
||||
|
||||
green {
|
||||
label = "pwm:green";
|
||||
pwms = <&pwm 2 1250000>;
|
||||
max-brightness = <160>;
|
||||
linux,default-trigger = "none";
|
||||
};
|
||||
|
||||
led_power: blue {
|
||||
label = "pwm:blue";
|
||||
pwms = <&pwm 1 1250000>;
|
||||
max-brightness = <160>;
|
||||
linux,default-trigger = "none";
|
||||
};
|
||||
};
|
||||
|
||||
wsi: wsi {
|
||||
id = <0>;
|
||||
num_chip = <2>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&tlmm {
|
||||
button_pins: button-state {
|
||||
pins = "gpio24";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
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;
|
||||
};
|
||||
};
|
||||
|
||||
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 = "gpio32";
|
||||
function = "pwm1";
|
||||
drive-strength = <8>;
|
||||
};
|
||||
};
|
||||
|
||||
pcie1_default_state: pcie1-default-state {
|
||||
pins = "gpio47";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-up;
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
|
||||
&wifi0 {
|
||||
qcom,rproc = <&q6_wcss_pd1>;
|
||||
qcom,rproc_rpd = <&q6v5_wcss>;
|
||||
qcom,multipd_arch;
|
||||
qcom,userpd-subsys-name = "q6v5_wcss_userpd1";
|
||||
#if defined(__CNSS2__)
|
||||
mem-region = <&q6_region>;
|
||||
#else
|
||||
memory-region = <&q6_region>;
|
||||
qcom,wsi = <&wsi>;
|
||||
#endif
|
||||
qcom,board_id = <0x12>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* QCN9224 5G+6G */
|
||||
/*
|
||||
&wifi2 {
|
||||
hremote_node = <&qcn9224_pcie1>;
|
||||
board_id = <0x1015>;
|
||||
status = "okay";
|
||||
}; */
|
||||
|
||||
&qcn9224_pcie1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&blsp1_uart0 {
|
||||
pinctrl-0 = <&serial_0_pins>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&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 = "okay";
|
||||
};
|
||||
|
||||
&sleep_clk {
|
||||
clock-frequency = <32000>;
|
||||
};
|
||||
|
||||
&xo_board {
|
||||
clock-frequency = <24000000>;
|
||||
};
|
||||
|
||||
&qpic_bam {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&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,board_id = <0x1019>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&license_manager {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb3 {
|
||||
qcom,multiplexed-phy;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&pwm {
|
||||
pinctrl-0 = <&pwm_pins>;
|
||||
used-pwm-indices = <1>, <1>, <1>, <0>;
|
||||
pinctrl-names = "default";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hs_m31phy_0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ssuniphy_0 {
|
||||
status = "okay";
|
||||
};
|
||||
13
feeds/qca/ipq53xx/image/ipq53xx.mk
Normal file → Executable file
13
feeds/qca/ipq53xx/image/ipq53xx.mk
Normal file → Executable file
@@ -37,3 +37,16 @@ define Device/edgecore_eap105
|
||||
DEVICE_PACKAGES := ath12k-wifi-edgecore-eap105 ath12k-firmware-qcn92xx-split-phy ath12k-firmware-ipq53xx
|
||||
endef
|
||||
TARGET_DEVICES += edgecore_eap105
|
||||
|
||||
define Device/sonicfi_rap7110c_341x
|
||||
DEVICE_TITLE := SONICFI RAP7110C-341X
|
||||
DEVICE_DTS := ipq5332-sonicfi-rap7110c-341x
|
||||
DEVICE_DTS_DIR := ../dts
|
||||
DEVICE_DTS_CONFIG := config@mi01.6
|
||||
SUPPORTED_DEVICES := sonicfi,rap7110c-341x
|
||||
IMAGES := sysupgrade.tar mmc-factory.bin
|
||||
IMAGE/mmc-factory.bin := append-ubi | qsdk-ipq-factory-mmc
|
||||
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
||||
DEVICE_PACKAGES := ath12k-wifi-sonicfi-rap7110c-341x ath12k-firmware-qcn92xx-split-phy ath12k-firmware-ipq53xx
|
||||
endef
|
||||
TARGET_DEVICES += sonicfi_rap7110c_341x
|
||||
@@ -25,6 +25,10 @@ cig,wf660a)
|
||||
mmc_dev=$(echo $(find_mmc_part "0:ETHPHYFW") | sed 's/^.\{5\}//')
|
||||
[ -n "$mmc_dev" ] && mount -t ext4 /dev/$mmc_dev /certificates
|
||||
;;
|
||||
sonicfi,rap7110c-341x)
|
||||
mmc_dev=$(echo $(find_mmc_part "certificates") | sed 's/^.\{5\}//')
|
||||
[ -n "$mmc_dev" ] && mount -t squashfs /dev/$mmc_dev /certificates
|
||||
;;
|
||||
esac
|
||||
|
||||
check_certificates
|
||||
|
||||
42
patches/0085-ipq53xx-increase-rootfs-size-to-500M.patch
Executable file
42
patches/0085-ipq53xx-increase-rootfs-size-to-500M.patch
Executable file
@@ -0,0 +1,42 @@
|
||||
From 78f51448bd3d09ccb6c3559bae299a8d2edde21c Mon Sep 17 00:00:00 2001
|
||||
From: "wingate.chi" <wingate.chi@cybertan.com.tw>
|
||||
Date: Tue, 4 Feb 2025 06:32:17 +0000
|
||||
Subject: [PATCH] ipq53xx: increase rootfs size to 500M
|
||||
|
||||
Signed-off-by: wingate.chi <wingate.chi@cybertan.com.tw>
|
||||
---
|
||||
.../0001-change-rootfs-size-to-500m.patch | 22 +++++++++++++++++++
|
||||
1 file changed, 22 insertions(+)
|
||||
create mode 100644 package/system/fstools/patches/0001-change-rootfs-size-to-500m.patch
|
||||
|
||||
diff --git a/package/system/fstools/patches/0001-change-rootfs-size-to-500m.patch b/package/system/fstools/patches/0001-change-rootfs-size-to-500m.patch
|
||||
new file mode 100644
|
||||
index 0000000000..3aa16258d2
|
||||
--- /dev/null
|
||||
+++ b/package/system/fstools/patches/0001-change-rootfs-size-to-500m.patch
|
||||
@@ -0,0 +1,22 @@
|
||||
+--- a/libfstools/common.h
|
||||
++++ b/libfstools/common.h
|
||||
+@@ -19,7 +19,7 @@
|
||||
+ #include "libfstools.h"
|
||||
+ #include "volume.h"
|
||||
+
|
||||
+-#define F2FS_MINSIZE (100ULL * 1024ULL * 1024ULL)
|
||||
++#define F2FS_MINSIZE (500ULL * 1024ULL * 1024ULL) //change rootfs size to 500M
|
||||
+
|
||||
+ int read_uint_from_file(char *dirname, char *filename, unsigned int *i);
|
||||
+ char *read_string_from_file(const char *dirname, const char *filename, char *buf, size_t bufsz);
|
||||
+--- a/libfstools/rootdisk.c
|
||||
++++ b/libfstools/rootdisk.c
|
||||
+@@ -16,7 +16,7 @@
|
||||
+ #include <linux/loop.h>
|
||||
+
|
||||
+ #define ROOTDEV_OVERLAY_ALIGN (64ULL * 1024ULL)
|
||||
+-#define F2FS_MINSIZE (100ULL * 1024ULL * 1024ULL)
|
||||
++#define F2FS_MINSIZE (500ULL * 1024ULL * 1024ULL) //change rootfs size to 500M
|
||||
+
|
||||
+ struct squashfs_super_block {
|
||||
+ uint32_t s_magic;
|
||||
--
|
||||
2.17.1
|
||||
|
||||
15
profiles/sonicfi_rap7110c-341x.yml
Executable file
15
profiles/sonicfi_rap7110c-341x.yml
Executable file
@@ -0,0 +1,15 @@
|
||||
---
|
||||
profile: sonicfi_rap7110c_341x
|
||||
target: ipq53xx
|
||||
subtarget: generic
|
||||
description: Build image for the SONICFI RAP7110C-341X
|
||||
image: bin/targets/ipq53xx/generic/openwrt-ipq53xx-sonicfi_rap7110c_341x-squashfs-sysupgrade.tar
|
||||
feeds:
|
||||
- name: qca
|
||||
path: ../../feeds/qca
|
||||
include:
|
||||
- ucentral-ap
|
||||
packages:
|
||||
- ipq53xx
|
||||
- qca-ssdk-shell
|
||||
- e2fsprogs
|
||||
Reference in New Issue
Block a user