Skip to content
Permalink
Browse files
ath79: add support for Bluesocket BSAP1880 board
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 <bgonyer@gmail.com>
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
[fixed obsolete $ARGV in platform_do_upgrade]
Signed-off-by: Petr Štetiar <ynezz@true.cz>
  • Loading branch information
danielg4 authored and ynezz committed Jul 17, 2019
1 parent a9fa91d commit bc18c2bfe7a80630eea15aa71800b0829ce32634
Show file tree
Hide file tree
Showing 8 changed files with 173 additions and 0 deletions.
@@ -9,6 +9,8 @@ ath79_setup_interfaces()
local board="$1"

case "$board" in
adtran,bsap1800-v2|\
adtran,bsap1840|\
aruba,ap-105|\
avm,fritz300e|\
devolo,dvl1200i|\
@@ -269,6 +271,11 @@ ath79_setup_macs()
local board="$1"

case "$board" in
adtran,bsap1800-v2|\
adtran,bsap1840)
fconfig -s -w -d $(find_mtd_part "RedBoot config") -n boot_cntb -x 0
lan_mac=$(mtd_get_mac_binary "Board data" 2)
;;
avm,fritz300e)
lan_mac=$(fritz_tffs -n maca -i $(find_mtd_part "tffs (1)"))
;;
@@ -10,6 +10,21 @@ board_config_update
board=$(board_name)

case "$board" in
adtran,bsap1800-v2|\
adtran,bsap1840)
ucidef_add_gpio_switch "wifi1_ext_a" "5GHz External Antenna A" "489" "1"
ucidef_add_gpio_switch "wifi1_int_a" "5GHz Internal Antenna A" "493"
ucidef_add_gpio_switch "wifi1_ext_b" "5GHz External Antenna B" "494" "1"
ucidef_add_gpio_switch "wifi1_int_b" "5GHz Internal Antenna B" "495"
ucidef_add_gpio_switch "wifi1_ext_c" "5GHz External Antenna C" "496" "1"
ucidef_add_gpio_switch "wifi1_int_c" "5GHz Internal Antenna C" "497"
ucidef_add_gpio_switch "wifi0_ext_a" "2.4GHz External Antenna A" "505" "1"
ucidef_add_gpio_switch "wifi0_int_a" "2.4GHz Internal Antenna A" "506"
ucidef_add_gpio_switch "wifi0_ext_b" "2.4GHz External Antenna B" "507" "1"
ucidef_add_gpio_switch "wifi0_int_b" "2.4GHz Internal Antenna B" "508"
ucidef_add_gpio_switch "wifi0_ext_c" "2.4GHz External Antenna C" "509" "1"
ucidef_add_gpio_switch "wifi0_int_c" "2.4GHz Internal Antenna C" "510"
;;
comfast,cf-e5)
ucidef_add_gpio_switch "lte_power" "LTE Power" "14" "1"
ucidef_add_gpio_switch "lte_wakeup" "LTE Wakeup" "11" "1"
@@ -13,6 +13,10 @@ PHYNBR=${DEVPATH##*/phy}
board=$(board_name)

case "$board" in
adtran,bsap1800-v2|\
adtran,bsap1840)
macaddr_add "$(mtd_get_mac_binary 'Board data' 2)" $(($PHYNBR * 8 + 1)) > /sys${DEVPATH}/macaddress
;;
iodata,wn-ag300dgr)
# There is no eeprom data for 5 GHz wlan in "art" partition
# which would allow to patch the macaddress
@@ -40,6 +40,10 @@ platform_do_upgrade() {
local board=$(board_name)

case "$board" in
adtran,bsap1800-v2|\
adtran,bsap1840)
redboot_fis_do_upgrade "$1" vmlinux_2
;;
jjplus,ja76pf2)
redboot_fis_do_upgrade "$1" linux
;;
@@ -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";
};
@@ -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";
};
@@ -0,0 +1,99 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/dts-v1/;

#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>

#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 = <KEY_RESTART>;
gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
debounce-interval = <60>;
};
};
};

&mdio0 {
status = "okay";

phy-mask = <0x1>;

phy0: ethernet-phy@0 {
reg = <0>;
};
};

&eth0 {
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";
};
@@ -85,6 +85,32 @@ define Device/8dev_carambola2
endef
TARGET_DEVICES += 8dev_carambola2

define Device/adtran_bsap1880
ATH_SOC := ar7161
DEVICE_VENDOR := Adtran/Bluesocket
DEVICE_PACKAGES += -swconfig -uboot-envtools fconfig
KERNEL := kernel-bin | append-dtb | lzma
KERNEL_INITRAMFS := kernel-bin | append-dtb
IMAGE_SIZE := 11200k
IMAGES += kernel.bin rootfs.bin
IMAGE/kernel.bin := append-kernel | pad-to $$$$(BLOCKSIZE)
IMAGE/rootfs.bin := append-rootfs | pad-rootfs
IMAGE/sysupgrade.bin := append-rootfs | pad-rootfs | combined-image | append-metadata | check-size $$$$(IMAGE_SIZE)
endef

define Device/adtran_bsap1800-v2
$(Device/adtran_bsap1880)
DEVICE_MODEL := BSAP-1800
DEVICE_VARIANT := v2
endef
TARGET_DEVICES += adtran_bsap1800-v2

define Device/adtran_bsap1840
$(Device/adtran_bsap1880)
DEVICE_MODEL := BSAP-1840
endef
TARGET_DEVICES += adtran_bsap1840

define Device/aruba_ap-105
ATH_SOC := ar7161
DEVICE_VENDOR := Aruba

0 comments on commit bc18c2b

Please sign in to comment.