diff options
author | Thibaut VARENE <hacks@slashdirt.org> | 2017-01-18 11:34:56 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jo@mein.io> | 2017-04-28 17:07:24 +0200 |
commit | 1aee42c6a9d297e5a8bd241318338217b86c3070 (patch) | |
tree | 209cf486541bfc4edeaa6fb61daa382a93dcbe1e /target/linux | |
parent | 846457fdbffaffdf44d668715e88cb21765ec6c9 (diff) | |
download | mtk-20170518-1aee42c6a9d297e5a8bd241318338217b86c3070.zip mtk-20170518-1aee42c6a9d297e5a8bd241318338217b86c3070.tar.gz mtk-20170518-1aee42c6a9d297e5a8bd241318338217b86c3070.tar.bz2 |
ramips: add support for Netgear WN3000RPv3
This patch adds support for the Netgear WN3000RPv3
http://www.netgear.com/support/product/wn3000rpv3.aspx
Specifications:
- SoC: MediaTek MT7620A (580MHz, ramips)
- RAM: 32MB DDR
- Storage: 8MB NOR SPI flash
- Wireless: builtin MT7620A, 2x2:2 with u.FL connectors
- Ethernet: 1x100M
- Serial: JP1 header, 57600-8N1
- Stock firmware based on OpenWRT Kamikaze
Like the EX2700, the bootloader expects a secondary image signature,
see https://forum.openwrt.org/viewtopic.php?pid=312577#p312577
This is why the same fakeroot image is used for the WN3000
Signed-off-by: Thibaut VARENE <hacks@slashdirt.org>
Diffstat (limited to 'target/linux')
-rwxr-xr-x | target/linux/ramips/base-files/etc/board.d/01_leds | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/etc/board.d/02_network | 1 | ||||
-rw-r--r-- | target/linux/ramips/base-files/etc/diag.sh | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/lib/ramips.sh | 3 | ||||
-rwxr-xr-x | target/linux/ramips/base-files/lib/upgrade/platform.sh | 1 | ||||
-rw-r--r-- | target/linux/ramips/dts/WN3000RPV3.dts | 143 | ||||
-rw-r--r-- | target/linux/ramips/image/mt7620.mk | 11 |
7 files changed, 163 insertions, 2 deletions
diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds index 3d3aa0a..545d6a4 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -155,7 +155,8 @@ vr500) dir-860l-b1) ucidef_set_led_netdev "wan" "wan" "$board:green:net" "eth0.2" ;; -ex2700) +ex2700|\ +wn3000rpv3) ucidef_set_led_default "power_r" "POWER (red)" "$board:red:power" "0" set_wifi_led "$board:green:router" ;; diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network index ebca378..8b75fe1 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -58,6 +58,7 @@ ramips_setup_interfaces() timecloud|\ w150m|\ widora-neo|\ + wn3000rpv3|\ wnce2001|\ zbt-cpe102|\ zte-q7) diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index 5367e65..9499833 100644 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -53,7 +53,8 @@ get_status_led() { jhr-n825r|\ mpr-a1|\ mpr-a2|\ - mzk-ex750np) + mzk-ex750np|\ + wn3000rpv3) status_led="$board:red:power" ;; ac1200pro|\ diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index 6afe709..8292da1 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -553,6 +553,9 @@ ramips_board_detect() { *"WMR-300") name="wmr-300" ;; + *"WN3000RPv3") + name="wn3000rpv3" + ;; *"WNCE2001") name="wnce2001" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index 0f2510c..c6ad8ca 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -157,6 +157,7 @@ platform_check_image() { wli-tx4-ag300n|\ wlr-6000|\ wmr-300|\ + wn3000rpv3|\ wnce2001|\ wndr3700v5|\ wr512-3gn|\ diff --git a/target/linux/ramips/dts/WN3000RPV3.dts b/target/linux/ramips/dts/WN3000RPV3.dts new file mode 100644 index 0000000..933cf1a --- /dev/null +++ b/target/linux/ramips/dts/WN3000RPV3.dts @@ -0,0 +1,143 @@ +/* This file is released into the public domain */ + +/dts-v1/; + +#include "mt7620a.dtsi" + +#include <dt-bindings/input/input.h> +#include <dt-bindings/gpio/gpio.h> + +/ { + compatible = "ralink,mt7620a-soc"; + model = "Netgear WN3000RPv3"; + + chosen { + bootargs = "console=ttyS0,57600"; + }; + + gpio-leds { + compatible = "gpio-leds"; + + power_g { + label = "wn3000rpv3:green:power"; + gpios = <&gpio0 9 GPIO_ACTIVE_LOW>; + default-state = "on"; + }; + + power_r { + label = "wn3000rpv3:red:power"; + gpios = <&gpio0 11 GPIO_ACTIVE_LOW>; + }; + + client_g { + label = "wn3000rpv3:green:client"; + gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; + }; + + client_r { + label = "wn3000rpv3:red:client"; + gpios = <&gpio0 10 GPIO_ACTIVE_LOW>; + }; + + router_g { + label = "wn3000rpv3:green:router"; + gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; + }; + + router_r { + label = "wn3000rpv3:red:router"; + gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; + }; + + wps { + label = "wn3000rpv3:green:wps"; + gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; + }; + + l_arrow { + label = "wn3000rpv3:blue:leftarrow"; + gpios = <&gpio0 7 GPIO_ACTIVE_LOW>; + }; + + r_arrow { + label = "wn3000rpv3:blue:rightarrow"; + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + + reset { + label = "reset"; + gpios = <&gpio0 1 GPIO_ACTIVE_LOW>; + linux,code = <KEY_RESTART>; + }; + + wps { + label = "wps"; + gpios = <&gpio0 2 GPIO_ACTIVE_LOW>; + linux,code = <KEY_WPS_BUTTON>; + }; + }; +}; + +&gpio1 { + status = "okay"; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <10000000>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + read-only; + }; + + partition@40000 { + label = "firmware"; + reg = <0x40000 0x7b0000>; + }; + + art: partition@7f0000 { + label = "art"; + reg = <0x7f0000 0x10000>; + read-only; + }; + }; +}; + +ðernet { + mtd-mac-address = <&art 0x0>; +}; + +&wmac { + mtd-mac-address = <&art 0x6>; + ralink,mtd-eeprom = <&art 0x1000>; +}; + +&pinctrl { + state_default: pinctrl0 { + default { + ralink,group = "i2c", "uartf", "spi refclk"; + ralink,function = "gpio"; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk index 1889bcf..42e0ab6 100644 --- a/target/linux/ramips/image/mt7620.mk +++ b/target/linux/ramips/image/mt7620.mk @@ -75,6 +75,17 @@ define Device/ex2700 endef TARGET_DEVICES += ex2700 +define Device/wn3000rpv3 + DTS := WN3000RPV3 + BLOCKSIZE := 4k + IMAGES += factory.bin + KERNEL := $(KERNEL_DTB) | uImage lzma | pad-kernel-ex2700 + IMAGE/factory.bin := $$(sysupgrade_bin) | check-size $$$$(IMAGE_SIZE) | \ + netgear-header -B WN3000RPv3 -H 29764836+8+0+32+2x2+0 + DEVICE_TITLE := Netgear WN3000RPv3 +endef +TARGET_DEVICES += wn3000rpv3 + define Device/wt3020-4M DTS := WT3020-4M BLOCKSIZE := 4k |