From bc18c2bfe7a80630eea15aa71800b0829ce32634 Mon Sep 17 00:00:00 2001 From: Daniel Gimpelevich Date: Fri, 31 Aug 2018 19:28:35 -0700 Subject: ath79: add support for Bluesocket BSAP1880 board MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This board was used in dual-band 802.11n enterprise access points, models BSAP-1800v2 and BSAP-1840, introduced in 2010 by Bluesocket, which was acquired by Adtran in 2011, who has now EOL'ed them. They differed only in that the BSAP-1840's antennae were detachable, while the BSAP-1800v2's were inside the case. They have an external RJ-45 console port, which works with standard Cisco 72-3383-01 console cables. Specification: - System-On-Chip: AR7161 - CPU/Speed: 600 MHz - Flash-Chip: Macronix MX25L12845E - Flash size: 16 MiB - RAM: 64 MiB - Wireless No1: Lite-On WN2601A card: AR9160/AR9103 2.4GHz 802.11bgn - Wireless No2: Lite-On WN2502A card: AR9160/AR9106 5GHz 802.11an - PHY: Vitesse VSC8601, Rev. B Installation: 1. Connect to the serial console using a terminal that supports YMODEM at 115200 bps, 8 data bits, no parity, 1 stop bit 2. Interrupt the bootloader using its password, which is: r00t 3. Issue the "fis init" command, confirming if prompted 4. Look at the length of the openwrt-ath79-generic-*-squashfs-kernel.bin file, and substitute it below, instead of where I have "LeNgTh" 5. Issue the following command, and upload this file using YMODEM protocol load -r -v -b 0x80060000 -m ymodem 6. Issue the following commands, substituting as mentioned above: fis create -b 0x80060000 -l LeNgTh vmlinux_2 load -r -v -b 0x80100000 -m ymodem 7. Using YMODEM, upload openwrt-ath79-generic-*-squashfs-rootfs.bin 8. Issue the "fis free" command, and for the first range in its response, use a hexadecimal calculator to subtract the start from the end in order to substitute it below, with the leading "0x" to specify it in hexadecimal, instead of where I have "LeNgTh" 9. Issue the following commands, substituting as mentioned above: fis create -b 0x80100000 -l LeNgTh -e 0 -r 0 rootfs reset 10.Wait for the status LED to go solid green Tested-by: Brian Gonyer Signed-off-by: Daniel Gimpelevich [fixed obsolete $ARGV in platform_do_upgrade] Signed-off-by: Petr Štetiar --- .../linux/ath79/dts/ar7161_adtran_bsap1800-v2.dts | 9 ++ target/linux/ath79/dts/ar7161_adtran_bsap1840.dts | 9 ++ target/linux/ath79/dts/ar7161_adtran_bsap1880.dtsi | 99 ++++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 target/linux/ath79/dts/ar7161_adtran_bsap1800-v2.dts create mode 100644 target/linux/ath79/dts/ar7161_adtran_bsap1840.dts create mode 100644 target/linux/ath79/dts/ar7161_adtran_bsap1880.dtsi (limited to 'target/linux/ath79/dts') diff --git a/target/linux/ath79/dts/ar7161_adtran_bsap1800-v2.dts b/target/linux/ath79/dts/ar7161_adtran_bsap1800-v2.dts new file mode 100644 index 0000000000..1745ac76fb --- /dev/null +++ b/target/linux/ath79/dts/ar7161_adtran_bsap1800-v2.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7161_adtran_bsap1880.dtsi" + +/ { + model = "Adtran/Bluesocket BSAP-1800 v2"; + compatible = "adtran,bsap1800-v2", "qca,ar7161"; +}; diff --git a/target/linux/ath79/dts/ar7161_adtran_bsap1840.dts b/target/linux/ath79/dts/ar7161_adtran_bsap1840.dts new file mode 100644 index 0000000000..38b87a1e32 --- /dev/null +++ b/target/linux/ath79/dts/ar7161_adtran_bsap1840.dts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "ar7161_adtran_bsap1880.dtsi" + +/ { + model = "Adtran/Bluesocket BSAP-1840"; + compatible = "adtran,bsap1840", "qca,ar7161"; +}; diff --git a/target/linux/ath79/dts/ar7161_adtran_bsap1880.dtsi b/target/linux/ath79/dts/ar7161_adtran_bsap1880.dtsi new file mode 100644 index 0000000000..ba9b588bec --- /dev/null +++ b/target/linux/ath79/dts/ar7161_adtran_bsap1880.dtsi @@ -0,0 +1,99 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include +#include + +#include "ar7100.dtsi" + +/ { + chosen { + bootargs = "console=ttyS0,115200n8"; + }; + + aliases { + led-boot = &led_green_status; + led-failsafe = &led_yellow_status; + led-running = &led_green_status; + led-upgrade = &led_yellow_status; + }; + + leds { + compatible = "gpio-leds"; + + wlan5g { + label = "bluesocket:green:wifi5g"; + gpios = <&gpio 8 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy1tpt"; + }; + + wlan2g { + label = "bluesocket:green:wifi2g"; + gpios = <&gpio 7 GPIO_ACTIVE_LOW>; + linux,default-trigger = "phy0tpt"; + }; + + led_green_status: green_status { + label = "bluesocket:green:status"; + gpios = <&gpio 5 GPIO_ACTIVE_LOW>; + }; + + led_yellow_status: yellow_status { + label = "bluesocket:yellow:status"; + gpios = <&gpio 4 GPIO_ACTIVE_LOW>; + }; + }; + + keys { + compatible = "gpio-keys"; + + reset { + label = "reset"; + linux,code = ; + gpios = <&gpio 6 GPIO_ACTIVE_LOW>; + debounce-interval = <60>; + }; + }; +}; + +&mdio0 { + status = "okay"; + + phy-mask = <0x1>; + + phy0: ethernet-phy@0 { + reg = <0>; + }; +}; + +ð0 { + status = "okay"; + + phy-mode = "rgmii-id"; + phy-handle = <&phy0>; +}; + +&pcie0 { + status = "okay"; +}; + +&spi { + status = "okay"; + num-cs = <1>; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <25000000>; + + partitions { + #address-cells = <1>; + #size-cells = <1>; + compatible = "ecoscentric,redboot-fis-partitions"; + }; + }; +}; + +&uart { + status = "okay"; +}; -- cgit v1.2.3