Hi, few comments inline.
On 19/01/2016 22:42, Joseph C. Lehner wrote: > This patch adds support for the Netgear EX2700 and builds an approriate > sysupgrade image. > > What's missing is the option to build a factory image flashable via the > router's stock web interface, but this approach is hindered by the fact > that u-boot operforms an additional integrity check, which expects a > uImage header in the last 64 bytes of the "kernel" partition, which > the bootloader expects to be 960k, a size exceeded by the standard > OpenWrt kernel. > > Signed-off-by: Joseph C. Lehner <joseph.c.leh...@gmail.com> > > --- > > 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 c3a81a4..62478f0 100755 > --- a/target/linux/ramips/base-files/etc/board.d/01_leds > +++ b/target/linux/ramips/base-files/etc/board.d/01_leds > @@ -121,6 +121,10 @@ dir-615-h1) > dir-620-d1) > set_wifi_led "$board:green:wifi" > ;; > +ex2700) > + ucidef_set_led_default "power_r" "POWER (red)" "$board:red:power" "0" > + set_wifi_led "$board:router:green" > + ;; please stick to the alphabetical ordering (there are 2 more cases like this later on in the patch. please fix all 3 and resend the patch rest looks good John > dir-810l|\ > mzk-dp150n) > ucidef_set_led_default "power" "power" "$board:green:power" "1" > 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 dafa3e9..9853729 100755 > --- a/target/linux/ramips/base-files/etc/board.d/02_network > +++ b/target/linux/ramips/base-files/etc/board.d/02_network > @@ -141,7 +141,8 @@ ramips_setup_interfaces() > ucidef_add_switch "switch0" \ > "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0" > ;; > - cf-wr800n) > + cf-wr800n|\ > + ex2700) > ucidef_add_switch "switch0" \ > "4:lan" "6t@eth0" > ;; > diff --git a/target/linux/ramips/base-files/etc/diag.sh > b/target/linux/ramips/base-files/etc/diag.sh > index acc500b..59c5965 100644 > --- a/target/linux/ramips/base-files/etc/diag.sh > +++ b/target/linux/ramips/base-files/etc/diag.sh > @@ -34,6 +34,7 @@ get_status_led() { > a5-v11|\ > d105|\ > dcs-930l-b1|\ > + ex2700|\ > hlk-rm04|\ > mpr-a1|\ > mpr-a2) > diff --git a/target/linux/ramips/base-files/lib/ramips.sh > b/target/linux/ramips/base-files/lib/ramips.sh > index 8025a40..aed8350 100755 > --- a/target/linux/ramips/base-files/lib/ramips.sh > +++ b/target/linux/ramips/base-files/lib/ramips.sh > @@ -154,6 +154,9 @@ ramips_board_detect() { > *"ESR-9753") > name="esr-9753" > ;; > + *"EX2700") > + name="ex2700"; > + ;; > *"F5D8235 v1") > name="f5d8235-v1" > ;; > diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh > b/target/linux/ramips/base-files/lib/upgrade/platform.sh > index 39b5f94..78edd22 100755 > --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh > +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh > @@ -51,6 +51,7 @@ platform_check_image() { > dir-810l|\ > e1700|\ > esr-9753|\ > + ex2700|\ > f7c027|\ > firewrt|\ > fonera20n|\ > diff --git a/target/linux/ramips/dts/EX2700.dts > b/target/linux/ramips/dts/EX2700.dts > new file mode 100644 > index 0000000..b63949a > --- /dev/null > +++ b/target/linux/ramips/dts/EX2700.dts > @@ -0,0 +1,153 @@ > +/* > + * Device Tree file for the Netgear EX2700 > + * > + * Copyright (C) 2016 Joseph C. Lehner <joseph.c.leh...@gmail.com> > + * > + * This file is licensed under the terms of the GNU General Public > + * License version 2. This program is licensed "as is" without any > + * warranty of any kind, whether express or implied. > + */ > + > +/dts-v1/; > + > +/include/ "mt7620a.dtsi" > + > +/ { > + compatible = "ralink,mt7620a-soc"; > + model = "Netgear EX2700"; > + > + chosen { > + bootargs = "console=ttyS0,57600"; > + }; > + > + palmbus@10000000 { > + > + gpio0: gpio@600 { > + status = "okay"; > + }; > + > + gpio1: gpio@638 { > + status = "okay"; > + }; > + > + spi@b00 { > + status = "okay"; > + > + m25p80@0 { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "jedec,spi-nor"; > + reg = <0 0>; > + linux,modalias = "m25p80", "mx25l3205d"; > + 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 0x3b0000>; > + }; > + > + art: partition@3f0000 { > + label = "art"; > + reg = <0x3f0000 0x10000>; > + read-only; > + }; > + }; > + }; > + }; > + > + ethernet@10100000 { > + mtd-mac-address = <&art 0x0>; > + }; > + > + esw@10110000 { > + mediatek,portmap = <0x10>; > + mediatek,portdisable = <0x2f>; > + }; > + > + wmac@10180000 { > + ralink,mtd-eeprom = <&art 0x1000>; > + }; > + > + pinctrl { > + state_default: pinctrl0 { > + default { > + // spi refclk: pins 37, 38, 39 > + // uartf: pins 8, 9, 10, 11, 12, 13, 14 > + // i2c: pins 1, 2 > + ralink,group = "i2c", "uartf", "spi refclk"; > + ralink,function = "gpio"; > + }; > + }; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + power_g { > + label = "ex2700:green:power"; > + gpios = <&gpio0 9 1>; > + default-state = "on"; > + }; > + > + power_r { > + label = "ex2700:red:power"; > + gpios = <&gpio0 11 1>; > + }; > + > + device_g { > + label = "ex2700:green:device"; > + gpios = <&gpio0 13 1>; > + }; > + > + device_r { > + label = "ex2700:red:device"; > + gpios = <&gpio0 10 1>; > + }; > + > + router_g { > + label = "ex2700:green:router"; > + gpios = <&gpio0 12 1>; > + }; > + > + router_r { > + label = "ex2700:red:router"; > + gpios = <&gpio0 14 1>; > + }; > + > + wps { > + label = "ex2700:green:wps"; > + gpios = <&gpio1 15 1>; > + }; > + }; > + > + gpio-keys-polled { > + compatible = "gpio-keys-polled"; > + #address-cells = <1>; > + #size-cells = <0>; > + poll-interval = <20>; > + > + reset { > + label = "reset"; > + gpios = <&gpio0 1 1>; > + linux,code = <0x198>; > + }; > + > + wps { > + label = "wps"; > + gpios = <&gpio0 2 1>; > + linux,code = <0x211>; > + }; > + }; > +}; > diff --git a/target/linux/ramips/image/Makefile > b/target/linux/ramips/image/Makefile > index 55b9cf4..543ff67 100644 > --- a/target/linux/ramips/image/Makefile > +++ b/target/linux/ramips/image/Makefile > @@ -953,6 +953,7 @@ Image/Build/Profile/ArcherC20i=$(call > BuildFirmware/Tplink/$(1),$(1),ArcherC20i, > microwrt_mtd_size=16515072 > Image/Build/Profile/MicroWRT=$(call > BuildFirmware/CustomFlash/$(1),$(1),microwrt,MicroWRT,$(microwrt_mtd_size)) > Image/Build/Profile/TINY-AC=$(call > BuildFirmware/Default8M/$(1),$(1),tiny-ac,TINY-AC) > +Image/Build/Profile/EX2700=$(call > BuildFirmware/Default4M/$(1),$(1),ex2700,EX2700) > > same here > ifeq ($(SUBTARGET),mt7620) > @@ -992,6 +993,7 @@ define Image/Build/Profile/Default > $(call Image/Build/Profile/ArcherC20i,$(1)) > $(call Image/Build/Profile/MicroWRT,$(1)) > $(call Image/Build/Profile/TINY-AC,$(1)) > + $(call Image/Build/Profile/EX2700,$(1)) and here > endef > endif > > diff --git a/target/linux/ramips/mt7620/profiles/netgear.mk > b/target/linux/ramips/mt7620/profiles/netgear.mk > new file mode 100644 > index 0000000..590756a > --- /dev/null > +++ b/target/linux/ramips/mt7620/profiles/netgear.mk > @@ -0,0 +1,16 @@ > +# > +# Copyright (C) 2016 OpenWrt.org > +# > +# This is free software, licensed under the GNU General Public License v2. > +# See /LICENSE for more information. > +# > + > +define Profile/EX2700 > + NAME:=Netgear EX2700 > + PACKAGES:=-kmod-usb-core -kmod-usb2 -kmod-usb-ohci -kmod-ledtrig-usbdev > +endef > + > +define Profile/EX2700/Description > + Support for Netgear EX2700 > +endef > +$(eval $(call Profile,EX2700)) > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel > _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel