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 6057275978..02961298f7 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -301,6 +301,14 @@ mzk-ex750np) na930) set_usb_led "$boardname:blue:status" ;; +netgear,jwnr2010-v5) + ucidef_set_led_default "power" "power" "$boardname:green:power" "1" + ucidef_set_led_switch "lan1" "lan1" "$boardname:green:lan1" "switch0" "0x08" + ucidef_set_led_switch "lan2" "lan2" "$boardname:green:lan2" "switch0" "0x04" + ucidef_set_led_switch "lan3" "lan3" "$boardname:green:lan3" "switch0" "0x02" + ucidef_set_led_switch "lan4" "lan4" "$boardname:green:lan4" "switch0" "0x01" + ucidef_set_led_switch "wan" "wan" "$boardname:green:wan" "switch0" "0x10" + ;; newifi-d1) set_usb_led "$boardname:red:status" ;; 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 50d3a89bd8..301c051904 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -33,6 +33,7 @@ ramips_setup_interfaces() case $board in 11acnas|\ dir-615-h1|\ + netgear,jwnr2010-v5|\ w2914nsv2|\ zbt-we2026) ucidef_add_switch "switch0" \ @@ -534,6 +535,7 @@ ramips_setup_macs() tew-691gr) wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 3) ;; + netgear,jwnr2010-v5|\ tew-692gr) wan_mac=$(macaddr_add "$(mtd_get_mac_binary factory 4)" 1) ;; diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index 2f51add331..da209506f5 100644 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -38,6 +38,7 @@ get_status_led() { mzk-w300nh2|\ nbg-419n|\ nbg-419n2|\ + netgear,jwnr2010-v5|\ pwh2004|\ r6220|\ tplink,c20-v4|\ diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index ffdc5e73e0..359414a2a7 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -112,6 +112,7 @@ platform_check_image() { mzk-wdpr|\ nbg-419n|\ nbg-419n2|\ + netgear,jwnr2010-v5|\ newifi-d1|\ d-team,newifi-d2|\ nixcore-x1-8M|\ diff --git a/target/linux/ramips/dts/JWNR2010v5.dts b/target/linux/ramips/dts/JWNR2010v5.dts new file mode 100644 index 0000000000..4d632a6611 --- /dev/null +++ b/target/linux/ramips/dts/JWNR2010v5.dts @@ -0,0 +1,125 @@ +/dts-v1/; + +#include "mt7620n.dtsi" + +#include +#include + +/ { + compatible = "netgear,jwnr2010-v5", "ralink,mt7620n-soc"; + model = "Netgear JWNR2010v5"; + + gpio-leds { + compatible = "gpio-leds"; + + led_power: power { + label = "jwnr2010-v5:green:power"; + gpios = <&gpio0 21 GPIO_ACTIVE_LOW>; + }; + + wan { + label = "jwnr2010-v5:green:wan"; + gpios = <&gpio0 19 GPIO_ACTIVE_HIGH>; + }; + + wlan { + label = "jwnr2010-v5:green:wlan"; + gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0radio"; + }; + + lan1 { + label = "jwnr2010-v5:green:lan1"; + gpios = <&gpio2 3 GPIO_ACTIVE_LOW>; + }; + + lan2 { + label = "jwnr2010-v5:green:lan2"; + gpios = <&gpio2 2 GPIO_ACTIVE_LOW>; + }; + + lan3 { + label = "jwnr2010-v5:green:lan3"; + gpios = <&gpio2 1 GPIO_ACTIVE_LOW>; + }; + + lan4 { + label = "jwnr2010-v5:green:lan4"; + gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; + }; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + + reset { + label = "reset"; + gpios = <&gpio0 20 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; +}; + +&gpio2 { + status = "okay"; +}; + +&gpio3 { + status = "okay"; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <20000000>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x20000>; + read-only; + }; + + partition@20000 { + label = "firmware"; + reg = <0x20000 0x3c0000>; + }; + + partition@3e0000 { + label = "nvram"; + reg = <0x3e0000 0x10000>; + read-only; + }; + + factory: partition@3f0000 { + label = "factory"; + reg = <0x3f0000 0x10000>; + read-only; + }; + }; +}; + +ðernet { + mtd-mac-address = <&factory 0x4>; + mediatek,portmap = "wllll"; +}; + +&wmac { + ralink,mtd-eeprom = <&factory 0>; +}; + +&pinctrl { + state_default: pinctrl0 { + default { + ralink,group = "pa", "ephy", "wled"; + ralink,function = "gpio"; + }; + }; +}; diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk index f627627192..f37df03762 100644 --- a/target/linux/ramips/image/mt7620.mk +++ b/target/linux/ramips/image/mt7620.mk @@ -401,6 +401,25 @@ define Device/na930 endef TARGET_DEVICES += na930 +define Device/netgear_jwnr2010-v5 + DTS := JWNR2010v5 + BLOCKSIZE := 4k + IMAGE_SIZE := 3840k + DEVICE_TITLE := Netgear JWNR2010v5 + SERCOMM_HWNAME := N300 + SERCOMM_HWID := ASW + SERCOMM_HWVER := A001 + SERCOMM_SWVER := 0x0040 + IMAGES += factory.img + IMAGE/default := append-kernel | pad-to $$$$(BLOCKSIZE) | append-rootfs | \ + pad-rootfs + IMAGE/sysupgrade.bin := $$(IMAGE/default) | append-metadata | check-size $$$$(IMAGE_SIZE) + IMAGE/factory.img := pad-extra 128k | $$(IMAGE/default) | pad-to $$$$(BLOCKSIZE) | \ + sercom-footer | pad-to 128 | check-size $$$$(IMAGE_SIZE) | zip $$$$(SERCOMM_HWNAME).bin | \ + sercom-seal +endef +TARGET_DEVICES += netgear_jwnr2010-v5 + define Device/oy-0001 DTS := OY-0001 IMAGE_SIZE := $(ralink_default_fw_size_16M)