From f1c193c27e714a051b49788fff3aecbd728190e1 Mon Sep 17 00:00:00 2001 From: Piotr Dymacz Date: Fri, 26 Jan 2018 16:21:34 +0100 Subject: ramips: add support for ALFA Network AWUSFREE1 ALFA Network AWUSFREE1 is an USB Wi-Fi N300 adapter based on MT7628. Specification: - MT7628AN (580 MHz) - 64 MB of RAM (DDR2) - 8 MB of FLASH (SPI NOR) - 2T2R 2.4 GHz (MT7628) with external FEM (RFFM4203) - 2x detachable antennas (RP-SMA) - ASIX AX88772 USB to Ethernet bridge (connected with MT7628 PHY0) - 4x LED (2 driven by GPIO) - 1x button (reset) - 1x mini USB for host and main power input - UART header on PCB Flash instruction: You can use sysupgrade image directly in vendor firmware which is based on LEDE/OpenWrt. Alternatively, you can use web recovery mode in U-Boot: 1. Power device with reset button pressed and release it after ~5 sec. 2. Setup static IP 192.168.1.2/4 on your PC. 3. Go to 192.168.1.1 in browser and upload "sysupgrade" image. Signed-off-by: Piotr Dymacz --- target/linux/ramips/dts/AWUSFREE1.dts | 164 ++++++++++++++++++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 target/linux/ramips/dts/AWUSFREE1.dts (limited to 'target/linux/ramips/dts') diff --git a/target/linux/ramips/dts/AWUSFREE1.dts b/target/linux/ramips/dts/AWUSFREE1.dts new file mode 100644 index 0000000000..c0ffbb279a --- /dev/null +++ b/target/linux/ramips/dts/AWUSFREE1.dts @@ -0,0 +1,164 @@ +/* + * BSD LICENSE + * + * Copyright (C) 2018 Piotr Dymacz + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the names of the copyright holders nor the names of any + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/dts-v1/; + +#include "mt7628an.dtsi" + +#include +#include + +/ { + compatible = "alfa-network,awusfree1", "mediatek,mt7628an-soc"; + model = "ALFA Network AWUSFREE1"; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + gpio-keys-polled { + compatible = "gpio-keys-polled"; + #address-cells = <1>; + #size-cells = <0>; + poll-interval = <20>; + + reset { + label = "reset"; + gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; + linux,code = ; + }; + }; + + gpio-leds { + compatible = "gpio-leds"; + + system { + label = "awusfree1:orange:system"; + gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; + }; + + wlan { + label = "awusfree1:blue:wlan"; + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + }; + }; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x4000000>; + }; +}; + +&ehci { + status = "disabled"; +}; + +&esw { + mediatek,portdisable = <0x1e>; +}; + +ðernet { + mtd-mac-address = <&factory 0x2e>; +}; + +&gpio1 { + status = "okay"; +}; + +&ohci { + status = "disabled"; +}; + +&pinctrl { + state_default: pinctrl0 { + gpio { + ralink,group = "p0led_an", "wdt", "wled_an"; + ralink,function = "gpio"; + }; + + ext_lna { + ralink,group = "uart1"; + ralink,function = "sw_r"; + }; + + ext_pa { + ralink,group = "i2s"; + ralink,function = "antenna"; + }; + }; +}; + +&spi0 { + status = "okay"; + + m25p80@0 { + #address-cells = <1>; + #size-cells = <1>; + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <10000000>; + m25p,chunked-io = <32>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x1000>; + }; + + partition@031000 { + label = "config"; + reg = <0x31000 0xf000>; + read-only; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + label = "firmware"; + reg = <0x50000 0x7b0000>; + }; + }; +}; + +&wmac { + status = "okay"; + mediatek,mtd-eeprom = <&factory 0x0>; +}; -- cgit v1.2.3