Merge Official Source
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
This commit is contained in:
commit
74d1a626d5
@ -35,13 +35,11 @@ include $(INCLUDE_DIR)/autotools.mk
|
||||
_host_target:=$(if $(HOST_QUILT),,.)
|
||||
|
||||
Host/Patch:=$(Host/Patch/Default)
|
||||
ifneq ($(strip $(HOST_UNPACK)),)
|
||||
define Host/Prepare/Default
|
||||
$(HOST_UNPACK)
|
||||
define Host/Prepare/Default
|
||||
$(if $(strip $(HOST_UNPACK)),$(HOST_UNPACK))
|
||||
[ ! -d ./src/ ] || $(CP) ./src/* $(HOST_BUILD_DIR)
|
||||
$(Host/Patch)
|
||||
endef
|
||||
endif
|
||||
endef
|
||||
|
||||
define Host/Prepare
|
||||
$(call Host/Prepare/Default)
|
||||
|
@ -59,6 +59,12 @@ else
|
||||
-$(foreach pdir,$(PACKAGE_SUBDIRS),$(if $(wildcard $(pdir)/*.ipk),ln -s $(pdir)/*.ipk $(PACKAGE_DIR_ALL);))
|
||||
endif
|
||||
|
||||
$(BUILD_KEY_APK_SEC):
|
||||
$(STAGING_DIR_HOST)/bin/openssl ecparam -name prime256v1 -genkey -noout -out $(BUILD_KEY_APK_SEC)
|
||||
|
||||
$(BUILD_KEY_APK_PUB): $(BUILD_KEY_APK_SEC)
|
||||
$(STAGING_DIR_HOST)/bin/openssl ec -in $(BUILD_KEY_APK_SEC) -pubout > $(BUILD_KEY_APK_PUB)
|
||||
|
||||
$(curdir)/merge-index: $(curdir)/merge
|
||||
ifneq ($(CONFIG_USE_APK),)
|
||||
(cd $(PACKAGE_DIR_ALL) && $(STAGING_DIR_HOST)/bin/apk mkndx \
|
||||
@ -75,7 +81,7 @@ endif
|
||||
ifndef SDK
|
||||
$(curdir)//compile = $(STAGING_DIR)/.prepared $(BIN_DIR)
|
||||
ifneq ($(CONFIG_USE_APK),)
|
||||
$(curdir)/compile: $(curdir)/system/apk/host/compile
|
||||
$(curdir)/compile: $(curdir)/system/apk/host/compile $(BUILD_KEY_APK_SEC) $(BUILD_KEY_APK_PUB)
|
||||
else
|
||||
$(curdir)/compile: $(curdir)/system/opkg/host/compile
|
||||
endif
|
||||
|
@ -117,12 +117,6 @@ endef
|
||||
Build/Compile = $(Build/Compile/Default)
|
||||
|
||||
ifneq ($(CONFIG_USE_APK),)
|
||||
define Build/Configure
|
||||
[ -s $(BUILD_KEY_APK_SEC) -a -s $(BUILD_KEY_APK_PUB) ] || \
|
||||
$(STAGING_DIR_HOST)/bin/openssl ecparam -name prime256v1 -genkey -noout -out $(BUILD_KEY_APK_SEC); \
|
||||
$(STAGING_DIR_HOST)/bin/openssl ec -in $(BUILD_KEY_APK_SEC) -pubout > $(BUILD_KEY_APK_PUB)
|
||||
endef
|
||||
|
||||
ifndef CONFIG_BUILDBOT
|
||||
define Package/base-files/install-key
|
||||
mkdir -p $(1)/etc/apk/keys
|
||||
|
@ -38,6 +38,12 @@ linksys,mx8500)
|
||||
[ -n "$idx" ] && \
|
||||
ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x40000" "0x20000" "2"
|
||||
;;
|
||||
netgear,sxr80|\
|
||||
netgear,sxs80)
|
||||
idx="$(find_mtd_index 0:appsblenv)"
|
||||
[ -n "$idx" ] && \
|
||||
ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x40000" "0x20000"
|
||||
;;
|
||||
redmi,ax6|\
|
||||
redmi,ax6-stock|\
|
||||
xiaomi,ax3600|\
|
||||
|
@ -40,6 +40,7 @@ ALLWIFIBOARDS:= \
|
||||
linksys_mx8500 \
|
||||
netgear_lbr20 \
|
||||
netgear_rax120v2 \
|
||||
netgear_sxk80 \
|
||||
netgear_wax214 \
|
||||
netgear_wax218 \
|
||||
netgear_wax620 \
|
||||
@ -161,6 +162,7 @@ $(eval $(call generate-ipq-wifi-package,linksys_mx5300,Linksys MX5300))
|
||||
$(eval $(call generate-ipq-wifi-package,linksys_mx8500,Linksys MX8500))
|
||||
$(eval $(call generate-ipq-wifi-package,netgear_lbr20,Netgear LBR20))
|
||||
$(eval $(call generate-ipq-wifi-package,netgear_rax120v2,Netgear RAX120v2))
|
||||
$(eval $(call generate-ipq-wifi-package,netgear_sxk80,Netgear SXK80))
|
||||
$(eval $(call generate-ipq-wifi-package,netgear_wax214,Netgear WAX214))
|
||||
$(eval $(call generate-ipq-wifi-package,netgear_wax218,Netgear WAX218))
|
||||
$(eval $(call generate-ipq-wifi-package,netgear_wax620,Netgear WAX620))
|
||||
|
@ -149,7 +149,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
||||
#if defined(NSS_DP_PPE_SUPPORT)
|
||||
uint32_t vsi_id;
|
||||
fal_port_t port_id;
|
||||
@@ -940,22 +883,15 @@ static int32_t nss_dp_probe(struct platf
|
||||
@@ -940,22 +883,16 @@ static int32_t nss_dp_probe(struct platf
|
||||
|
||||
dp_priv->drv_flags |= NSS_DP_PRIV_FLAG(INIT_DONE);
|
||||
|
||||
@ -177,6 +177,7 @@ Signed-off-by: Robert Marko <robimarko@gmail.com>
|
||||
+ netdev_err(netdev, "failed to connect to phy device\n");
|
||||
+ goto phy_setup_fail;
|
||||
+ }
|
||||
+ phy_attached_info(dp_priv->phydev);
|
||||
}
|
||||
|
||||
#if defined(NSS_DP_PPE_SUPPORT)
|
||||
|
@ -26,7 +26,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
|
||||
--- a/nss_dp_main.c
|
||||
+++ b/nss_dp_main.c
|
||||
@@ -972,6 +972,10 @@ static int nss_dp_remove(struct platform
|
||||
@@ -970,6 +970,10 @@ static int nss_dp_remove(struct platform
|
||||
if (!dp_priv)
|
||||
continue;
|
||||
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
|
||||
--- a/nss_dp_main.c
|
||||
+++ b/nss_dp_main.c
|
||||
@@ -1163,6 +1163,8 @@ int __init nss_dp_init(void)
|
||||
@@ -1161,6 +1161,8 @@ int __init nss_dp_init(void)
|
||||
*/
|
||||
void __exit nss_dp_exit(void)
|
||||
{
|
||||
@ -24,7 +24,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
/*
|
||||
* TODO Move this to soc_ops
|
||||
*/
|
||||
@@ -1170,8 +1172,6 @@ void __exit nss_dp_exit(void)
|
||||
@@ -1168,8 +1170,6 @@ void __exit nss_dp_exit(void)
|
||||
nss_dp_hal_cleanup();
|
||||
dp_global_ctx.common_init_done = false;
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
|
||||
--- a/nss_dp_main.c
|
||||
+++ b/nss_dp_main.c
|
||||
@@ -979,6 +979,9 @@ static int nss_dp_remove(struct platform
|
||||
@@ -977,6 +977,9 @@ static int nss_dp_remove(struct platform
|
||||
dp_ops = dp_priv->data_plane_ops;
|
||||
hal_ops = dp_priv->gmac_hal_ops;
|
||||
|
||||
@ -25,7 +25,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
if (dp_priv->phydev)
|
||||
phy_disconnect(dp_priv->phydev);
|
||||
|
||||
@@ -990,7 +993,6 @@ static int nss_dp_remove(struct platform
|
||||
@@ -988,7 +991,6 @@ static int nss_dp_remove(struct platform
|
||||
#endif
|
||||
hal_ops->exit(dp_priv->gmac_hal_ctx);
|
||||
dp_ops->deinit(dp_priv->dpc);
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
|
||||
--- a/nss_dp_main.c
|
||||
+++ b/nss_dp_main.c
|
||||
@@ -983,7 +983,7 @@ static int nss_dp_remove(struct platform
|
||||
@@ -981,7 +981,7 @@ static int nss_dp_remove(struct platform
|
||||
unregister_netdev(dp_priv->netdev);
|
||||
|
||||
if (dp_priv->phydev)
|
||||
|
@ -26,7 +26,7 @@ try_git() {
|
||||
*)
|
||||
BRANCH="$(git rev-parse --abbrev-ref HEAD)"
|
||||
ORIGIN="$(git rev-parse --verify --symbolic-full-name ${BRANCH}@{u} 2>/dev/null)"
|
||||
[ -n "$ORIGIN" ] || ORIGIN="$(git rev-parse --verify --symbolic-full-name master@{u} 2>/dev/null)"
|
||||
[ -n "$ORIGIN" ] || ORIGIN="$(git rev-parse --verify --symbolic-full-name main@{u} 2>/dev/null)"
|
||||
REV="$(git rev-list ${REBOOT}..$GET_REV 2>/dev/null | wc -l | awk '{print $1}')"
|
||||
|
||||
if [ -n "$ORIGIN" ]; then
|
||||
|
@ -654,7 +654,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr>
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ panic("PSGMII work is unstable !!! "
|
||||
+ dev_err(priv->dev, "PSGMII work is unstable !!! "
|
||||
+ "Repeated recalibration attempts did not help(0x%x) !\n",
|
||||
+ test_result);
|
||||
+
|
||||
|
@ -216,6 +216,7 @@ CONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=y
|
||||
CONFIG_IRQ_FORCED_THREADING=y
|
||||
CONFIG_IRQ_WORK=y
|
||||
# CONFIG_KPSS_XCC is not set
|
||||
CONFIG_LEDS_TLC591XX=y
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_LOCK_DEBUGGING_SUPPORT=y
|
||||
CONFIG_LOCK_SPIN_ON_OWNER=y
|
||||
@ -441,6 +442,7 @@ CONFIG_RANDSTRUCT_NONE=y
|
||||
CONFIG_RAS=y
|
||||
CONFIG_RATIONAL=y
|
||||
CONFIG_REGMAP=y
|
||||
CONFIG_REGMAP_I2C=y
|
||||
CONFIG_REGMAP_MMIO=y
|
||||
CONFIG_REGULATOR=y
|
||||
# CONFIG_REGULATOR_CPR3 is not set
|
||||
|
@ -136,6 +136,7 @@
|
||||
compatible = "ethernet-phy-id004d.d101";
|
||||
reg = <28>;
|
||||
reset-gpios = <&tlmm 44 GPIO_ACTIVE_LOW>;
|
||||
reset-deassert-us = <10000>;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -0,0 +1,541 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (c) 2021, Flole <flole@flole.de>
|
||||
* Copyright (c) 2023, Andrew Smith <gul.code@outlook.com>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "ipq8074.dtsi"
|
||||
#include "ipq8074-ess.dtsi"
|
||||
#include "ipq8074-hk-cpu.dtsi"
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
serial0 = &blsp1_uart5;
|
||||
led-boot = &led_front_blue;
|
||||
led-failsafe = &led_front_red;
|
||||
led-running = &led_front_green;
|
||||
led-upgrade = &led_front_white;
|
||||
label-mac-device = &dp2;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
bootargs-append = " ubi.mtd=rootfs root=/dev/ubiblock0_0";
|
||||
};
|
||||
|
||||
keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
reset {
|
||||
label = "reset";
|
||||
gpios = <&tlmm 54 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_RESTART>;
|
||||
};
|
||||
|
||||
wps {
|
||||
label = "wps";
|
||||
gpios = <&tlmm 57 GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
|
||||
led_front_blue: front-blue {
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&tlmm 33 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
|
||||
led_front_green: front-green {
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&tlmm 29 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
};
|
||||
|
||||
led_front_red: front-red {
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&tlmm 31 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
};
|
||||
|
||||
led_front_white: front-white {
|
||||
function = LED_FUNCTION_STATUS;
|
||||
gpios = <&tlmm 26 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_WHITE>;
|
||||
};
|
||||
|
||||
led_power_green: power-green {
|
||||
function = LED_FUNCTION_POWER;
|
||||
gpios = <&tlmm 21 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_GREEN>;
|
||||
default-state = "on";
|
||||
};
|
||||
|
||||
led_power_red: power-red {
|
||||
function = LED_FUNCTION_POWER;
|
||||
gpios = <&tlmm 22 GPIO_ACTIVE_LOW>;
|
||||
color = <LED_COLOR_ID_RED>;
|
||||
panic-indicator;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&tlmm {
|
||||
mdio_pins: mdio-pins {
|
||||
mdc {
|
||||
pins = "gpio68";
|
||||
function = "mdc";
|
||||
drive-strength = <8>;
|
||||
bias-pull-up;
|
||||
};
|
||||
|
||||
mdio {
|
||||
pins = "gpio69";
|
||||
function = "mdio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-up;
|
||||
};
|
||||
};
|
||||
|
||||
leds_pins: leds_pinmux {
|
||||
led_power_green {
|
||||
pins = "gpio21";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
led_power_red {
|
||||
pins = "gpio22";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
led_white {
|
||||
pins = "gpio26";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
led_green {
|
||||
pins = "gpio29";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
led_red {
|
||||
pins = "gpio31";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-down;
|
||||
};
|
||||
|
||||
led_blue {
|
||||
pins = "gpio33";
|
||||
function = "gpio";
|
||||
drive-strength = <8>;
|
||||
bias-pull-down;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&blsp1_uart5 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&blsp1_i2c2 {
|
||||
pinctrl-0 = <&i2c_0_pins>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
status = "okay";
|
||||
|
||||
tlc59208f@27 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "ti,tlc59108";
|
||||
reg = <0x27>;
|
||||
|
||||
led@0 {
|
||||
label = "rgb:led0";
|
||||
reg = <0>;
|
||||
linux,default-trigger = "default-off";
|
||||
};
|
||||
|
||||
led@1 {
|
||||
label = "rgb:led1";
|
||||
reg = <1>;
|
||||
linux,default-trigger = "default-off";
|
||||
};
|
||||
|
||||
led@2 {
|
||||
label = "rgb:led2";
|
||||
reg = <2>;
|
||||
linux,default-trigger = "default-off";
|
||||
};
|
||||
|
||||
led@3 {
|
||||
label = "rgb:led3";
|
||||
reg = <3>;
|
||||
linux,default-trigger = "default-off";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&prng {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&cryptobam {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&crypto {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&qpic_bam {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&qpic_nand {
|
||||
status = "okay";
|
||||
|
||||
/*
|
||||
* Bootloader will find the NAND DT node by the compatible and
|
||||
* then "fixup" it by adding the partitions from the SMEM table
|
||||
* using the legacy bindings thus making it impossible for us
|
||||
* to change the partition table or utilize NVMEM for calibration.
|
||||
* So add a dummy partitions node that bootloader will populate
|
||||
* and set it as disabled so the kernel ignores it instead of
|
||||
* printing warnings due to the broken way bootloader adds the
|
||||
* partitions.
|
||||
*/
|
||||
partitions {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
nand@0 {
|
||||
reg = <0>;
|
||||
nand-ecc-strength = <4>;
|
||||
nand-ecc-step-size = <512>;
|
||||
nand-bus-width = <8>;
|
||||
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
partition@0 {
|
||||
label = "0:sbl1";
|
||||
reg = <0x00 0x100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@100000 {
|
||||
label = "0:mibib";
|
||||
reg = <0x100000 0x100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@200000 {
|
||||
label = "0:bootconfig";
|
||||
reg = <0x200000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@280000 {
|
||||
label = "0:bootconfig_1";
|
||||
reg = <0x280000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@300000 {
|
||||
label = "0:qsee";
|
||||
reg = <0x300000 0x300000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@600000 {
|
||||
label = "0:qsee_1";
|
||||
reg = <0x600000 0x300000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@900000 {
|
||||
label = "0:devcfg";
|
||||
reg = <0x900000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@980000 {
|
||||
label = "0:devcfg_1";
|
||||
reg = <0x980000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@a00000 {
|
||||
label = "0:apdp";
|
||||
reg = <0xa00000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@a80000 {
|
||||
label = "0:apdp_1";
|
||||
reg = <0xa80000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@b00000 {
|
||||
label = "0:rpm";
|
||||
reg = <0xb00000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@b80000 {
|
||||
label = "0:rpm_1";
|
||||
reg = <0xb80000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@c00000 {
|
||||
label = "0:cdt";
|
||||
reg = <0xc00000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@c80000 {
|
||||
label = "0:cdt_1";
|
||||
reg = <0xc80000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@d00000 {
|
||||
label = "0:appsblenv";
|
||||
reg = <0xd00000 0x80000>;
|
||||
};
|
||||
|
||||
partition@d80000 {
|
||||
label = "0:appsbl";
|
||||
reg = <0xd80000 0x100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@e80000 {
|
||||
label = "0:appsbl_1";
|
||||
reg = <0xe80000 0x100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@f80000 {
|
||||
label = "0:art";
|
||||
reg = <0xf80000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@1000000 {
|
||||
label = "0:art.bak";
|
||||
reg = <0x1000000 0x80000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@1080000 {
|
||||
label = "config";
|
||||
reg = <0x1080000 0x100000>;
|
||||
};
|
||||
|
||||
partition@1180000 {
|
||||
label = "boarddata1";
|
||||
reg = <0x1180000 0x100000>;
|
||||
|
||||
nvmem-layout {
|
||||
compatible = "fixed-layout";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
macaddr_boarddata1_0: macaddr@0 {
|
||||
reg = <0x0 0x6>;
|
||||
};
|
||||
|
||||
macaddr_boarddata1_6: macaddr@6 {
|
||||
reg = <0x6 0x6>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
partition@1280000 {
|
||||
label = "boarddata2";
|
||||
reg = <0x1280000 0x100000>;
|
||||
};
|
||||
|
||||
partition@1380000 {
|
||||
label = "pot";
|
||||
reg = <0x1380000 0x100000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@1480000 {
|
||||
label = "dnidata";
|
||||
reg = <0x1480000 0x500000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@1980000 {
|
||||
label = "kernel";
|
||||
reg = <0x1980000 0x620000>;
|
||||
};
|
||||
|
||||
partition@1fa0000 {
|
||||
label = "rootfs";
|
||||
reg = <0x1fa0000 0x66e0000>;
|
||||
};
|
||||
|
||||
partition@8680000 {
|
||||
label = "kernel2";
|
||||
reg = <0x8680000 0x620000>;
|
||||
read-only;
|
||||
};
|
||||
|
||||
partition@8ca0000 {
|
||||
label = "rootfs2";
|
||||
reg = <0x8ca0000 0x66e0000>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&mdio {
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&mdio_pins>;
|
||||
pinctrl-names = "default";
|
||||
reset-gpios = <&tlmm 37 GPIO_ACTIVE_LOW>;
|
||||
|
||||
ethernet-phy-package@0 {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
reg = <0>;
|
||||
|
||||
compatible = "qcom,qca8075-package";
|
||||
|
||||
qca8075_1: ethernet-phy@1 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
qca8075_2: ethernet-phy@2 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <2>;
|
||||
};
|
||||
|
||||
qca8075_3: ethernet-phy@3 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <3>;
|
||||
};
|
||||
|
||||
qca8075_4: ethernet-phy@4 {
|
||||
compatible = "ethernet-phy-ieee802.3-c22";
|
||||
reg = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
qca8081_28: ethernet-phy@28 {
|
||||
compatible = "ethernet-phy-id004d.d101";
|
||||
reg = <28>;
|
||||
reset-deassert-us = <10000>;
|
||||
reset-gpios = <&tlmm 25 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
&switch {
|
||||
status = "okay";
|
||||
|
||||
switch_lan_bmp = <(ESS_PORT2 | ESS_PORT3 | ESS_PORT4 | ESS_PORT5)>; /* lan port bitmap */
|
||||
switch_wan_bmp = <ESS_PORT6>; /* wan port bitmap */
|
||||
switch_mac_mode = <MAC_MODE_PSGMII>; /* mac mode for uniphy instance0*/
|
||||
switch_mac_mode2 = <MAC_MODE_SGMII_PLUS>; /* mac mode for uniphy instance2*/
|
||||
|
||||
qcom,port_phyinfo {
|
||||
port@2 {
|
||||
port_id = <2>;
|
||||
phy_address = <1>;
|
||||
};
|
||||
port@3 {
|
||||
port_id = <3>;
|
||||
phy_address = <2>;
|
||||
};
|
||||
port@4 {
|
||||
port_id = <4>;
|
||||
phy_address = <3>;
|
||||
};
|
||||
port@5 {
|
||||
port_id = <5>;
|
||||
phy_address = <4>;
|
||||
};
|
||||
port@6 {
|
||||
port_id = <6>;
|
||||
phy_address = <28>;
|
||||
port_mac_sel = "QGMAC_PORT";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&edma {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&dp2 {
|
||||
status = "okay";
|
||||
phy-handle = <&qca8075_1>;
|
||||
label = "lan2";
|
||||
nvmem-cells = <&macaddr_boarddata1_0>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&dp3 {
|
||||
status = "okay";
|
||||
phy-handle = <&qca8075_2>;
|
||||
label = "lan3";
|
||||
nvmem-cells = <&macaddr_boarddata1_0>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&dp4 {
|
||||
status = "okay";
|
||||
phy-handle = <&qca8075_3>;
|
||||
label = "lan4";
|
||||
nvmem-cells = <&macaddr_boarddata1_0>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&dp5 {
|
||||
status = "okay";
|
||||
phy-handle = <&qca8075_4>;
|
||||
label = "lan5";
|
||||
nvmem-cells = <&macaddr_boarddata1_0>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&dp6 {
|
||||
status = "okay";
|
||||
phy-handle = <&qca8081_28>;
|
||||
label = "wan";
|
||||
nvmem-cells = <&macaddr_boarddata1_6>;
|
||||
nvmem-cell-names = "mac-address";
|
||||
};
|
||||
|
||||
&wifi {
|
||||
status = "okay";
|
||||
|
||||
qcom,ath11k-calibration-variant = "Netgear-SXK80";
|
||||
};
|
@ -0,0 +1,11 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/* Copyright (c) 2021, Flole <flole@flole.de> */
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "ipq8074-sxk80.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Netgear SXR80";
|
||||
compatible = "netgear,sxr80", "qcom,ipq8074";
|
||||
};
|
@ -0,0 +1,11 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/* Copyright (c) 2021, Flole <flole@flole.de> */
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include "ipq8074-sxk80.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Netgear SXS80";
|
||||
compatible = "netgear,sxs80", "qcom,ipq8074";
|
||||
};
|
@ -172,6 +172,33 @@ define Device/netgear_rax120v2
|
||||
endef
|
||||
TARGET_DEVICES += netgear_rax120v2
|
||||
|
||||
define Device/netgear_sxk80
|
||||
$(call Device/FitImage)
|
||||
$(call Device/UbiFit)
|
||||
DEVICE_PACKAGES += ipq-wifi-netgear_sxk80
|
||||
DEVICE_VENDOR := Netgear
|
||||
BLOCKSIZE := 128k
|
||||
PAGESIZE := 2048
|
||||
DEVICE_DTS_CONFIG := config@hk01
|
||||
SOC := ipq8074
|
||||
KERNEL_SIZE := 6272k
|
||||
NETGEAR_HW_ID := 29766265+0+512+1024+4x4+4x4+4x4
|
||||
endef
|
||||
|
||||
define Device/netgear_sxr80
|
||||
$(call Device/netgear_sxk80)
|
||||
DEVICE_MODEL := SXR80
|
||||
NETGEAR_BOARD_ID := SXR80
|
||||
endef
|
||||
TARGET_DEVICES += netgear_sxr80
|
||||
|
||||
define Device/netgear_sxs80
|
||||
$(call Device/netgear_sxk80)
|
||||
DEVICE_MODEL := SXS80
|
||||
NETGEAR_BOARD_ID := SXS80
|
||||
endef
|
||||
TARGET_DEVICES += netgear_sxs80
|
||||
|
||||
define Device/netgear_wax218
|
||||
$(call Device/FitImage)
|
||||
$(call Device/UbiFit)
|
||||
|
@ -46,6 +46,10 @@ ipq807x_setup_interfaces()
|
||||
netgear,rax120v2)
|
||||
ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5" "wan"
|
||||
;;
|
||||
netgear,sxr80|\
|
||||
netgear,sxs80)
|
||||
ucidef_set_interfaces_lan_wan "lan2 lan3 lan4 lan5" "wan"
|
||||
;;
|
||||
netgear,wax218|\
|
||||
netgear,wax620)
|
||||
ucidef_set_interface_lan "lan" "dhcp"
|
||||
|
@ -17,6 +17,8 @@ case "$FIRMWARE" in
|
||||
edgecore,eap102|\
|
||||
edimax,cax1800|\
|
||||
linksys,mx5300|\
|
||||
netgear,sxr80|\
|
||||
netgear,sxs80|\
|
||||
netgear,wax218|\
|
||||
netgear,wax620|\
|
||||
netgear,wax630|\
|
||||
|
@ -23,6 +23,13 @@ case "$board" in
|
||||
[ "$PHYNBR" = "0" ] && macaddr_add $(get_mac_label) 2 > /sys${DEVPATH}/macaddress
|
||||
[ "$PHYNBR" = "1" ] && macaddr_add $(get_mac_label) 3 > /sys${DEVPATH}/macaddress
|
||||
;;
|
||||
netgear,sxr80|\
|
||||
netgear,sxs80)
|
||||
[ "$PHYNBR" = "0" ] && mtd_get_mac_binary boarddata1 0x0c > /sys${DEVPATH}/macaddress
|
||||
#boarddata1 doesn't have a MAC for the 2G interface
|
||||
[ "$PHYNBR" = "1" ] && macaddr_setbit_la $(get_mac_label) > /sys${DEVPATH}/macaddress
|
||||
[ "$PHYNBR" = "2" ] && mtd_get_mac_binary boarddata1 0x12 > /sys${DEVPATH}/macaddress
|
||||
;;
|
||||
zbtlink,zbt-z800ax)
|
||||
[ "$PHYNBR" = "0" ] && macaddr_add $(get_mac_label) -1 > /sys${DEVPATH}/macaddress
|
||||
[ "$PHYNBR" = "1" ] && macaddr_add $(get_mac_label) -2 > /sys${DEVPATH}/macaddress
|
||||
|
@ -49,6 +49,8 @@ platform_do_upgrade() {
|
||||
dynalink,dl-wrx36|\
|
||||
edimax,cax1800|\
|
||||
netgear,rax120v2|\
|
||||
netgear,sxr80|\
|
||||
netgear,sxs80|\
|
||||
netgear,wax218|\
|
||||
netgear,wax620|\
|
||||
netgear,wax630|\
|
||||
|
@ -20,9 +20,9 @@ endef
|
||||
|
||||
define Host/Install
|
||||
$(INSTALL_DIR) $(STAGING_DIR_HOST)/share/aclocal
|
||||
$(INSTALL_DATA) ./src/m4/*.m4 $(STAGING_DIR_HOST)/share/aclocal/
|
||||
$(INSTALL_DATA) $(HOST_BUILD_DIR)/m4/*.m4 $(STAGING_DIR_HOST)/share/aclocal/
|
||||
$(INSTALL_DIR) $(STAGING_DIR_HOST)/bin
|
||||
$(INSTALL_BIN) ./src/bin/* $(STAGING_DIR_HOST)/bin/
|
||||
$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/* $(STAGING_DIR_HOST)/bin/
|
||||
$(LN) makeinfo $(STAGING_DIR_HOST)/bin/texi2any
|
||||
$(LN) makeinfo $(STAGING_DIR_HOST)/bin/texi2pdf
|
||||
$(LN) makeinfo $(STAGING_DIR_HOST)/bin/texi2dvi
|
||||
|
@ -13,8 +13,7 @@ PKG_RELEASE:=1
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
|
||||
define Host/Prepare
|
||||
mkdir -p $(HOST_BUILD_DIR)
|
||||
$(CP) ./src/* $(HOST_BUILD_DIR)/
|
||||
$(call Host/Prepare/Default)
|
||||
find $(HOST_BUILD_DIR) -name .svn | $(XARGS) rm -rf
|
||||
endef
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user