immortalwrt/target/linux
Davide Fioravanti 94e8908232 ipq40xx: add support for Netgear SRR60/SRS60 and RBR50/RBS50
The Netgear SRS60 and SRR60 (sold together as SRK60) are two almost
identical AC3000 routers. The SRR60 has one port labeled as wan while
the SRS60 not. The RBR50 and RBS50 (sold together as RBK50) have a
different external shape but they have an USB 2.0 port on the back.

This patch has been tested only on SRS60 and RBR50, but should work
on SRR60 and RBS50.

Hardware
--------
SoC:   Qualcomm IPQ4019 (717 MHz, 4 cores 4 threads)
RAM:   512MB DDR3
FLASH: 4GB EMMC
ETH:
  - 3x 10/100/1000 Mbps Ethernet
  - 1x 10/100/1000 Mbps Ethernet (WAN)
WIFI:
  - 2.4GHz: 1x IPQ4019 (2x2:2)
  - 5GHz:   1x IPQ4019 (2x2:2)
  - 5GHz:   1x QCA9984 (4x4:4)
  - 6 internal antennas
BTN:
  - 1x Reset button
  - 1x Sync button
  - 1x ON/OFF button
LEDS:
  - 8 leds controlled by TLC59208F (they can be switched on/off
    independendently but the color can by changed by GPIOs)
  - 1x Red led (Power)
  - 1x Green led (Power)
UART:
  - 115200-8-N-1

Everything works correctly.

Installation
------------
These routers have a dual partition system. However this firmware works
only on boot partition 1 and the OEM web interface will always flash on
the partition currently not booted.

The following steps will use the SRS60 firmware, but you have to chose
the right firmware for your router.

There are 2 ways to install Openwrt the first time:

1) Using NMRPflash
 1. Download nmrpflash (https://github.com/jclehner/nmrpflash)
 2. Put the openwrt-ipq40xx-generic-netgear_srs60-squashfs-factory.img
	file in the same folder of the nmrpflash executable
 3. Connect your pc to the router using the port near the power button.
 4. Run "nmrpflash -i XXX -f openwrt-ipq40xx-generic-netgear_srs60-squashfs-factory.img".
	Replace XXX with your network interface (can be identified by
	running "nmrpflash -L")
 5. Power on the router and wait for the flash to complete. After about
	a minute the router should boot directly to Openwrt. If nothing
	happens try to reboot the router. If you have problems flashing
	try to set "10.164.183.253" as your computer IP address

2) Without NMRPflash
The OEM web interface will always flash on the partition currently not
booted, so to flash OpenWrt for the first time you have to switch to
boot partition 2 and then flash the factory image directly from the OEM
web interface.

To switch on partition 2 you have to enable telnet first:
 1. Go to http://192.168.1.250/debug.htm and check "Enable Telnet".
 2. Connect through telent ("telnet 192.168.1.250") and login using
	admin/password.

	To read the current boot_part:
		artmtd -r boot_part

	To write the new boot_part:
		artmtd -w boot_part 02

	Then reboot the router and then check again the current booted
	partition

Now that you are on boot partition 2 you can flash the factory Openwrt
image directly from the OEM web interface.

Restore OEM Firmware
--------------------
 1. Download the stock firmware from official netgear support.
 2. Follow the nmrpflash procedure like above, using the official
	Netgear firmware (for example SRS60-V2.2.1.210.img)

        nmrpflash -i XXX -f SRS60-V2.2.1.210.img

Notes
-----
1) You can check and edit the boot partition in the Uboot shell using
	the UART connection.
	"boot_partition_show" shows the current boot partition
	"boot_partition_set 1" sets the current boot partition to 1

2) Router mac addresses:

   LAN XX:XX:XX:XX:XX:69
   WAN XX:XX:XX:XX:XX:6a
   WIFI 2G XX:XX:XX:XX:XX:69
   WIFI 5G XX:XX:XX:XX:XX:6b
   WIFI 5G (2nd) XX:XX:XX:XX:XX:6c

   LABEL XX:XX:XX:XX:XX:69

Signed-off-by: Davide Fioravanti <pantanastyle@gmail.com>
Signed-off-by: Robert Marko <robimarko@gmail.com>
[added 5.10 changes for 901-arm-boot-add-dts-files.patch, moved
sysupgrade mmc.sh to here and renamed it, various dtsi changes]
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2022-02-08 12:36:31 +08:00
..
apm821xx apm821xx: add missing export-dtb 2022-01-07 14:07:28 +08:00
archs38 archs38: update kernel version to 5.10 2021-11-10 23:59:07 +08:00
armvirt armvirt: enable MMIO_CMDLINE_DEVICES for firecracker support 2021-10-14 23:56:43 +08:00
at91 at91: drop /etc/config/firewall 2022-01-17 12:22:11 +08:00
ath25 ath25: disable build for ubnt2/5 2022-01-07 19:40:34 +08:00
ath79 ath79: ASUS RP-AC66 use flash till the end 2022-01-30 12:59:20 +08:00
bcm27xx kernel: refresh kernel 5.4 patches 2021-12-28 14:26:58 +08:00
bcm47xx bcm47xx: fix bgmac regression present in 5.10 kernel 2021-11-14 23:56:20 +08:00
bcm53xx kernel: bump 5.10 to 5.10.82 2021-12-20 11:16:13 +08:00
bcm63xx kernel: bump 5.4 to 5.4.162 2021-12-20 11:16:52 +08:00
bcm4908 bcm4908: add uboot-envtools to default packages 2021-12-21 23:55:17 +08:00
bmips kernel: Deactivate B53 symbols in generic configuration 2021-12-03 00:03:50 +08:00
gemini gemini: splash banner on framebuffer console 2021-10-11 23:55:36 +08:00
generic kernel: 5.10: drop broken-flash-reset patch 2022-01-30 12:55:42 +08:00
imx imx: update subtargets default kernel configs for 5.10 2021-12-22 11:32:14 +08:00
ipq40xx ipq40xx: add support for Netgear SRR60/SRS60 and RBR50/RBS50 2022-02-08 12:36:31 +08:00
ipq806x ipq806x: Netgear D7800: Fix RAM and enable PCIe #2 2022-01-27 12:22:31 +08:00
ipq807x kernel: Set CONFIG_RCU_CPU_STALL_TIMEOUT=21 2021-09-10 12:26:08 +08:00
kirkwood kirkwood: refresh kernel config 2021-10-06 23:56:13 +08:00
lantiq lantiq: increase fritz-cal-extract output limit 2022-01-17 12:26:45 +08:00
layerscape kernel: refresh kernel 5.4 patches 2021-12-28 14:26:58 +08:00
malta kernel: move two symbols to the generic kconfigs 2021-08-30 12:13:54 +08:00
mediatek mediatek: rework and fix mt7622-rfb1-ubi support 2022-01-20 12:25:11 +08:00
mpc85xx kernel: bump 5.10 to 5.10.80 2021-12-08 23:59:43 +08:00
mvebu kernel: refresh kernel 5.4 patches 2021-12-28 14:26:58 +08:00
mxs kernel: Set some options in generic configuration 2021-11-12 00:06:18 +08:00
octeon kernel: move two symbols to the generic kconfigs 2021-08-30 12:13:54 +08:00
octeontx octeontx: Refresh kernel configuration 2022-01-29 19:00:08 +08:00
omap uboot-omap: Remove omap3_overo configuration 2021-12-01 23:48:09 +08:00
oxnas kernel: refresh kernel 5.4 patches 2021-12-28 14:26:58 +08:00
pistachio kernel: bump 5.4 to 5.4.156 2021-12-08 23:56:51 +08:00
qoriq qoriq: add support for WatchGuard Firebox M300 2021-12-24 11:28:40 +08:00
ramips ramips: add support for Wavlink WL-WN535K1 2022-01-30 12:58:41 +08:00
realtek kernel: bump 5.4 to 5.4.162 2021-12-20 11:16:52 +08:00
rockchip rockchip: disable UHS modes for NanoPi R4S 2022-01-27 12:29:20 +08:00
sunxi sunxi: Use rtl8723bu-firmware instead of rtl8723bs-firmware 2022-01-04 23:50:21 +08:00
tegra kernel: Set CONFIG_RCU_CPU_STALL_TIMEOUT=21 2021-09-10 12:26:08 +08:00
uml uml: add Kernel 5.10 support via testing 2021-11-05 00:03:04 +08:00
x86 treewide: add missing kernel config for 5.10 2021-12-18 00:25:49 +08:00
zynq kernel: Set some options in generic configuration 2021-11-12 00:06:18 +08:00
Makefile