Hey Russell, thanks a lot for your contribution. Find my comments inline.
2017-04-05 5:38 GMT+02:00 Russell Senior <russ...@personaltelco.net>: > > Add initial support for an mtk7688 board from Asia RF. > > It boots, flashes and runs. > > Signed-off-by: Russell Senior <russ...@personaltelco.net> As you wrote initial support, what does not work? Would you please add a brief description of the hardware and outline how LEDE can be installed on the board. Have a look at the recent ramips board additions for some good examples. > --- > > diff --git a/package/boot/uboot-envtools/files/ramips > b/package/boot/uboot-envtools/files/ramips > index 3216b300c1..9327bcbcf4 100644 > --- a/package/boot/uboot-envtools/files/ramips > +++ b/package/boot/uboot-envtools/files/ramips > @@ -19,6 +19,7 @@ all0256n|\ > all5002) > ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x10000" "0x10000" > ;; > +awm688|\ > br-6425|\ > linkits7688|\ > linkits7688d|\ Why is access to the u-boot env from userspace required? > 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 7bdebbe97f..19ff14df83 100755 > --- a/target/linux/ramips/base-files/etc/board.d/02_network > +++ b/target/linux/ramips/base-files/etc/board.d/02_network > @@ -44,6 +44,7 @@ ramips_setup_interfaces() > all0256n|\ > all5002|\ > all5003|\ > + awm688|\ > broadway|\ > dcs-930|\ > dcs-930l-b1|\ > diff --git a/target/linux/ramips/base-files/lib/ramips.sh > b/target/linux/ramips/base-files/lib/ramips.sh > index 786aecb99b..cd944ed207 100755 > --- a/target/linux/ramips/base-files/lib/ramips.sh > +++ b/target/linux/ramips/base-files/lib/ramips.sh > @@ -79,6 +79,9 @@ ramips_board_detect() { > *"AWM003 EVB") > name="awm003-evb" > ;; > + *"AWM688") > + name="awm688" > + ;; > *"BC2") > name="bc2" > ;; > diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh > b/target/linux/ramips/base-files/lib/upgrade/platform.sh > index 08fa45ad98..6360fe83a0 100755 > --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh > +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh > @@ -29,6 +29,7 @@ platform_check_image() { > awapn2403|\ > awm002-evb|\ > awm003-evb|\ > + awm688|\ > bc2|\ > broadway|\ > carambola|\ > diff --git a/target/linux/ramips/dts/AWM688.dts > b/target/linux/ramips/dts/AWM688.dts > new file mode 100644 > index 0000000000..1c5230ed84 > --- /dev/null > +++ b/target/linux/ramips/dts/AWM688.dts > @@ -0,0 +1,183 @@ > +/dts-v1/; > + > +#include "mt7628an.dtsi" > + > +#include <dt-bindings/input/input.h> Please include dt-bindings/gpio/gpio.h here as well and keep alphabetical order. Use the GPIO_ACTIVE_LOW and GPIO_ACTIVE_HIGH macros afterwards instead of 1 and 0 in the gpio parameters. Check the recent ramips board additions for examples. > + > +/ { > + compatible = "mediatek,awm688", "mediatek,mt7628an-soc"; > + model = "AsiaRF AWM688"; > + > + chosen { > + bootargs = "console=ttyS0,57600"; > + }; > + > + aliases { > + serial0 = &uart1; > + }; > + > + memory@0 { > + device_type = "memory"; > + reg = <0x0 0x4000000>; > + }; > + > + bootstrap { > + compatible = "mediatek,awm688"; > + > + status = "okay"; > + }; > + > + gpio-leds { > + compatible = "gpio-leds"; > + > + wifi { > + label = "mediatek:orange:wifi"; > + gpios = <&wgpio 0 0>; > + default-state = "on"; Why do you switch the led to default on? Could it be that the polarity is wrong for this led (active low instead of active high) and you are trying to switch the led to off? > + }; > + }; > + > + gpio-keys-polled { > + compatible = "gpio-keys-polled"; > + #address-cells = <1>; > + #size-cells = <0>; > + poll-interval = <20>; > + > + wps { > + label = "reset"; > + gpios = <&gpio1 6 1>; > + linux,code = <KEY_WPS_BUTTON>; > + }; > + }; > + > + wgpio: gpio-wifi { > + compatible = "mediatek,gpio-wifi"; > + #address-cells = <1>; > + #size-cells = <0>; > + gpio-controller; > + #gpio-cells = <2>; > + }; > +}; > + > +&pinctrl { > + state_default: pinctrl0 { > + gpio { > + ralink,group = "gpio"; > + ralink,function = "gpio"; > + }; > + > + perst { > + ralink,group = "perst"; > + ralink,function = "gpio"; > + }; > + > + refclk { > + ralink,group = "refclk"; > + ralink,function = "gpio"; > + }; > + > + i2s { > + ralink,group = "i2s"; > + ralink,function = "gpio"; > + }; > + > + spis { > + ralink,group = "spis"; > + ralink,function = "gpio"; > + }; > + > + wled_kn { > + ralink,group = "wled_kn"; > + ralink,function = "gpio"; > + }; > + > + wled_an { > + ralink,group = "wled_an"; > + ralink,function = "wled_an"; > + }; > + > + wdt { > + ralink,group = "wdt"; > + ralink,function = "gpio"; > + }; > + }; > +}; > + > +&wmac { > + status = "okay"; > +}; > + > +&spi0 { > + status = "okay"; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&spi_pins>, <&spi_cs1_pins>; > + > + m25p80@0 { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "jedec,spi-nor"; > + reg = <0>; > + spi-max-frequency = <40000000>; > + m25p,chunked-io = <31>; > + > + partition@0 { > + label = "u-boot"; > + reg = <0x0 0x30000>; > + read-only; > + }; > + > + partition@30000 { > + label = "u-boot-env"; > + reg = <0x30000 0x10000>; > + }; > + > + factory: partition@40000 { > + label = "factory"; > + reg = <0x40000 0x10000>; > + read-only; > + }; > + > + partition@50000 { > + label = "firmware"; > + reg = <0x50000 0xfb0000>; > + }; > + }; > + > + spidev@1 { > + #address-cells = <1>; > + #size-cells = <1>; > + compatible = "linux,spidev"; > + reg = <1>; > + spi-max-frequency = <40000000>; > + }; > +}; > + > +&i2c { > + status = "okay"; > +}; > + > +&uart1 { > + status = "okay"; > +}; > + > +&uart2 { > + status = "okay"; > +}; > + > +&pwm { > + status = "okay"; > +}; > + > +ðernet { > + mtd-mac-address = <&factory 0x2e>; > +}; > + > +&sdhci { > + status = "okay"; > + mediatek,cd-high; > +}; > + > +&wmac { > + status = "okay"; > +}; > diff --git a/target/linux/ramips/image/mt7688.mk > b/target/linux/ramips/image/mt7688.mk > index 4a50275a8d..8b59d2afb9 100644 > --- a/target/linux/ramips/image/mt7688.mk > +++ b/target/linux/ramips/image/mt7688.mk > @@ -2,6 +2,15 @@ > # MT7688 Profiles > # > > +define Device/AWM688 > + DTS := AWM688 > + IMAGE_SIZE := $(ralink_default_fw_size_16M) > + SUPPORTED_DEVICES := awm688 > + DEVICE_TITLE := AsiaRF AWM688 > + DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools > +endef > +TARGET_DEVICES += AWM688 > + > define Device/LinkIt7688 > DTS := LINKIT7688 > IMAGE_SIZE := $(ralink_default_fw_size_32M) > > > -- > Russell Senior, President > russ...@personaltelco.net > > _______________________________________________ > Lede-dev mailing list > Lede-dev@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/lede-dev _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev