Last active
November 13, 2023 15:15
-
-
Save kuoruan/bbb910d129a0bb3be5ee5f022e3ebaf8 to your computer and use it in GitHub Desktop.
WNDR4300 OpenWrt nand 128M
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
From 9d2f2c004dad5d152205097ca4e4430f2027832a Mon Sep 17 00:00:00 2001 | |
From: Xingwang Liao <[email protected]> | |
Date: Mon, 13 Nov 2023 15:13:00 +0000 | |
Subject: [PATCH] feat: update wndr4300 nand dts | |
--- | |
.../ath79/dts/ar9344_netgear_wndr-128m.dtsi | 260 ++++++++++++++++++ | |
.../ath79/dts/ar9344_netgear_wndr4300.dts | 2 +- | |
target/linux/ath79/image/nand.mk | 19 +- | |
3 files changed, 279 insertions(+), 2 deletions(-) | |
create mode 100644 target/linux/ath79/dts/ar9344_netgear_wndr-128m.dtsi | |
diff --git a/target/linux/ath79/dts/ar9344_netgear_wndr-128m.dtsi b/target/linux/ath79/dts/ar9344_netgear_wndr-128m.dtsi | |
new file mode 100644 | |
index 0000000000..84a782b176 | |
--- /dev/null | |
+++ b/target/linux/ath79/dts/ar9344_netgear_wndr-128m.dtsi | |
@@ -0,0 +1,260 @@ | |
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT | |
+ | |
+#include "ar9344.dtsi" | |
+ | |
+#include <dt-bindings/gpio/gpio.h> | |
+#include <dt-bindings/input/input.h> | |
+#include <dt-bindings/mtd/partitions/uimage.h> | |
+ | |
+/ { | |
+ chosen { | |
+ bootargs = "console=ttyS0,115200n8"; | |
+ }; | |
+ | |
+ aliases { | |
+ led-boot = &led_power_amber; | |
+ led-failsafe = &led_power_amber; | |
+ led-running = &led_power_green; | |
+ led-upgrade = &led_power_amber; | |
+ label-mac-device = ð0; | |
+ }; | |
+ | |
+ keys { | |
+ compatible = "gpio-keys"; | |
+ | |
+ wps { | |
+ label = "wps"; | |
+ linux,code = <KEY_WPS_BUTTON>; | |
+ gpios = <&gpio 12 GPIO_ACTIVE_LOW>; | |
+ }; | |
+ | |
+ reset { | |
+ label = "reset"; | |
+ linux,code = <KEY_RESTART>; | |
+ gpios = <&gpio 21 GPIO_ACTIVE_LOW>; | |
+ }; | |
+ | |
+ rfkill { | |
+ label = "rfkill"; | |
+ linux,code = <KEY_RFKILL>; | |
+ gpios = <&gpio 15 GPIO_ACTIVE_LOW>; | |
+ }; | |
+ }; | |
+ | |
+ leds: leds { | |
+ compatible = "gpio-leds"; | |
+ | |
+ pinctrl-names = "default"; | |
+ pinctrl-0 = <&enable_gpio_11>; | |
+ | |
+ led_power_green: power_green { | |
+ label = "green:power"; | |
+ gpios = <&gpio 0 GPIO_ACTIVE_LOW>; | |
+ }; | |
+ | |
+ led_power_amber: power_amber { | |
+ label = "amber:power"; | |
+ gpios = <&gpio 2 GPIO_ACTIVE_LOW>; | |
+ default-state = "keep"; | |
+ }; | |
+ | |
+ wlan2g_green { | |
+ label = "green:wlan2g"; | |
+ gpios = <&gpio 11 GPIO_ACTIVE_LOW>; | |
+ linux,default-trigger = "phy0tpt"; | |
+ }; | |
+ | |
+ wlan5g_blue { | |
+ label = "blue:wlan5g"; | |
+ gpios = <&gpio 14 GPIO_ACTIVE_LOW>; | |
+ linux,default-trigger = "phy1tpt"; | |
+ }; | |
+ | |
+ wps_green { | |
+ label = "green:wps"; | |
+ gpios = <&gpio 16 GPIO_ACTIVE_LOW>; | |
+ }; | |
+ | |
+ wps_amber { | |
+ label = "amber:wps"; | |
+ gpios = <&gpio 17 GPIO_ACTIVE_LOW>; | |
+ }; | |
+ }; | |
+}; | |
+ | |
+&pinmux { | |
+ enable_gpio_11: pinmux_enable_gpio_11 { | |
+ pinctrl-single,bits = <0x8 0x0 0xff000000>; | |
+ }; | |
+}; | |
+ | |
+&nand { | |
+ status = "okay"; | |
+ | |
+ partitions { | |
+ compatible = "fixed-partitions"; | |
+ #address-cells = <1>; | |
+ #size-cells = <1>; | |
+ | |
+ partition@0 { | |
+ label = "u-boot"; | |
+ reg = <0x0 0x40000>; | |
+ read-only; | |
+ }; | |
+ | |
+ partition@40000 { | |
+ label = "u-boot-env"; | |
+ reg = <0x40000 0x40000>; | |
+ }; | |
+ | |
+ caldata: partition@80000 { | |
+ label = "caldata"; | |
+ reg = <0x80000 0x40000>; | |
+ read-only; | |
+ }; | |
+ | |
+ partition@c0000 { | |
+ label = "pot"; | |
+ reg = <0xc0000 0x80000>; | |
+ }; | |
+ | |
+ partition@140000 { | |
+ label = "language"; | |
+ reg = <0x140000 0x200000>; | |
+ }; | |
+ | |
+ partition@340000 { | |
+ label = "config"; | |
+ reg = <0x340000 0x80000>; | |
+ }; | |
+ | |
+ partition@3c0000 { | |
+ label = "traffic_meter"; | |
+ reg = <0x3c0000 0x300000>; | |
+ }; | |
+ | |
+ kernel@6c0000 { | |
+ label = "kernel"; | |
+ reg = <0x6c0000 0x400000>; | |
+ }; | |
+ | |
+ partition@ac0000 { | |
+ label = "ubi"; | |
+ reg = <0xac0000 0x7500000>; | |
+ }; | |
+ | |
+ partition@6c0000 { | |
+ label = "firmware"; | |
+ reg = <0x6c0000 0x7900000>; | |
+ compatible = "netgear,uimage"; | |
+ }; | |
+ | |
+ partition@7fc0000 { | |
+ label = "caldata_backup"; | |
+ reg = <0x7fc0000 0x40000>; | |
+ read-only; | |
+ }; | |
+ }; | |
+}; | |
+ | |
+&ref { | |
+ clock-frequency = <40000000>; | |
+}; | |
+ | |
+&builtin_switch { | |
+ resets = <&rst 8>, <&rst 12>; | |
+ reset-names = "switch", "switch-analog"; | |
+}; | |
+ | |
+&mdio0 { | |
+ status = "okay"; | |
+ | |
+ phy0: ethernet-phy@0 { | |
+ reg = <0>; | |
+ phy-mode = "rgmii"; | |
+ qca,mib-poll-interval = <500>; | |
+ | |
+ qca,ar8327-initvals = < | |
+ 0x04 0x07600000 | |
+ 0x0c 0x01000000 | |
+ 0x10 0xc1000000 | |
+ 0x50 0xcc35cc35 | |
+ 0x54 0xcb37cb37 | |
+ 0x58 0x00000000 | |
+ 0x5c 0x00f3cf00 | |
+ 0x7c 0x0000007e | |
+ 0x94 0x0000007e | |
+ >; | |
+ }; | |
+}; | |
+ | |
+ð0 { | |
+ status = "okay"; | |
+ | |
+ /* default for ar934x, except for 1000M */ | |
+ pll-data = <0x06000000 0x00000101 0x00001616>; | |
+ | |
+ nvmem-cells = <&macaddr_caldata_0>; | |
+ nvmem-cell-names = "mac-address"; | |
+ | |
+ phy-mode = "rgmii"; | |
+ phy-handle = <&phy0>; | |
+}; | |
+ | |
+&gpio { | |
+ lna0 { | |
+ gpio-hog; | |
+ line-name = "netgear:ext:lna0"; | |
+ gpios = <18 GPIO_ACTIVE_HIGH>; | |
+ output-high; | |
+ }; | |
+ | |
+ lna1 { | |
+ gpio-hog; | |
+ line-name = "netgear:ext:lna1"; | |
+ gpios = <19 GPIO_ACTIVE_HIGH>; | |
+ output-high; | |
+ }; | |
+}; | |
+ | |
+&wmac { | |
+ status = "okay"; | |
+ | |
+ nvmem-cells = <&macaddr_caldata_0>, <&cal_art_1000>; | |
+ nvmem-cell-names = "mac-address", "calibration"; | |
+}; | |
+ | |
+&pcie { | |
+ status = "okay"; | |
+ | |
+ ath9k: wifi@0,0 { | |
+ compatible = "pci168c,0033"; | |
+ reg = <0x0000 0 0 0 0>; | |
+ nvmem-cells = <&macaddr_caldata_c>, <&cal_art_5000>; | |
+ nvmem-cell-names = "mac-address", "calibration"; | |
+ #gpio-cells = <2>; | |
+ gpio-controller; | |
+ }; | |
+}; | |
+ | |
+&caldata { | |
+ compatible = "nvmem-cells"; | |
+ #address-cells = <1>; | |
+ #size-cells = <1>; | |
+ | |
+ macaddr_caldata_0: macaddr@0 { | |
+ reg = <0x0 0x6>; | |
+ }; | |
+ | |
+ macaddr_caldata_c: macaddr@c { | |
+ reg = <0xc 0x6>; | |
+ }; | |
+ | |
+ cal_art_1000: cal@1000 { | |
+ reg = <0x1000 0x440>; | |
+ }; | |
+ | |
+ cal_art_5000: cal@5000 { | |
+ reg = <0x5000 0x440>; | |
+ }; | |
+}; | |
diff --git a/target/linux/ath79/dts/ar9344_netgear_wndr4300.dts b/target/linux/ath79/dts/ar9344_netgear_wndr4300.dts | |
index b9b8b78e74..8f1fb0cb90 100644 | |
--- a/target/linux/ath79/dts/ar9344_netgear_wndr4300.dts | |
+++ b/target/linux/ath79/dts/ar9344_netgear_wndr4300.dts | |
@@ -1,6 +1,6 @@ | |
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT | |
-#include "ar9344_netgear_wndr.dtsi" | |
+#include "ar9344_netgear_wndr-128m.dtsi" | |
#include "ar9344_netgear_wndr_wan.dtsi" | |
#include "ar9344_netgear_wndr_usb.dtsi" | |
diff --git a/target/linux/ath79/image/nand.mk b/target/linux/ath79/image/nand.mk | |
index 5c9e190e19..bae0f78096 100644 | |
--- a/target/linux/ath79/image/nand.mk | |
+++ b/target/linux/ath79/image/nand.mk | |
@@ -332,6 +332,23 @@ define Device/netgear_ath79_nand | |
UBINIZE_OPTS := -E 5 | |
endef | |
+define Device/netgear_ath79_nand-128m | |
+ DEVICE_VENDOR := NETGEAR | |
+ DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport | |
+ KERNEL_SIZE := 4096k | |
+ BLOCKSIZE := 128k | |
+ PAGESIZE := 2048 | |
+ IMAGE_SIZE := 121m | |
+ KERNEL := kernel-bin | append-dtb | lzma | \ | |
+ pad-offset $$(BLOCKSIZE) 129 | uImage lzma | pad-extra 1 | \ | |
+ append-uImage-fakehdr filesystem $$(UIMAGE_MAGIC) | |
+ IMAGES := sysupgrade.bin factory.img | |
+ IMAGE/factory.img := append-kernel | pad-to $$$$(KERNEL_SIZE) | \ | |
+ append-ubi | check-size | netgear-dni | |
+ IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata | |
+ UBINIZE_OPTS := -E 5 | |
+endef | |
+ | |
define Device/netgear_pgzng1 | |
SOC := ar9344 | |
DEVICE_MODEL := PGZNG1 | |
@@ -376,7 +393,7 @@ define Device/netgear_wndr4300 | |
UIMAGE_MAGIC := 0x33373033 | |
NETGEAR_BOARD_ID := WNDR4300 | |
NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3 | |
- $(Device/netgear_ath79_nand) | |
+ $(Device/netgear_ath79_nand-128m) | |
endef | |
TARGET_DEVICES += netgear_wndr4300 | |
-- | |
2.42.0 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment