ath79/nand: add support for Netgear WNDR4300SW
authorStijn Segers <foss@volatilesystems.org>
Sat, 23 May 2020 08:50:03 +0000 (10:50 +0200)
committerAdrian Schmutzler <freifunk@adrianschmutzler.de>
Sun, 24 May 2020 12:44:00 +0000 (14:44 +0200)
This patch adds support for the WNDR4300SW, marketed by California ISP
SureWest (hence the 'SW' suffix). Hardware wise, it's identical to the
WNDR4300 v1.

Specifications:
* SoC: Atheros AR9344
* RAM: 128 MB
* Flash: 128 MB NAND flash
* WiFi: Atheros AR9580 (5 GHz) and AR9344 (2,4 GHz)
* Ethernet: 5x 1000Base-T
* LED: Power, WAN, LAN, WiFi, USB, WPS
* UART: on board, to the right of the RF shield at the top of the board

Installation:

* Flashing through the OEM web interface:
  + Connect your computer to the router with an ethernet cable and browse
    to http://192.168.1.1/
  + Log in with the default credentials are admin:password
  + Browse to Advanced > Administration > Firmware Upgrade in the Netgear
    interface
  + Upload the Openwrt firmware: openwrt-ath79-nand-netgear_wndr4300sw-squashfs-factory.img
  + Proceed with the firmware installation and give the device a few
    minutes to finish and reboot.

* Flashing through TFTP:
  + Configure your wired client with a static IP in the 192.168.1.x range,
    e.g. 192.168.1.10 and netmask 255.255.255.0.
  + Power off the router.
  + Press and hold the RESET button (the factory reset button on the bottom
    of the device, with the red circle around it) and turn the router on
    while keeping the button pressed.
  + The power LED will start flashing orange. You can release the button
    once it switches to flashing green.
  + Transfer the image over TFTP:
    $ tftp 192.168.1.1 -m binary -c put openwrt-ath79-nand-netgear_wndr4300sw-squashfs-factory.img

Signed-off-by: Stijn Segers <foss@volatilesystems.org>
target/linux/ath79/dts/ar9344_netgear_wndr4300sw.dts [new file with mode: 0644]
target/linux/ath79/image/nand.mk
target/linux/ath79/nand/base-files/etc/board.d/01_leds
target/linux/ath79/nand/base-files/etc/board.d/02_network
target/linux/ath79/nand/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom

diff --git a/target/linux/ath79/dts/ar9344_netgear_wndr4300sw.dts b/target/linux/ath79/dts/ar9344_netgear_wndr4300sw.dts
new file mode 100644 (file)
index 0000000..fb90eee
--- /dev/null
@@ -0,0 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/dts-v1/;
+
+#include "ar9344_netgear_wndr.dtsi"
+
+/ {
+       compatible = "netgear,wndr4300sw", "qca,ar9344";
+       model = "Netgear WNDR4300SW";
+};
index 3ccd19914f760475ed7e88982ce3132268cfa872..dc06b65371423f89107c596c9f6ae94357959855 100644 (file)
@@ -172,6 +172,16 @@ define Device/netgear_wndr4300
 endef
 TARGET_DEVICES += netgear_wndr4300
 
+define Device/netgear_wndr4300sw
+  SOC := ar9344
+  DEVICE_MODEL := WNDR4300SW
+  NETGEAR_KERNEL_MAGIC := 0x33373033
+  NETGEAR_BOARD_ID := WNDR4300SW
+  NETGEAR_HW_ID := 29763948+0+128+128+2x2+3x3
+  $(Device/netgear_ath79_nand)
+endef
+TARGET_DEVICES += netgear_wndr4300sw
+
 define Device/netgear_wndr4300-v2
   SOC := qca9563
   DEVICE_MODEL := WNDR4300
index d9989ec5382271b4cc547c897be1681809cc2a12..4f601849fcb780515f08e9434270ec30b5f70494 100755 (executable)
@@ -14,6 +14,7 @@ glinet,gl-ar300m-nor)
        ;;
 netgear,wndr3700-v4|\
 netgear,wndr4300|\
+netgear,wndr4300sw|\
 netgear,wndr4300-v2|\
 netgear,wndr4500-v3)
        ucidef_set_led_switch "wan-amber" "WAN (amber)" "netgear:amber:wan" "switch0" "0x20"
index b2191eed92f9fab380aabd78a23d8543a55053ba..84cdfd99bb77c339ee66fc787ff6f427b92ef351 100755 (executable)
@@ -22,6 +22,7 @@ ath79_setup_interfaces()
                ;;
        netgear,wndr3700-v4|\
        netgear,wndr4300|\
+       netgear,wndr4300sw|\
        netgear,wndr4300-v2|\
        netgear,wndr4500-v3)
                ucidef_add_switch "switch0" \
@@ -44,6 +45,7 @@ ath79_setup_macs()
        case "$board" in
        netgear,wndr3700-v4|\
        netgear,wndr4300|\
+       netgear,wndr4300sw|\
        netgear,wndr4300-v2|\
        netgear,wndr4500-v3)
                wan_mac=$(mtd_get_mac_binary caldata 0x6)
index f5fae46dfb7050f90e80ae069732eb8faa682c65..355be93ead6dc2baf3f69d8953c7683b76544170 100644 (file)
@@ -11,6 +11,7 @@ case "$FIRMWARE" in
        case $board in
        netgear,wndr3700-v4|\
        netgear,wndr4300|\
+       netgear,wndr4300sw|\
        netgear,wndr4300-v2|\
        netgear,wndr4500-v3)
                caldata_extract "caldata" 0x1000 0x440
@@ -24,6 +25,7 @@ case "$FIRMWARE" in
        case $board in
        netgear,wndr3700-v4|\
        netgear,wndr4300|\
+       netgear,wndr4300sw|\
        netgear,wndr4300-v2|\
        netgear,wndr4500-v3)
                caldata_extract "caldata" 0x5000 0x440