mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-11-01 10:57:47 +00:00
ipq50xx: add initial support for GL.iNet B3000
Hardware:
* SoC: Qcom IPQ5018
* RAM: DDR3L 512MB
* Flash: 128MB Nand
* Ethernet: 3x GbE
* WLAN: 2x2 2.4GHz 574Mbps + 2x2 5GHz 2402Mbps (builtin + builtin)
* LEDS: 1x white, 1x blue
* Buttons: 1x reset
* Power: 12VDC, 1.5A
Installation:
* from qsdk to openwifi:
upgrade "openwrt-ipq50xx-glinet_b3000-squashfs-nand-factory.bin" via web ui without keep config.
* upgrade "openwrt-ipq50xx-glinet_b3000-squashfs-sysupgrade.tar" if you are already in openwifi.
Signed-off-by: Yin Ni <yin.ni@gl-inet.com>
This commit is contained in:
@@ -37,6 +37,7 @@ ALLWIFIBOARDS:= \
|
|||||||
edgecore-eap101 \
|
edgecore-eap101 \
|
||||||
gl-ax1800 \
|
gl-ax1800 \
|
||||||
gl-axt1800 \
|
gl-axt1800 \
|
||||||
|
gl-b3000 \
|
||||||
sercomm-wallaby \
|
sercomm-wallaby \
|
||||||
edgecore-eap102 \
|
edgecore-eap102 \
|
||||||
edgecore-oap102 \
|
edgecore-oap102 \
|
||||||
@@ -108,6 +109,11 @@ $(call Package/ath11k-wifi-default)
|
|||||||
TITLE:=gl-axt1800 bdf
|
TITLE:=gl-axt1800 bdf
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/ath11k-wifi-gl-b3000
|
||||||
|
$(call Package/ath11k-wifi-default)
|
||||||
|
TITLE:=gl-b3000 bdf
|
||||||
|
endef
|
||||||
|
|
||||||
define Package/ath11k-wifi-motorola-q14
|
define Package/ath11k-wifi-motorola-q14
|
||||||
$(call Package/ath11k-wifi-default)
|
$(call Package/ath11k-wifi-default)
|
||||||
TITLE:=motorola q14 bdf
|
TITLE:=motorola q14 bdf
|
||||||
@@ -293,6 +299,13 @@ define Package/ath11k-wifi-gl-axt1800/install
|
|||||||
$(INSTALL_DATA) ./board-gl-axt1800.bin.IPQ6018 $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin
|
$(INSTALL_DATA) ./board-gl-axt1800.bin.IPQ6018 $(1)/lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define Package/ath11k-wifi-gl-b3000/install
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath11k/IPQ5018/hw1.0/
|
||||||
|
$(INSTALL_DIR) $(1)/lib/firmware/ath11k/qcn6122/hw1.0/
|
||||||
|
$(INSTALL_DATA) ./board-gl-b3000.bin.IPQ5018 $(1)/lib/firmware/ath11k/IPQ5018/hw1.0/board.bin
|
||||||
|
$(INSTALL_DATA) ./board-gl-b3000.bin.QCN6122 $(1)/lib/firmware/ath11k/qcn6122/hw1.0/board.bin
|
||||||
|
endef
|
||||||
|
|
||||||
define Package/ath11k-wifi-motorola-q14/install
|
define Package/ath11k-wifi-motorola-q14/install
|
||||||
$(INSTALL_DIR) $(1)/lib/firmware/ath11k/IPQ5018/hw1.0/
|
$(INSTALL_DIR) $(1)/lib/firmware/ath11k/IPQ5018/hw1.0/
|
||||||
$(INSTALL_DIR) $(1)/lib/firmware/ath11k/qcn6122/hw1.0/
|
$(INSTALL_DIR) $(1)/lib/firmware/ath11k/qcn6122/hw1.0/
|
||||||
|
|||||||
BIN
feeds/ipq807x_v5.4/ath11k-wifi/board-gl-b3000.bin.IPQ5018
Normal file
BIN
feeds/ipq807x_v5.4/ath11k-wifi/board-gl-b3000.bin.IPQ5018
Normal file
Binary file not shown.
BIN
feeds/ipq807x_v5.4/ath11k-wifi/board-gl-b3000.bin.QCN6122
Normal file
BIN
feeds/ipq807x_v5.4/ath11k-wifi/board-gl-b3000.bin.QCN6122
Normal file
Binary file not shown.
@@ -59,6 +59,9 @@ qcom_setup_interfaces()
|
|||||||
ucidef_add_switch "switch1" \
|
ucidef_add_switch "switch1" \
|
||||||
"6@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
|
"6@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
|
||||||
;;
|
;;
|
||||||
|
glinet,b3000)
|
||||||
|
ucidef_add_switch "switch1" "6@eth1" "1:wan" "2:lan" "3:lan"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -91,6 +94,10 @@ qcom_setup_macs()
|
|||||||
ip link set eth0 address $wan_mac
|
ip link set eth0 address $wan_mac
|
||||||
ucidef_set_label_macaddr $wan_mac
|
ucidef_set_label_macaddr $wan_mac
|
||||||
;;
|
;;
|
||||||
|
glinet,b3000)
|
||||||
|
wan_mac=$(cat /sys/class/net/eth1/address)
|
||||||
|
lan_mac=$(macaddr_add "$wan_mac" 2)
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
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)
|
||||||
|
|||||||
@@ -83,6 +83,17 @@ ath11k_generate_macs_rap630w_311g() {
|
|||||||
echo -ne \\x${mac2//:/\\x} >> /lib/firmware/ath11k-macs
|
echo -ne \\x${mac2//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ath11k_generate_macs_gl_b3000() {
|
||||||
|
mac=$(cat /proc/gl-hw-info/device_mac)
|
||||||
|
[ -z "$mac" ] && ath11k_generate_macs || {
|
||||||
|
touch /lib/firmware/ath11k-macs
|
||||||
|
mac1=$(macaddr_add $mac 2)
|
||||||
|
mac2=$(macaddr_add $mac 3)
|
||||||
|
echo -ne \\x${mac2//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
|
echo -ne \\x${mac1//:/\\x} >> /lib/firmware/ath11k-macs
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
caldata_die() {
|
caldata_die() {
|
||||||
echo "caldata: " "$*"
|
echo "caldata: " "$*"
|
||||||
exit 1
|
exit 1
|
||||||
@@ -125,7 +136,8 @@ ath11k/IPQ5018/hw1.0/caldata.bin)
|
|||||||
optimcloud,d50-5g|\
|
optimcloud,d50-5g|\
|
||||||
udaya,a6-id2|\
|
udaya,a6-id2|\
|
||||||
wallys,dr5018|\
|
wallys,dr5018|\
|
||||||
yuncore,fap655)
|
yuncore,fap655|\
|
||||||
|
glinet,b3000)
|
||||||
caldata_extract "0:ART" 0x1000 0x20000
|
caldata_extract "0:ART" 0x1000 0x20000
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -161,7 +173,8 @@ ath11k/qcn6122/hw1.0/caldata_2.bin)
|
|||||||
sonicfi,rap630c-311g|\
|
sonicfi,rap630c-311g|\
|
||||||
sonicfi,rap630w-311g|\
|
sonicfi,rap630w-311g|\
|
||||||
cybertan,eww631-a1|\
|
cybertan,eww631-a1|\
|
||||||
cybertan,eww631-b1)
|
cybertan,eww631-b1|\
|
||||||
|
glinet,b3000)
|
||||||
caldata_extract "0:ART" 0x26800 0x20000
|
caldata_extract "0:ART" 0x26800 0x20000
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -209,6 +222,9 @@ ath11k-macs)
|
|||||||
hfcl,ion4xi_w)
|
hfcl,ion4xi_w)
|
||||||
ath11k_generate_macs_ion4x
|
ath11k_generate_macs_ion4x
|
||||||
;;
|
;;
|
||||||
|
glinet,b3000)
|
||||||
|
ath11k_generate_macs_gl_b3000
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
|||||||
@@ -83,6 +83,7 @@ platform_check_image() {
|
|||||||
optimcloud,d50|\
|
optimcloud,d50|\
|
||||||
optimcloud,d50-5g|\
|
optimcloud,d50-5g|\
|
||||||
yuncore,fap655|\
|
yuncore,fap655|\
|
||||||
|
glinet,b3000|\
|
||||||
udaya,a6-id2|\
|
udaya,a6-id2|\
|
||||||
edgecore,oap101|\
|
edgecore,oap101|\
|
||||||
edgecore,oap101-6e|\
|
edgecore,oap101-6e|\
|
||||||
@@ -101,6 +102,7 @@ platform_do_upgrade() {
|
|||||||
|
|
||||||
board=$(board_name)
|
board=$(board_name)
|
||||||
case $board in
|
case $board in
|
||||||
|
glinet,b3000|\
|
||||||
edgecore,oap101|\
|
edgecore,oap101|\
|
||||||
edgecore,oap101-6e|\
|
edgecore,oap101-6e|\
|
||||||
edgecore,oap101e|\
|
edgecore,oap101e|\
|
||||||
|
|||||||
@@ -0,0 +1,801 @@
|
|||||||
|
/dts-v1/;
|
||||||
|
/* Copyright (c) 2018-2021, The Linux Foundation. All rights reserved.
|
||||||
|
*
|
||||||
|
* Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* Permission to use, copy, modify, and/or distribute this software for any
|
||||||
|
* purpose with or without fee is hereby granted, provided that the above
|
||||||
|
* copyright notice and this permission notice appear in all copies.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||||
|
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||||
|
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||||
|
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||||
|
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||||
|
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
||||||
|
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "ipq5018.dtsi"
|
||||||
|
#include <dt-bindings/input/input.h>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
#address-cells = <0x2>;
|
||||||
|
#size-cells = <0x2>;
|
||||||
|
model = "GL.iNet B3000";
|
||||||
|
compatible = "glinet,b3000", "qcom,ipq5018-mp03.5", "qcom,ipq5018";
|
||||||
|
interrupt-parent = <&intc>;
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &blsp1_uart1;
|
||||||
|
ethernet0 = "/soc/dp1";
|
||||||
|
ethernet1 = "/soc/dp2";
|
||||||
|
led-upgrade = &led_system;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
bootargs = "console=ttyMSM0,115200,n8 rw init=/init";
|
||||||
|
bootargs-append = " swiotlb=1 coherent_pool=2M";
|
||||||
|
stdout-path = "serial0";
|
||||||
|
};
|
||||||
|
|
||||||
|
gl-hw {
|
||||||
|
compatible = "gl-hw-info";
|
||||||
|
model = "b3000";
|
||||||
|
radio = "radio0";
|
||||||
|
wan = "eth1.1";
|
||||||
|
lan = "eth1.2 eth1.3";
|
||||||
|
secondwan_vlan_port = "2";
|
||||||
|
dfs;
|
||||||
|
reset-button = "gpio-27";
|
||||||
|
flash_size = <128>;
|
||||||
|
temperature = "/sys/devices/virtual/thermal/thermal_zone0/temp";
|
||||||
|
factory_data {
|
||||||
|
device_mac = "0:ART", "0x6";
|
||||||
|
device_ddns = "0:ART", "0x10";
|
||||||
|
device_sn_bak = "0:ART", "0x20";
|
||||||
|
device_sn = "0:ART", "0x30";
|
||||||
|
country_code = "0:ART", "0x88";
|
||||||
|
device_cert = "0:ART", "0x50000";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
reserved-memory {
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
/* 256 MB Profile
|
||||||
|
* +==========+==============+=========================+
|
||||||
|
* | | | |
|
||||||
|
* | Region | Start Offset | Size |
|
||||||
|
* | | | |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | NSS | 0x40000000 | 8MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | Linux | 0x40800000 | Depends on total memory |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | uboot | 0x4A600000 | 4MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | SBL | 0x4AA00000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | smem | 0x4AB00000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | TZ | 0x4AC00000 | 4MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | Q6 | | |
|
||||||
|
* | code/ | 0x4B000000 | 20MB |
|
||||||
|
* | data | | |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | data | 0x4C400000 | 13MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | M3 Dump | 0x4D100000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | QDSS | 0x4D200000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | data | 0x4D300000 | 13MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | M3 Dump | 0x4E000000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | QDSS | 0x4E100000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | data | 0x4E200000 | 13MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | M3 Dump | 0x4EF00000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | QDSS | 0x4F000000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | |
|
||||||
|
* | Rest of the memory for Linux |
|
||||||
|
* | |
|
||||||
|
* +===================================================+
|
||||||
|
*/
|
||||||
|
q6_mem_regions: q6_mem_regions@4B000000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4B000000 0x0 0x4100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_code_data: q6_code_data@4B000000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4B000000 0x0 0x1400000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_ipq5018_data: q6_ipq5018_data@4C400000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4C400000 0x0 0xD00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump: m3_dump@4D100000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D100000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_etr_region: q6_etr_dump@4D200000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D200000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_data1: q6_qcn6122_data1@4D300000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D300000 0x0 0xD00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump_qcn6122_1: m3_dump_qcn6122_1@4E000000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E000000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_etr_1: q6_qcn6122_etr_1@4E100000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E100000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_data2: q6_qcn6122_data2@4E200000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E200000 0x0 0xD00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump_qcn6122_2: m3_dump_qcn6122_2@4EF00000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4EF00000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_etr_2: q6_qcn6122_etr_2@4F000000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4F000000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
/* 512MB/1GB Profiles
|
||||||
|
* +==========+==============+=========================+
|
||||||
|
* | | | |
|
||||||
|
* | Region | Start Offset | Size |
|
||||||
|
* | | | |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | NSS | 0x40000000 | 16MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | Linux | 0x41000000 | Depends on total memory |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | uboot | 0x4A600000 | 4MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | SBL | 0x4AA00000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | smem | 0x4AB00000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | TZ | 0x4AC00000 | 4MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | Q6 | | |
|
||||||
|
* | code/ | 0x4B000000 | 20MB |
|
||||||
|
* | data | | |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | data | 0x4C400000 | 13MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | M3 Dump | 0x4D100000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | QDSS | 0x4D200000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | IPQ5018 | | |
|
||||||
|
* | Caldb | 0x4D300000 | 2MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | data | 0x4D500000 | 13MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | M3 Dump | 0x4E200000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | QDSS | 0x4E300000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_1| | |
|
||||||
|
* | Caldb | 0x4E400000 | 5MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | data | 0x4E900000 | 13MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | M3 Dump | 0x4F600000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | QDSS | 0x4F700000 | 1MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | QCN6122_2| | |
|
||||||
|
* | Caldb | 0x4F800000 | 5MB |
|
||||||
|
* +----------+--------------+-------------------------+
|
||||||
|
* | |
|
||||||
|
* | Rest of the memory for Linux |
|
||||||
|
* | |
|
||||||
|
* +===================================================+
|
||||||
|
*/
|
||||||
|
q6_mem_regions: q6_mem_regions@4B000000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4B000000 0x0 0x4D00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_code_data: q6_code_data@4B000000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4B000000 0x0 01400000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_ipq5018_data: q6_ipq5018_data@4C400000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4C400000 0x0 0xD00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump: m3_dump@4D100000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D100000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_etr_region: q6_etr_dump@4D200000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D200000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_caldb_region: q6_caldb_region@4D300000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D300000 0x0 0x200000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_data1: q6_qcn6122_data1@4D500000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4D500000 0x0 0xD00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump_qcn6122_1: m3_dump_qcn6122_1@4E200000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E200000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_etr_1: q6_qcn6122_etr_1@4E300000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E300000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_caldb_1: q6_qcn6122_caldb_1@4E400000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E400000 0x0 0x500000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_data2: q6_qcn6122_data2@4E900000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4E900000 0x0 0xD00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
m3_dump_qcn6122_2: m3_dump_qcn6122_2@4F600000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4F600000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_etr_2: q6_qcn6122_etr_2@4F700000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4F700000 0x0 0x100000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_qcn6122_caldb_2: q6_qcn6122_caldb_2@4F800000 {
|
||||||
|
no-map;
|
||||||
|
reg = <0x0 0x4F800000 0x0 0x500000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
soc {
|
||||||
|
serial@78af000 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
qpic_bam: dma@7984000{
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
nand: qpic-nand@79b0000 {
|
||||||
|
pinctrl-0 = <&qspi_nand_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio0: mdio@88000 {
|
||||||
|
status = "ok";
|
||||||
|
|
||||||
|
ethernet-phy@0 {
|
||||||
|
reg = <7>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio1: mdio@90000 {
|
||||||
|
status = "ok";
|
||||||
|
pinctrl-0 = <&mdio1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
phy-reset-gpio = <&tlmm 39 0>;
|
||||||
|
ethernet-phy@0 {
|
||||||
|
reg = <0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
ethernet-phy@1 {
|
||||||
|
reg = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
ethernet-phy@2 {
|
||||||
|
reg = <2>;
|
||||||
|
};
|
||||||
|
|
||||||
|
ethernet-phy@3 {
|
||||||
|
reg = <3>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-instance {
|
||||||
|
num_devices = <0x2>;
|
||||||
|
ess-switch@0x39c00000 {
|
||||||
|
compatible = "qcom,ess-switch-ipq50xx";
|
||||||
|
device_id = <0>;
|
||||||
|
switch_mac_mode = <0xf>; /* mac mode for uniphy instance*/
|
||||||
|
cmnblk_clk = "internal_96MHz"; /* cmnblk clk*/
|
||||||
|
qcom,port_phyinfo {
|
||||||
|
port@0 {
|
||||||
|
port_id = <1>;
|
||||||
|
phy_address = <7>;
|
||||||
|
};
|
||||||
|
port@1 {
|
||||||
|
port_id = <2>;
|
||||||
|
forced-speed = <1000>;
|
||||||
|
forced-duplex = <1>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
led_source@0 {
|
||||||
|
source = <0>;
|
||||||
|
mode = "normal";
|
||||||
|
speed = "all";
|
||||||
|
blink_en = "enable";
|
||||||
|
active = "high";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
ess-switch1@1 {
|
||||||
|
compatible = "qcom,ess-switch-qca83xx";
|
||||||
|
device_id = <1>;
|
||||||
|
switch_access_mode = "mdio";
|
||||||
|
mdio-bus = <&mdio1>;
|
||||||
|
reset_gpio = <&tlmm 0x27 0>;
|
||||||
|
switch_cpu_bmp = <0x40>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0xc>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x2>; /* wan port bitmap */
|
||||||
|
qca,ar8327-initvals = <
|
||||||
|
0x00004 0x7600000 /* PAD0_MODE */
|
||||||
|
0x00008 0x1000000 /* PAD5_MODE */
|
||||||
|
0x0000c 0x80 /* PAD6_MODE */
|
||||||
|
0x00010 0x2613a0 /* PORT6 FORCE MODE*/
|
||||||
|
0x000e4 0xaa545 /* MAC_POWER_SEL */
|
||||||
|
0x000e0 0xc74164de /* SGMII_CTRL */
|
||||||
|
0x0007c 0x4e /* PORT0_STATUS */
|
||||||
|
0x00094 0x4e /* PORT6_STATUS */
|
||||||
|
>;
|
||||||
|
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>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
clocks = <&gcc GCC_SNOC_GMAC0_AXI_CLK>;
|
||||||
|
clock-names = "nss-snoc-gmac-axi-clk";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x39C00000 0x10000>;
|
||||||
|
interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
qcom,mactype = <2>;
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <7>;
|
||||||
|
mdio-bus = <&mdio0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
qcom,rx-page-mode = <0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
clocks = <&gcc GCC_SNOC_GMAC1_AXI_CLK>;
|
||||||
|
clock-names = "nss-snoc-gmac-axi-clk";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x39D00000 0x10000>;
|
||||||
|
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
|
||||||
|
qcom,mactype = <2>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
qcom,rx-page-mode = <0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
nss-macsec1 {
|
||||||
|
compatible = "qcom,nss-macsec";
|
||||||
|
phy_addr = <0x1c>;
|
||||||
|
mdiobus = <&mdio1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
qcom,test@0 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
thermal-zones {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&tlmm {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
qspi_nand_pins: qspi_nand_pins {
|
||||||
|
qspi_clock {
|
||||||
|
pins = "gpio9";
|
||||||
|
function = "qspi_clk";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_cs {
|
||||||
|
pins = "gpio8";
|
||||||
|
function = "qspi_cs";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
|
||||||
|
qspi_data {
|
||||||
|
pins = "gpio4", "gpio5", "gpio6", "gpio7";
|
||||||
|
function = "qspi_data";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-disable;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio1_pins: mdio_pinmux {
|
||||||
|
mux_0 {
|
||||||
|
pins = "gpio36";
|
||||||
|
function = "mdc";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio37";
|
||||||
|
function = "mdio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
button_pins: button_pins {
|
||||||
|
reset_button {
|
||||||
|
pins = "gpio27";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds_pins: leds_pins {
|
||||||
|
led_system {
|
||||||
|
pins = "gpio24";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
led_white {
|
||||||
|
pins = "gpio23";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&soc {
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pinctrl-0 = <&button_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
reset {
|
||||||
|
label = "reset";
|
||||||
|
linux,code = <KEY_RESTART>;
|
||||||
|
gpios = <&tlmm 27 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
debounce-interval = <60>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-0 = <&leds_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
led_system: led@24 {
|
||||||
|
label = "blue_led";
|
||||||
|
gpios = <&tlmm 24 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "on";
|
||||||
|
};
|
||||||
|
led@23 {
|
||||||
|
label = "white_led";
|
||||||
|
gpios = <&tlmm 23 GPIO_ACTIVE_HIGH>;
|
||||||
|
default-state = "off";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&q6v5_wcss {
|
||||||
|
compatible = "qcom,ipq5018-q6-mpd";
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
ranges;
|
||||||
|
firmware = "IPQ5018/q6_fw.mdt";
|
||||||
|
reg = <0x0cd00000 0x4040>,
|
||||||
|
<0x1938000 0x8>,
|
||||||
|
<0x193d204 0x4>;
|
||||||
|
reg-names = "qdsp6",
|
||||||
|
"tcsr-msip",
|
||||||
|
"tcsr-q6";
|
||||||
|
resets = <&gcc GCC_WCSSAON_RESET>,
|
||||||
|
<&gcc GCC_WCSS_Q6_BCR>;
|
||||||
|
|
||||||
|
reset-names = "wcss_aon_reset",
|
||||||
|
"wcss_q6_reset";
|
||||||
|
|
||||||
|
clocks = <&gcc GCC_Q6_AXIS_CLK>,
|
||||||
|
<&gcc GCC_WCSS_ECAHB_CLK>,
|
||||||
|
<&gcc GCC_Q6_AXIM_CLK>,
|
||||||
|
<&gcc GCC_Q6_AXIM2_CLK>,
|
||||||
|
<&gcc GCC_Q6_AHB_CLK>,
|
||||||
|
<&gcc GCC_Q6_AHB_S_CLK>,
|
||||||
|
<&gcc GCC_WCSS_AXI_S_CLK>;
|
||||||
|
clock-names = "gcc_q6_axis_clk",
|
||||||
|
"gcc_wcss_ecahb_clk",
|
||||||
|
"gcc_q6_axim_clk",
|
||||||
|
"gcc_q6_axim2_clk",
|
||||||
|
"gcc_q6_ahb_clk",
|
||||||
|
"gcc_q6_ahb_s_clk",
|
||||||
|
"gcc_wcss_axi_s_clk";
|
||||||
|
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
memory-region = <&q6_mem_regions>, <&q6_etr_region>;
|
||||||
|
#else
|
||||||
|
memory-region = <&q6_mem_regions>, <&q6_etr_region>,
|
||||||
|
<&q6_caldb_region>;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
qcom,rproc = <&q6v5_wcss>;
|
||||||
|
qcom,bootargs_smem = <507>;
|
||||||
|
boot-args = <0x1 0x4 0x3 0x0F 0x0 0x0>,
|
||||||
|
<0x2 0x4 0x2 0x12 0x0 0x0>;
|
||||||
|
status = "ok";
|
||||||
|
q6_wcss_pd1: remoteproc_pd1@4ab000 {
|
||||||
|
compatible = "qcom,ipq5018-wcss-ahb-mpd";
|
||||||
|
reg = <0x4ab000 0x20>;
|
||||||
|
reg-names = "rmb";
|
||||||
|
firmware = "IPQ5018/q6_fw.mdt";
|
||||||
|
m3_firmware = "IPQ5018/m3_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";
|
||||||
|
|
||||||
|
resets = <&gcc GCC_WCSSAON_RESET>,
|
||||||
|
<&gcc GCC_WCSS_BCR>,
|
||||||
|
<&gcc GCC_CE_BCR>;
|
||||||
|
reset-names = "wcss_aon_reset",
|
||||||
|
"wcss_reset",
|
||||||
|
"ce_reset";
|
||||||
|
|
||||||
|
clocks = <&gcc GCC_WCSS_AHB_S_CLK>,
|
||||||
|
<&gcc GCC_WCSS_ACMT_CLK>,
|
||||||
|
<&gcc GCC_WCSS_AXI_M_CLK>;
|
||||||
|
clock-names = "gcc_wcss_ahb_s_clk",
|
||||||
|
"gcc_wcss_acmt_clk",
|
||||||
|
"gcc_wcss_axi_m_clk";
|
||||||
|
|
||||||
|
qcom,halt-regs = <&tcsr_q6_block 0xa000 0xd000 0x0>;
|
||||||
|
|
||||||
|
qcom,smem-states = <&wcss_smp2p_out 8>,
|
||||||
|
<&wcss_smp2p_out 9>,
|
||||||
|
<&wcss_smp2p_out 10>;
|
||||||
|
qcom,smem-state-names = "shutdown",
|
||||||
|
"stop",
|
||||||
|
"spawn";
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
memory-region = <&q6_ipq5018_data>, <&m3_dump>,
|
||||||
|
<&q6_etr_region>;
|
||||||
|
#else
|
||||||
|
memory-region = <&q6_ipq5018_data>, <&m3_dump>,
|
||||||
|
<&q6_etr_region>, <&q6_caldb_region>;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_wcss_pd2: remoteproc_pd2 {
|
||||||
|
compatible = "qcom,ipq5018-wcss-pcie-mpd";
|
||||||
|
firmware = "IPQ5018/q6_fw.mdt";
|
||||||
|
m3_firmware = "qcn6122/m3_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";
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
memory-region = <&q6_qcn6122_data1>, <&m3_dump_qcn6122_1>,
|
||||||
|
<&q6_qcn6122_etr_1>;
|
||||||
|
#else
|
||||||
|
memory-region = <&q6_qcn6122_data1>, <&m3_dump_qcn6122_1>,
|
||||||
|
<&q6_qcn6122_etr_1>, <&q6_qcn6122_caldb_1>;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
q6_wcss_pd3: remoteproc_pd3 {
|
||||||
|
compatible = "qcom,ipq5018-wcss-pcie-mpd";
|
||||||
|
firmware = "IPQ5018/q6_fw.mdt";
|
||||||
|
m3_firmware = "qcn6122/m3_fw.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";
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
memory-region = <&q6_qcn6122_data2>, <&m3_dump_qcn6122_2>,
|
||||||
|
<&q6_qcn6122_etr_2>;
|
||||||
|
#else
|
||||||
|
memory-region = <&q6_qcn6122_data2>, <&m3_dump_qcn6122_2>,
|
||||||
|
<&q6_qcn6122_etr_2>, <&q6_qcn6122_caldb_2>;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi0 {
|
||||||
|
/* IPQ5018 */
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,rproc = <&q6_wcss_pd1>;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd1";
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
qcom,tgt-mem-mode = <2>;
|
||||||
|
#else
|
||||||
|
qcom,tgt-mem-mode = <1>;
|
||||||
|
#endif
|
||||||
|
qcom,board_id = <0x23>;
|
||||||
|
#ifdef __CNSS2__
|
||||||
|
qcom,bdf-addr = <0x4C400000 0x4C400000 0x4C400000 0x0 0x0>;
|
||||||
|
qcom,caldb-addr = <0x4D300000 0x4D300000 0 0 0>;
|
||||||
|
qcom,caldb-size = <0x200000>;
|
||||||
|
mem-region = <&q6_ipq5018_data>;
|
||||||
|
#else
|
||||||
|
memory-region = <&q6_ipq5018_data>;
|
||||||
|
#endif
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&wifi1 {
|
||||||
|
/* QCN6122 5G */
|
||||||
|
qcom,multipd_arch;
|
||||||
|
qcom,userpd-subsys-name = "q6v5_wcss_userpd3";
|
||||||
|
qcom,rproc = <&q6_wcss_pd3>;
|
||||||
|
#ifdef __IPQ_MEM_PROFILE_256_MB__
|
||||||
|
qcom,tgt-mem-mode = <2>;
|
||||||
|
#else
|
||||||
|
qcom,tgt-mem-mode = <1>;
|
||||||
|
#endif
|
||||||
|
qcom,board_id = <0x60>;
|
||||||
|
#ifdef __CNSS2__
|
||||||
|
qcom,bdf-addr = <0x4E900000 0x4E900000 0x4E200000 0x0 0x0>;
|
||||||
|
qcom,caldb-addr = <0x4F800000 0x4F800000 0 0 0>;
|
||||||
|
qcom,caldb-size = <0x500000>;
|
||||||
|
mem-region = <&q6_qcn6122_data2>;
|
||||||
|
#else
|
||||||
|
memory-region = <&q6_qcn6122_data2>;
|
||||||
|
#endif
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&dwc_0 {
|
||||||
|
/delete-property/ #phy-cells;
|
||||||
|
/delete-property/ phys;
|
||||||
|
/delete-property/ phy-names;
|
||||||
|
};
|
||||||
|
|
||||||
|
&hs_m31phy_0 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&eud {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_x1 {
|
||||||
|
perst-gpio = <&tlmm 18 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_x2 {
|
||||||
|
perst-gpio = <&tlmm 15 GPIO_ACTIVE_LOW>;
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_x1_rp {
|
||||||
|
status = "disabled";
|
||||||
|
|
||||||
|
mhi_0: qcom,mhi@0 {
|
||||||
|
reg = <0 0 0 0 0 >;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_x2_rp {
|
||||||
|
status = "disabled";
|
||||||
|
|
||||||
|
mhi_1: qcom,mhi@1 {
|
||||||
|
reg = <0 0 0 0 0 >;
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
@@ -187,3 +187,15 @@ define Device/optimcloud_d60
|
|||||||
DEVICE_DTS_CONFIG := config@mp03.1
|
DEVICE_DTS_CONFIG := config@mp03.1
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += optimcloud_d60
|
TARGET_DEVICES += optimcloud_d60
|
||||||
|
|
||||||
|
define Device/glinet_b3000
|
||||||
|
DEVICE_TITLE := GL.iNet B3000
|
||||||
|
DEVICE_DTS := qcom-ipq5018-gl-b3000
|
||||||
|
SUPPORTED_DEVICES := glinet,b3000
|
||||||
|
DEVICE_PACKAGES := ath11k-wifi-gl-b3000 ath11k-firmware-ipq50xx-spruce ath11k-firmware-qcn6122
|
||||||
|
DEVICE_DTS_CONFIG := config@mp03.5-c1
|
||||||
|
IMAGES := sysupgrade.tar nand-factory.bin
|
||||||
|
IMAGE/sysupgrade.tar := sysupgrade-tar | append-metadata
|
||||||
|
IMAGE/nand-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
||||||
|
endef
|
||||||
|
TARGET_DEVICES += glinet_b3000
|
||||||
|
|||||||
28
profiles/gl_b3000.yml
Normal file
28
profiles/gl_b3000.yml
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
---
|
||||||
|
profile: glinet_b3000
|
||||||
|
target: ipq50xx
|
||||||
|
subtarget: generic
|
||||||
|
description: Build image for the GL.iNet B3000
|
||||||
|
image: bin/targets/ipq50xx/generic/openwrt-ipq50xx-glinet_b3000-squashfs-sysupgrade.tar
|
||||||
|
feeds:
|
||||||
|
- name: ipq807x
|
||||||
|
path: ../../feeds/ipq807x_v5.4
|
||||||
|
- name: ucentral
|
||||||
|
path: ../../feeds/ucentral
|
||||||
|
|
||||||
|
packages:
|
||||||
|
- ipq50xx
|
||||||
|
- ucode
|
||||||
|
- ucode-mod-math
|
||||||
|
- ucode-mod-resolv
|
||||||
|
- ucode-mod-rtnl
|
||||||
|
- ucode-mod-struct
|
||||||
|
- ucode-mod-uci
|
||||||
|
- wpad-openssl
|
||||||
|
- wireless-regdb
|
||||||
|
- iptables-mod-physdev
|
||||||
|
|
||||||
|
diffconfig: |
|
||||||
|
CONFIG_NET_IP_TUNNEL=y
|
||||||
|
CONFIG_KERNEL_IPQ_MEM_PROFILE=512
|
||||||
|
CONFIG_BUSYBOX_CUSTOM=y
|
||||||
Reference in New Issue
Block a user