mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
ipq60xx: add GL.iNet AX1800 init support
This commit is contained in:
parent
5c40fcd80e
commit
06b8f98e25
@ -11,6 +11,9 @@ ipq60xx_setup_interfaces()
|
|||||||
local board="$1"
|
local board="$1"
|
||||||
|
|
||||||
case "$board" in
|
case "$board" in
|
||||||
|
*"GL-AX1800"*)
|
||||||
|
ucidef_set_interfaces_lan_wan "eth1 eth2 eth3 eth4" "eth0"
|
||||||
|
;;
|
||||||
wf,hr6001)
|
wf,hr6001)
|
||||||
ucidef_set_interfaces_lan_wan "eth0 eth1 eth2 eth3" "eth4"
|
ucidef_set_interfaces_lan_wan "eth0 eth1 eth2 eth3" "eth4"
|
||||||
;;
|
;;
|
||||||
|
@ -10,6 +10,7 @@ platform_check_image() {
|
|||||||
|
|
||||||
platform_do_upgrade() {
|
platform_do_upgrade() {
|
||||||
case "$(board_name)" in
|
case "$(board_name)" in
|
||||||
|
*GL-AX1800* |\
|
||||||
wf,hr6001)
|
wf,hr6001)
|
||||||
CI_UBIPART="rootfs"
|
CI_UBIPART="rootfs"
|
||||||
nand_do_upgrade "$1"
|
nand_do_upgrade "$1"
|
||||||
|
@ -507,3 +507,4 @@ CONFIG_ZLIB_INFLATE=y
|
|||||||
CONFIG_ZONE_DMA32=y
|
CONFIG_ZONE_DMA32=y
|
||||||
CONFIG_ZSTD_COMPRESS=y
|
CONFIG_ZSTD_COMPRESS=y
|
||||||
CONFIG_ZSTD_DECOMPRESS=y
|
CONFIG_ZSTD_DECOMPRESS=y
|
||||||
|
CONFIG_IPQ_MEM_PROFILE=0
|
@ -0,0 +1,523 @@
|
|||||||
|
// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
|
||||||
|
/*
|
||||||
|
* IPQ6018 CP01 board device tree source
|
||||||
|
*
|
||||||
|
* Copyright (c) 2019-2021 The Linux Foundation. All rights reserved.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include "ipq6018.dtsi"
|
||||||
|
#include "ipq6018-cp-cpu.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "GL-AX1800 IPQ6018/AP-CP03-C1";
|
||||||
|
compatible = "qcom,ipq6018-cp03", "qcom,ipq6018";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
led-boot = &power;
|
||||||
|
led-failsafe = &power;
|
||||||
|
led-running = &power;
|
||||||
|
led-upgrade = &power;
|
||||||
|
serial0 = &blsp1_uart3;
|
||||||
|
/*
|
||||||
|
* Aliases as required by u-boot
|
||||||
|
* to patch MAC addresses
|
||||||
|
*/
|
||||||
|
ethernet0 = "/soc/dp1";
|
||||||
|
ethernet1 = "/soc/dp2";
|
||||||
|
ethernet2 = "/soc/dp3";
|
||||||
|
ethernet3 = "/soc/dp4";
|
||||||
|
ethernet4 = "/soc/dp5";
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0:115200n8";
|
||||||
|
bootargs-append = " ubi.mtd=rootfs root=/dev/ubiblock0_1 swiotlb=1";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&blsp1_uart3 {
|
||||||
|
pinctrl-0 = <&serial_3_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi_0 {
|
||||||
|
cs-select = <0>;
|
||||||
|
status = "ok";
|
||||||
|
|
||||||
|
m25p80@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
reg = <0>;
|
||||||
|
compatible = "n25q128a11";
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
|
||||||
|
SBL1@0 {
|
||||||
|
label = "0:SBL1";
|
||||||
|
reg = <0x0 0xc0000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
MIBIB@c0000 {
|
||||||
|
label = "0:MIBIB";
|
||||||
|
reg = <0xc0000 0x10000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOTCONFIG@d0000 {
|
||||||
|
label = "0:BOOTCONFIG";
|
||||||
|
reg = <0xd0000 0x20000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOTCONFIG1@f0000 {
|
||||||
|
label = "0:BOOTCONFIG1";
|
||||||
|
reg = <0xf0000 0x20000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
QSEE@110000 {
|
||||||
|
label = "0:QSEE";
|
||||||
|
reg = <0x110000 0x1a0000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
QSEE_1@2b0000 {
|
||||||
|
label = "0:QSEE_1";
|
||||||
|
reg = <0x2b0000 0x1a0000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
DEVCFG@450000 {
|
||||||
|
label = "0:DEVCFG";
|
||||||
|
reg = <0x450000 0x10000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
DEVCFG_1@460000 {
|
||||||
|
label = "0:DEVCFG_1";
|
||||||
|
reg = <0x460000 0x10000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
RPM@470000 {
|
||||||
|
label = "0:RPM";
|
||||||
|
reg = <0x4700000 0x40000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
RPM_1@4b0000 {
|
||||||
|
label = "0:RPM_1";
|
||||||
|
reg = <0x4b0000 0x40000>;
|
||||||
|
read-only;
|
||||||
|
};
|
||||||
|
|
||||||
|
CDT@4f0000 {
|
||||||
|
label = "0:CDT";
|
||||||
|
reg = <0x4f0000 0x10000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
CDT_1@500000 {
|
||||||
|
label = "0:CDT_1";
|
||||||
|
reg = <0x500000 0x10000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
APPSBLENV@510000 {
|
||||||
|
label = "0:APPSBLENV";
|
||||||
|
reg = <0x510000 0x10000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
APPSBL@520000 {
|
||||||
|
label = "0:APPSBL";
|
||||||
|
reg = <0x520000 0xa0000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
APPSBL_1@5c0000 {
|
||||||
|
label = "0:APPSBL_1";
|
||||||
|
reg = <0x5c0000 0xa0000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
ART: ART@660000 {
|
||||||
|
label = "0:ART";
|
||||||
|
reg = <0x660000 0x40000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&tlmm {
|
||||||
|
spi_0_pins: spi-0-pins {
|
||||||
|
pins = "gpio38", "gpio39", "gpio40", "gpio41";
|
||||||
|
function = "blsp0_spi";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
sd_pins: sd-pinmux {
|
||||||
|
pins = "gpio62";
|
||||||
|
function = "sd_card";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c_1_pins: i2c_1_pins {
|
||||||
|
mux {
|
||||||
|
pins = "gpio42", "gpio43";
|
||||||
|
function = "blsp2_i2c";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
mdio_pins: mdio_pinmux {
|
||||||
|
mux_0 {
|
||||||
|
pins = "gpio64";
|
||||||
|
function = "mdc";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
mux_1 {
|
||||||
|
pins = "gpio65";
|
||||||
|
function = "mdio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
mux_2 {
|
||||||
|
pins = "gpio75";
|
||||||
|
function = "gpio";
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
mux_3 {
|
||||||
|
pins = "gpio77";
|
||||||
|
function = "gpio";
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
button_pins: button_pins {
|
||||||
|
reset_button {
|
||||||
|
pins = "gpio19";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-up;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
led_pins: leds_pins {
|
||||||
|
|
||||||
|
wlan5g {
|
||||||
|
pins = "gpio35";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
wlan2g {
|
||||||
|
pins = "gpio37";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
lan1 {
|
||||||
|
pins = "gpio51";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
lan2 {
|
||||||
|
pins = "gpio24";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
lan3 {
|
||||||
|
pins = "gpio53";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
lan4 {
|
||||||
|
pins = "gpio25";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
|
||||||
|
wan {
|
||||||
|
pins = "gpio9";
|
||||||
|
function = "gpio";
|
||||||
|
drive-strength = <8>;
|
||||||
|
bias-pull-down;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&soc {
|
||||||
|
mdio: mdio@90000 {
|
||||||
|
pinctrl-0 = <&mdio_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
phy-reset-gpio = <&tlmm 75 0 &tlmm 77 1>;
|
||||||
|
status = "ok";
|
||||||
|
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 = <0x18>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dp1 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <1>;
|
||||||
|
reg = <0x3a001000 0x200>;
|
||||||
|
qcom,mactype = <0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <0>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
dp2 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <2>;
|
||||||
|
reg = <0x3a001200 0x200>;
|
||||||
|
qcom,mactype = <0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <1>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
dp3 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <3>;
|
||||||
|
reg = <0x3a001400 0x200>;
|
||||||
|
qcom,mactype = <0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <2>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
dp4 {
|
||||||
|
device_type = "network";
|
||||||
|
compatible = "qcom,nss-dp";
|
||||||
|
qcom,id = <4>;
|
||||||
|
reg = <0x3a001600 0x200>;
|
||||||
|
qcom,mactype = <0>;
|
||||||
|
local-mac-address = [000000000000];
|
||||||
|
qcom,link-poll = <1>;
|
||||||
|
qcom,phy-mdio-addr = <3>;
|
||||||
|
phy-mode = "sgmii";
|
||||||
|
};
|
||||||
|
|
||||||
|
dp5 {
|
||||||
|
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";
|
||||||
|
};
|
||||||
|
|
||||||
|
ess-switch@3a000000 {
|
||||||
|
switch_cpu_bmp = <0x1>; /* cpu port bitmap */
|
||||||
|
switch_lan_bmp = <0x1e>; /* lan port bitmap */
|
||||||
|
switch_wan_bmp = <0x20>; /* wan port bitmap */
|
||||||
|
switch_inner_bmp = <0xc0>; /*inner port bitmap*/
|
||||||
|
switch_mac_mode = <0x0>; /* 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 = <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 = <0x18>;
|
||||||
|
port_mac_sel = "QGMAC_PORT";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nss-macsec0 {
|
||||||
|
compatible = "qcom,nss-macsec";
|
||||||
|
phy_addr = <0x18>;
|
||||||
|
phy_access_mode = <0>;
|
||||||
|
mdiobus = <&mdio>;
|
||||||
|
};
|
||||||
|
|
||||||
|
sd_pwrseq: sd-pwrseq {
|
||||||
|
compatible = "mmc-pwrseq-ipq";
|
||||||
|
reset-gpios = <&tlmm 66 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
gpio_keys {
|
||||||
|
compatible = "gpio-keys";
|
||||||
|
pinctrl-0 = <&button_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
button@1 {
|
||||||
|
label = "wps";
|
||||||
|
linux,code = <KEY_WPS_BUTTON>;
|
||||||
|
gpios = <&tlmm 19 GPIO_ACTIVE_LOW>;
|
||||||
|
linux,input-type = <1>;
|
||||||
|
debounce-interval = <60>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
leds {
|
||||||
|
compatible = "gpio-leds";
|
||||||
|
pinctrl-0 = <&led_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
|
||||||
|
led@35 {
|
||||||
|
label = "green:wlan5g";
|
||||||
|
gpios = <&tlmm 35 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
power: led@37 {
|
||||||
|
label = "green:wlan2g";
|
||||||
|
gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@51 {
|
||||||
|
label = "green:lan1";
|
||||||
|
gpios = <&tlmm 51 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@24 {
|
||||||
|
label = "green:lan2";
|
||||||
|
gpios = <&tlmm 24 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@53 {
|
||||||
|
label = "green:lan3";
|
||||||
|
gpios = <&tlmm 53 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@25 {
|
||||||
|
label = "green:lan4";
|
||||||
|
gpios = <&tlmm 25 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
|
||||||
|
led@31 {
|
||||||
|
label = "green:wan";
|
||||||
|
gpios = <&tlmm 31 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_bam {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qpic_nand {
|
||||||
|
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>;
|
||||||
|
|
||||||
|
partition0@ {
|
||||||
|
label = "rootfs";
|
||||||
|
reg = <0x0 0x3c00000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
partition1@0x8000000 {
|
||||||
|
label = "rootfs_1";
|
||||||
|
reg = <0x3c00000 0x3c00000>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie_phy {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie0 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qusb_phy_1 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb2 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc_2 {
|
||||||
|
pinctrl-0 = <&sd_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
cd-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&qusb_phy_0 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&ssphy_0 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&usb3 {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&nss_crypto {
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c_1 {
|
||||||
|
pinctrl-0 = <&i2c_1_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
status = "ok";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhc_2 {
|
||||||
|
pinctrl-0 = <&sd_pins>;
|
||||||
|
pinctrl-names = "default";
|
||||||
|
mmc-pwrseq = <&sd_pwrseq>;
|
||||||
|
cd-gpios = <&tlmm 62 1>;
|
||||||
|
sd-ldo-gpios = <&tlmm 66 0>;
|
||||||
|
vqmmc-supply = <&ipq6018_l2>;
|
||||||
|
status = "ok";
|
||||||
|
};
|
@ -23,16 +23,31 @@ define Device/UbiFit
|
|||||||
IMAGE/nand-sysupgrade.bin := sysupgrade-tar | append-metadata
|
IMAGE/nand-sysupgrade.bin := sysupgrade-tar | append-metadata
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Device/wf_hr6001
|
define Device/glinet_gl-ax1800
|
||||||
$(call Device/FitImage)
|
$(call Device/FitImage)
|
||||||
$(call Device/UbiFit)
|
$(call Device/UbiFit)
|
||||||
DEVICE_VENDOR := WF
|
DEVICE_VENDOR := GL.iNet
|
||||||
DEVICE_MODEL := HR6001
|
DEVICE_MODEL := GL-AX1800
|
||||||
KERNEL_LOADADDR := 0x41000000
|
|
||||||
BLOCKSIZE := 128k
|
BLOCKSIZE := 128k
|
||||||
PAGESIZE := 2048
|
PAGESIZE := 2048
|
||||||
DEVICE_DTS_CONFIG := config@cp01-c1
|
DEVICE_DTS := qcom-ipq6018-gl-ax1800
|
||||||
SOC := ipq6018
|
DEVICE_DTS_CONFIG := config@cp03-c1
|
||||||
DEVICE_PACKAGES := uboot-envtools
|
BOARD_NAME := ap-cp03-c1
|
||||||
|
IMAGES += stock-factory.bin
|
||||||
|
IMAGE/stock-factory.bin := append-ubi | qsdk-ipq-factory-nand
|
||||||
endef
|
endef
|
||||||
TARGET_DEVICES += wf_hr6001
|
TARGET_DEVICES += glinet_gl-ax1800
|
||||||
|
|
||||||
|
#define Device/wf_hr6001
|
||||||
|
# $(call Device/FitImage)
|
||||||
|
# $(call Device/UbiFit)
|
||||||
|
# DEVICE_VENDOR := WF
|
||||||
|
# DEVICE_MODEL := HR6001
|
||||||
|
# KERNEL_LOADADDR := 0x41000000
|
||||||
|
# BLOCKSIZE := 128k
|
||||||
|
# PAGESIZE := 2048
|
||||||
|
# DEVICE_DTS_CONFIG := config@cp01-c1
|
||||||
|
# SOC := ipq6018
|
||||||
|
# DEVICE_PACKAGES := uboot-envtools
|
||||||
|
#endef
|
||||||
|
#TARGET_DEVICES += wf_hr6001
|
||||||
|
@ -1,35 +1,39 @@
|
|||||||
--- a/net/netfilter/nf_conntrack_proto_tcp.c
|
--- a/net/netfilter/nf_conntrack_proto_tcp.c
|
||||||
+++ b/net/netfilter/nf_conntrack_proto_tcp.c
|
+++ b/net/netfilter/nf_conntrack_proto_tcp.c
|
||||||
@@ -32,12 +32,14 @@
|
@@ -32,20 +32,14 @@
|
||||||
#include <net/netfilter/ipv6/nf_conntrack_ipv6.h>
|
#include <net/netfilter/ipv6/nf_conntrack_ipv6.h>
|
||||||
|
|
||||||
/* Do not check the TCP window for incoming packets */
|
/* Do not check the TCP window for incoming packets */
|
||||||
-static int nf_ct_tcp_no_window_check __read_mostly = 1;
|
-static int nf_ct_tcp_no_window_check __read_mostly = 1;
|
||||||
|
-
|
||||||
|
-#ifdef CONFIG_SHORTCUT_FE
|
||||||
+int nf_ct_tcp_no_window_check __read_mostly = 1;
|
+int nf_ct_tcp_no_window_check __read_mostly = 1;
|
||||||
+EXPORT_SYMBOL_GPL(nf_ct_tcp_no_window_check);
|
EXPORT_SYMBOL_GPL(nf_ct_tcp_no_window_check);
|
||||||
|
-#endif
|
||||||
|
|
||||||
/* "Be conservative in what you do,
|
/* "Be conservative in what you do,
|
||||||
be liberal in what you accept from others."
|
be liberal in what you accept from others."
|
||||||
If it's non-zero, we mark only out of window RST segments as INVALID. */
|
If it's non-zero, we mark only out of window RST segments as INVALID. */
|
||||||
-static int nf_ct_tcp_be_liberal __read_mostly = 0;
|
-static int nf_ct_tcp_be_liberal __read_mostly = 0;
|
||||||
|
-
|
||||||
|
-#ifdef CONFIG_SHORTCUT_FE
|
||||||
+int nf_ct_tcp_be_liberal __read_mostly = 0;
|
+int nf_ct_tcp_be_liberal __read_mostly = 0;
|
||||||
+EXPORT_SYMBOL_GPL(nf_ct_tcp_be_liberal);
|
EXPORT_SYMBOL_GPL(nf_ct_tcp_be_liberal);
|
||||||
|
-#endif
|
||||||
|
|
||||||
/* If it is set to zero, we disable picking up already established
|
/* If it is set to zero, we disable picking up already established
|
||||||
connections. */
|
connections. */
|
||||||
--- a/include/linux/if_bridge.h
|
--- a/include/linux/if_bridge.h
|
||||||
+++ b/include/linux/if_bridge.h
|
+++ b/include/linux/if_bridge.h
|
||||||
@@ -61,6 +61,9 @@ struct br_ip_list {
|
@@ -63,6 +63,7 @@ extern void brioctl_set(int (*ioctl_hook
|
||||||
#define BR_DEFAULT_AGEING_TIME (300 * HZ)
|
|
||||||
|
|
||||||
extern void brioctl_set(int (*ioctl_hook)(struct net *, unsigned int, void __user *));
|
extern void br_dev_update_stats(struct net_device *dev,
|
||||||
+extern void br_dev_update_stats(struct net_device *dev,
|
struct rtnl_link_stats64 *nlstats);
|
||||||
+ struct rtnl_link_stats64 *nlstats);
|
|
||||||
+extern bool br_is_hairpin_enabled(struct net_device *dev);
|
+extern bool br_is_hairpin_enabled(struct net_device *dev);
|
||||||
|
|
||||||
#if IS_ENABLED(CONFIG_BRIDGE) && IS_ENABLED(CONFIG_BRIDGE_IGMP_SNOOPING)
|
#if IS_ENABLED(CONFIG_BRIDGE) && IS_ENABLED(CONFIG_BRIDGE_IGMP_SNOOPING)
|
||||||
int br_multicast_list_adjacent(struct net_device *dev,
|
int br_multicast_list_adjacent(struct net_device *dev,
|
||||||
@@ -156,4 +159,41 @@ br_port_flag_is_set(const struct net_dev
|
@@ -158,4 +159,41 @@ br_port_flag_is_set(const struct net_dev
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -104,7 +108,7 @@
|
|||||||
__be16 vlan_proto, u16 vlan_id)
|
__be16 vlan_proto, u16 vlan_id)
|
||||||
--- a/include/linux/netdevice.h
|
--- a/include/linux/netdevice.h
|
||||||
+++ b/include/linux/netdevice.h
|
+++ b/include/linux/netdevice.h
|
||||||
@@ -2756,6 +2756,10 @@ enum netdev_cmd {
|
@@ -2745,6 +2745,10 @@ enum netdev_cmd {
|
||||||
NETDEV_CVLAN_FILTER_DROP_INFO,
|
NETDEV_CVLAN_FILTER_DROP_INFO,
|
||||||
NETDEV_SVLAN_FILTER_PUSH_INFO,
|
NETDEV_SVLAN_FILTER_PUSH_INFO,
|
||||||
NETDEV_SVLAN_FILTER_DROP_INFO,
|
NETDEV_SVLAN_FILTER_DROP_INFO,
|
||||||
@ -396,35 +400,11 @@
|
|||||||
/* Since more than one interface can be attached to a bridge,
|
/* Since more than one interface can be attached to a bridge,
|
||||||
* there still maybe an alternate path for netconsole to use;
|
* there still maybe an alternate path for netconsole to use;
|
||||||
* therefore there is no reason for a NETDEV_RELEASE event.
|
* therefore there is no reason for a NETDEV_RELEASE event.
|
||||||
@@ -790,3 +800,98 @@ bool br_port_flag_is_set(const struct ne
|
@@ -812,3 +822,74 @@ bool br_port_flag_is_set(const struct ne
|
||||||
return p->flags & flag;
|
return p->flags & flag;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(br_port_flag_is_set);
|
EXPORT_SYMBOL_GPL(br_port_flag_is_set);
|
||||||
+
|
+
|
||||||
+/* QCA NSS ECM support - Start */
|
|
||||||
+/* Update bridge statistics for bridge packets processed by offload engines */
|
|
||||||
+void br_dev_update_stats(struct net_device *dev,
|
|
||||||
+ struct rtnl_link_stats64 *nlstats)
|
|
||||||
+{
|
|
||||||
+ struct net_bridge *br;
|
|
||||||
+ struct pcpu_sw_netstats *stats;
|
|
||||||
+
|
|
||||||
+ /* Is this a bridge? */
|
|
||||||
+ if (!(dev->priv_flags & IFF_EBRIDGE))
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ br = netdev_priv(dev);
|
|
||||||
+ stats = this_cpu_ptr(br->stats);
|
|
||||||
+
|
|
||||||
+ u64_stats_update_begin(&stats->syncp);
|
|
||||||
+ stats->rx_packets += nlstats->rx_packets;
|
|
||||||
+ stats->rx_bytes += nlstats->rx_bytes;
|
|
||||||
+ stats->tx_packets += nlstats->tx_packets;
|
|
||||||
+ stats->tx_bytes += nlstats->tx_bytes;
|
|
||||||
+ u64_stats_update_end(&stats->syncp);
|
|
||||||
+}
|
|
||||||
+EXPORT_SYMBOL_GPL(br_dev_update_stats);
|
|
||||||
+
|
|
||||||
+/* API to know if hairpin feature is enabled/disabled on this bridge port */
|
+/* API to know if hairpin feature is enabled/disabled on this bridge port */
|
||||||
+bool br_is_hairpin_enabled(struct net_device *dev)
|
+bool br_is_hairpin_enabled(struct net_device *dev)
|
||||||
+{
|
+{
|
||||||
@ -497,7 +477,7 @@
|
|||||||
+/* QCA NSS ECM support - End */
|
+/* QCA NSS ECM support - End */
|
||||||
--- a/net/bridge/br_private.h
|
--- a/net/bridge/br_private.h
|
||||||
+++ b/net/bridge/br_private.h
|
+++ b/net/bridge/br_private.h
|
||||||
@@ -1591,4 +1591,9 @@ void br_do_proxy_suppress_arp(struct sk_
|
@@ -1593,4 +1593,9 @@ void br_do_proxy_suppress_arp(struct sk_
|
||||||
void br_do_suppress_nd(struct sk_buff *skb, struct net_bridge *br,
|
void br_do_suppress_nd(struct sk_buff *skb, struct net_bridge *br,
|
||||||
u16 vid, struct net_bridge_port *p, struct nd_msg *msg);
|
u16 vid, struct net_bridge_port *p, struct nd_msg *msg);
|
||||||
struct nd_msg *br_is_nd_neigh_msg(struct sk_buff *skb, struct nd_msg *m);
|
struct nd_msg *br_is_nd_neigh_msg(struct sk_buff *skb, struct nd_msg *m);
|
||||||
|
@ -1,38 +0,0 @@
|
|||||||
From e38488fd0a8a11b4bae4ccad9a7a8cfcf9eb5ab7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Murat Sezgin <msezgin@codeaurora.org>
|
|
||||||
Date: Mon, 6 Apr 2020 11:08:09 -0700
|
|
||||||
Subject: [PATCH] netfilter: export udp_get_timeouts function
|
|
||||||
|
|
||||||
This function is required for acceleration support.
|
|
||||||
|
|
||||||
Signed-off-by: Murat Sezgin <msezgin@codeaurora.org>
|
|
||||||
Change-Id: Ibca4f402735764e7e6fb3ce2678e670753c6ef9c
|
|
||||||
---
|
|
||||||
include/net/netfilter/nf_conntrack_timeout.h | 1 +
|
|
||||||
net/netfilter/nf_conntrack_proto_udp.c | 3 ++-
|
|
||||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
--- a/include/net/netfilter/nf_conntrack_timeout.h
|
|
||||||
+++ b/include/net/netfilter/nf_conntrack_timeout.h
|
|
||||||
@@ -123,5 +123,6 @@ static inline void nf_ct_destroy_timeout
|
|
||||||
extern struct nf_ct_timeout *(*nf_ct_timeout_find_get_hook)(struct net *net, const char *name);
|
|
||||||
extern void (*nf_ct_timeout_put_hook)(struct nf_ct_timeout *timeout);
|
|
||||||
#endif
|
|
||||||
+extern unsigned int *udp_get_timeouts(struct net *net);
|
|
||||||
|
|
||||||
#endif /* _NF_CONNTRACK_TIMEOUT_H */
|
|
||||||
--- a/net/netfilter/nf_conntrack_proto_udp.c
|
|
||||||
+++ b/net/netfilter/nf_conntrack_proto_udp.c
|
|
||||||
@@ -29,10 +29,11 @@ static const unsigned int udp_timeouts[U
|
|
||||||
[UDP_CT_REPLIED] = 120*HZ,
|
|
||||||
};
|
|
||||||
|
|
||||||
-static unsigned int *udp_get_timeouts(struct net *net)
|
|
||||||
+unsigned int *udp_get_timeouts(struct net *net)
|
|
||||||
{
|
|
||||||
return nf_udp_pernet(net)->timeouts;
|
|
||||||
}
|
|
||||||
+EXPORT_SYMBOL(udp_get_timeouts);
|
|
||||||
|
|
||||||
static void udp_error_log(const struct sk_buff *skb,
|
|
||||||
const struct nf_hook_state *state,
|
|
@ -12,11 +12,12 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
|||||||
|
|
||||||
--- a/arch/arm64/boot/dts/qcom/Makefile
|
--- a/arch/arm64/boot/dts/qcom/Makefile
|
||||||
+++ b/arch/arm64/boot/dts/qcom/Makefile
|
+++ b/arch/arm64/boot/dts/qcom/Makefile
|
||||||
@@ -3,6 +3,7 @@ dtb-$(CONFIG_ARCH_QCOM) += apq8016-sbc.d
|
@@ -3,6 +3,8 @@ dtb-$(CONFIG_ARCH_QCOM) += apq8016-sbc.d
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += apq8096-db820c.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += apq8096-db820c.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += apq8096-ifc6640.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += apq8096-ifc6640.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += ipq6018-cp01-c1.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += ipq6018-cp01-c1.dtb
|
||||||
+dtb-$(CONFIG_ARCH_QCOM) += ipq6018-hr6001.dtb
|
+dtb-$(CONFIG_ARCH_QCOM) += ipq6018-hr6001.dtb
|
||||||
|
+dtb-$(CONFIG_ARCH_QCOM) += qcom-ipq6018-gl-ax1800.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += ipq8074-hk01.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += ipq8074-hk01.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8916-longcheer-l8150.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8916-longcheer-l8150.dtb
|
||||||
dtb-$(CONFIG_ARCH_QCOM) += msm8916-mtp.dtb
|
dtb-$(CONFIG_ARCH_QCOM) += msm8916-mtp.dtb
|
||||||
|
Loading…
Reference in New Issue
Block a user