ath79: add support for the Netgear WNDRMAC v1
authorRenaud Lepage <root@cybikbase.com>
Sun, 10 May 2020 22:10:20 +0000 (15:10 -0700)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Wed, 10 Jun 2020 23:44:13 +0000 (01:44 +0200)
The Netgear WNDRMAC v1 is a hardware variant of the Netgear WNDR3700 v2

Specifications
==============
* SoC: Atheros AR7161
* RAM: 64mb
* Flash on board: 16mb
* WiFi: Atheros AR9220 (a/n), Atheros AR9223 (b/g/n)
* Ethernet: RealTek RTL8366SR (1xWAN, 4xLAN, Gigabit)
* Power: 12 VDC, 2.5 A
* Full specs on [openwrt.org](https://openwrt.org/toh/hwdata/netgear/netgear_wndrmac_v1)

Flash Instructions
==================
It is possible to use the OEM Upgrade page to install the `factory`
variant of the firmware.

After the initial upgrade, you will need to telnet into the router
(default IP 192.168.1.1) to install anything. You may install LuCI
this way. At this point, you will have a web interface to configure
OpenWRT on the WNDRMAC v1.

Please use the `sysupgrade` variant for subsequent flashes.

Recovery Instructions
=====================
A TFTP-based recovery flash is possible if the need arises. Please refer
to the WNDR3700 page on openwrt.org for details.

https://openwrt.org/toh/netgear/wndr3700#troubleshooting_and_recovery

Signed-off-by: Renaud Lepage <root@cybikbase.com>
[update DTSI include name]
Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
package/boot/uboot-envtools/files/ath79
target/linux/ath79/dts/ar7161_netgear_wndrmac-v1.dts [new file with mode: 0644]
target/linux/ath79/generic/base-files/etc/board.d/02_network
target/linux/ath79/generic/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom
target/linux/ath79/image/generic.mk

index 928a46ca8e6416e6ae023aa1723bcf9e749621f4..3754b521a44a68bb7407d4f2633f9e1b8b952547 100644 (file)
@@ -52,7 +52,8 @@ glinet,gl-ar150)
        ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x8000" "0x10000"
        ;;
 netgear,wndr3700|\
-netgear,wndr3700-v2)
+netgear,wndr3700-v2|\
+netgear,wndrmac-v1)
        ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x10000"
        ;;
 netgear,wndr3700-v4|\
diff --git a/target/linux/ath79/dts/ar7161_netgear_wndrmac-v1.dts b/target/linux/ath79/dts/ar7161_netgear_wndrmac-v1.dts
new file mode 100644 (file)
index 0000000..d2dbcaa
--- /dev/null
@@ -0,0 +1,34 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include "ar7161_netgear_wndr.dtsi"
+
+/ {
+       compatible = "netgear,wndrmac-v1", "qca,ar7161";
+       model = "Netgear WNDRMAC v1";
+};
+
+&partitions {
+       partition@0 {
+               label = "u-boot";
+               reg = <0x000000 0x050000>;
+               read-only;
+       };
+
+       partition@50000 {
+               label = "u-boot-env";
+               reg = <0x050000 0x020000>;
+       };
+
+       partition@70000 {
+               label = "firmware";
+               reg = <0x070000 0xf80000>;
+               compatible = "netgear,uimage";
+       };
+
+       art: partition@ff0000 {
+               label = "art";
+               reg = <0xff0000 0x010000>;
+               read-only;
+       };
+};
index d7adf7e1843ba1112cc09ca05a972a4cdfc682a5..23a945aadc56e2671996f98a2ad51c42e83b86d8 100755 (executable)
@@ -205,6 +205,7 @@ ath79_setup_interfaces()
        netgear,wndr3700-v2|\
        netgear,wndr3800|\
        netgear,wndr3800ch|\
+       netgear,wndrmac-v1|\
        netgear,wndrmac-v2)
                ucidef_set_interface_wan "eth1"
                ucidef_add_switch "switch0" \
@@ -432,6 +433,7 @@ ath79_setup_macs()
        netgear,wndr3700|\
        netgear,wndr3700-v2|\
        netgear,wndr3800|\
+       netgear,wndrmac-v1|\
        netgear,wndrmac-v2)
                lan_mac=$(macaddr_setbit_la "$(mtd_get_mac_binary art 0x0)")
                ;;
index c5fc02519eb2740330d7d04afd2defcb77502685..fa36aab4fe5e856ecbd770cb0e2e3f98ba88ad2c 100644 (file)
@@ -128,6 +128,7 @@ case "$FIRMWARE" in
        netgear,wndr3700-v2|\
        netgear,wndr3800|\
        netgear,wndr3800ch|\
+       netgear,wndrmac-v1|\
        netgear,wndrmac-v2)
                caldata_extract "art" 0x1000 0xeb8
                ;;
@@ -147,6 +148,7 @@ case "$FIRMWARE" in
        netgear,wndr3700-v2|\
        netgear,wndr3800|\
        netgear,wndr3800ch|\
+       netgear,wndrmac-v1|\
        netgear,wndrmac-v2)
                caldata_extract "art" 0x5000 0xeb8
                ;;
index c66f0beae13582f815db8d19aad2421a124d2111..05b769b9c371d04c312df5c894629ffc36201218 100644 (file)
@@ -932,6 +932,18 @@ define Device/netgear_wndr3800ch
 endef
 TARGET_DEVICES += netgear_wndr3800ch
 
+define Device/netgear_wndrmac-v1
+  $(Device/netgear_wndr3x00)
+  DEVICE_MODEL := WNDRMAC
+  DEVICE_VARIANT := v1
+  NETGEAR_KERNEL_MAGIC := 0x33373031
+  NETGEAR_BOARD_ID := WNDRMAC
+  NETGEAR_HW_ID := 29763654+16+64
+  IMAGE_SIZE := 15872k
+  SUPPORTED_DEVICES += wndr3700
+endef
+TARGET_DEVICES += netgear_wndrmac-v1
+
 define Device/netgear_wndrmac-v2
   $(Device/netgear_wndr3x00)
   DEVICE_MODEL := WNDRMAC