ath79: add support for Aerohive HiveAP 121

This commit adds support for the Aerohive HiveAP-121. It was previously
already supported in the ar71xx subtarget.

The following is copied from the commit which added ar71xx support:

Specification:
- SoC: Atheros AR9344-BC2A at 560MHz
- WiFi 1: 2.4GHz Atheros AR9340? - SoC
- WiFi 2: 5.0GHz Atheros AR9382-AL1A
- Memory: 128MB from 2x Nanya NT5TU32M16DG-AC
- SPI: 1MB Macronix MX25L8006E
- NAND: 128MB Hynix H27U1G8F2BTR-BC
- Ethernet: Atheros AR8035-A
- USB: 1x 2.0
- TPM: Atmel SC3204

Flashing:
1. Hook into UART (9600 baud) and enter U-Boot. You may need to enter
a password of administrator or AhNf?d@ta06 if prompted.
2. Once in U-Boot, download and flash LEDE factory image over tftp:

dhcp;
setenv serverip tftp-server-ip;
tftpboot 0x81000000 lede-ar71xx-nand-hiveap-121-squashfs-factory.bin;
nand erase 0x800000 0x800000;
nand write 0x81000000 0x800000 0x800000;
reset;

Signed-off-by: David Bauer <mail@david-bauer.net>
master
David Bauer 5 years ago
parent 08a134820f
commit 62db255543

@ -0,0 +1,237 @@
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include "ar9344.dtsi"
/ {
compatible = "aerohive,hiveap-121", "qca,ar9344";
model = "Aerohive HiveAP 121";
aliases {
led-boot = &power_white;
led-failsafe = &power_orange;
led-running = &power_white;
led-upgrade = &power_orange;
label-mac-device = &eth0;
};
chosen {
bootargs = "console=ttyS0,9600";
};
keys {
compatible = "gpio-keys";
reset {
label = "Reset button";
linux,code = <KEY_RESTART>;
gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
debounce-interval = <60>;
};
};
leds {
compatible = "gpio-leds";
power_orange: power_orange {
label = "hiveap-121:orange:power";
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
};
power_white: power_white {
label = "hiveap-121:white:power";
gpios = <&gpio 21 GPIO_ACTIVE_LOW>;
};
};
i2c {
compatible = "i2c-gpio";
gpios = <&gpio 13 GPIO_ACTIVE_HIGH /* sda */
&gpio 12 GPIO_ACTIVE_HIGH /* scl */
>;
#address-cells = <1>;
#size-cells = <0>;
tpm@29 {
compatible = "atmel,at97sc3204t";
reg = <0x29>;
};
};
};
&ref {
clock-frequency = <40000000>;
};
&uart {
status = "okay";
};
&gpio {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&jtag_disable_pins>;
gpio_ext_lna0 {
gpio-hog;
gpios = <20 0>;
output-low;
line-name = "hiveap-121:ext:lna0";
};
gpio_ext_lna1 {
gpio-hog;
gpios = <19 0>;
output-low;
line-name = "hiveap-121:ext:lna1";
};
gpio_usb_power {
gpio-hog;
gpios = <15 0>;
output-high;
line-name = "hiveap-121:power:usb";
};
};
&usb {
status = "okay";
};
&usb_phy {
status = "okay";
};
&pcie {
status = "okay";
wifi@0,0 {
compatible = "pci168c,0030";
reg = <0x0000 0 0 0 0>;
mtd-mac-address = <&hw_info 0x0>;
mtd-mac-address-increment = <2>;
};
};
&spi {
status = "okay";
num-cs = <1>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <25000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x000000 0x80000>;
read-only;
};
partition@80000 {
label = "u-boot-env";
reg = <0x80000 0x10000>;
read-only;
};
hw_info: partition@90000 {
label = "hw-info";
reg = <0x90000 0x10000>;
read-only;
};
partition@a0000 {
label = "boot-info";
reg = <0xa0000 0x10000>;
read-only;
};
partition@b0000 {
label = "boot-sinfo";
reg = <0xb0000 0x10000>;
read-only;
};
};
};
};
&wmac {
status = "okay";
mtd-mac-address = <&hw_info 0x0>;
mtd-mac-address-increment = <1>;
};
&nand {
status = "okay";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "u-boot1";
reg = <0x0 0x400000>;
read-only;
};
partition@400000 {
label = "u-boot-env1";
reg = <0x400000 0x400000>;
read-only;
};
partition@800000 {
label = "kernel";
reg = <0x800000 0x500000>;
};
partition@d00000 {
label = "ubi";
reg = <0xd00000 0x6f00000>;
};
partition@2e00000 {
label = "wifi-info";
reg = <0x7c00000 0x400000>;
read-only;
};
};
};
&mdio0 {
status = "okay";
phy0: ethernet-phy@0 {
reg = <0>;
};
};
&eth0 {
status = "okay";
pll-data = <0x06000000 0x00000101 0x00001313>;
mtd-mac-address = <&hw_info 0x0>;
phy-mode = "rgmii-id";
phy-handle = <&phy0>;
gmac-config {
device = <&gmac>;
rgmii-gmac0 = <1>;
rxd-delay = <1>;
rxdv-delay = <1>;
};
};

@ -26,6 +26,23 @@ define Build/zyxel-factory
fi
endef
define Device/aerohive_hiveap-121
ATH_SOC := ar9344
DEVICE_VENDOR := Aerohive
DEVICE_MODEL := HiveAP 121
DEVICE_PACKAGES := kmod-usb2
BLOCKSIZE := 128k
PAGESIZE := 2048
IMAGE_SIZE := 116m
KERNEL_SIZE := 5120k
UBINIZE_OPTS := -E 5
SUPPORTED_DEVICES += hiveap-121
IMAGES += factory.bin
IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | check-size $$$$(IMAGE_SIZE)
IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
endef
TARGET_DEVICES += aerohive_hiveap-121
define Device/glinet_gl-ar300m-nand
ATH_SOC := qca9531
DEVICE_VENDOR := GL.iNet

@ -8,6 +8,9 @@ ath79_setup_interfaces()
local board="$1"
case "$board" in
aerohive,hiveap-121)
ucidef_set_interface_lan "eth0"
;;
*)
ucidef_set_interfaces_lan_wan "eth0" "eth1"
;;

@ -13,6 +13,9 @@ platform_do_upgrade() {
local board=$(board_name)
case "$board" in
aerohive,hiveap-121)
nand_do_upgrade "$1"
;;
*)
default_do_upgrade "$1"
;;

@ -1,3 +1,4 @@
CONFIG_AT803X_PHY=y
CONFIG_BCH=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_AR934X=y
@ -8,8 +9,11 @@ CONFIG_MTD_SPINAND_MT29F=y
CONFIG_MTD_SPINAND_ONDIEECC=y
CONFIG_MTD_UBI=y
CONFIG_MTD_UBI_BEB_LIMIT=20
# CONFIG_MTD_UBI_BLOCK is not set
CONFIG_MTD_UBI_BLOCK=y
# CONFIG_MTD_UBI_FASTMAP is not set
# CONFIG_MTD_UBI_GLUEBI is not set
CONFIG_MTD_UBI_WL_THRESHOLD=4096
# CONFIG_UBIFS_FS is not set
CONFIG_UBIFS_FS=y
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
CONFIG_UBIFS_FS_LZO=y
CONFIG_UBIFS_FS_ZLIB=y

Loading…
Cancel
Save