diff options
author | Chris Blake <chrisrblake93@gmail.com> | 2017-09-30 11:14:58 -0500 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2017-10-14 01:23:47 +0200 |
commit | f2b7d9dc1ca3d33f14961cf2885639f4f9e8965e (patch) | |
tree | 10f2ed5de3ed465cd70c1e02fc23d1fefe92e2a6 /target/linux/mpc85xx/base-files | |
parent | 8cd6686ef81effb3c30f0508368db3d0600f289d (diff) | |
download | upstream-f2b7d9dc1ca3d33f14961cf2885639f4f9e8965e.tar.gz upstream-f2b7d9dc1ca3d33f14961cf2885639f4f9e8965e.tar.bz2 upstream-f2b7d9dc1ca3d33f14961cf2885639f4f9e8965e.zip |
mpc85xx: Add Aerohive HiveAP-330 Access Point
The following adds the Aerohive HiveAP-330 Access Point to LEDE under
the mpc85xx/p1020 subtarget.
Hardware:
- SoC: Freescale P1020NSE2DFB
- NAND: Intel JS28F512M29EWH 64MB
- Memory: 2x ProMOS V59C1G01168QBJ3 128MB (Total of 256MB)
- 2.4GHz WiFi: Atheros AR9390-AL1A
- 5.0GHz WiFi: Atheros AR9390-AL1A
- Eth1: Atheros AR8035-A PoE
- Eth2: Atheros AR8035-A
- TPM: Atmel AT97SC3204
- LED Driver: TI LP5521
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, tftp boot the initramfs image:
dhcp;
tftpboot 0x1000000 192.168.1.101:lede-
mpc85xx-p1020-hiveap-330-initramfs.zImage;
tftpboot 0x6000000 192.168.1.101:lede-mpc85xx-p1020-hiveap-330.fdt;
bootm 0x1000000 - 0x6000000;
3. Once booted, scp over the sysupgrade file and sysupgrade the device
to flash LEDE to the NAND.
sysupgrade /tmp/lede-mpc85xx-p1020-hiveap-330-sysupgrade.img
Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
Diffstat (limited to 'target/linux/mpc85xx/base-files')
5 files changed, 58 insertions, 5 deletions
diff --git a/target/linux/mpc85xx/base-files/etc/board.d/02_network b/target/linux/mpc85xx/base-files/etc/board.d/02_network index 511b56b1cc..1fedb7962e 100755 --- a/target/linux/mpc85xx/base-files/etc/board.d/02_network +++ b/target/linux/mpc85xx/base-files/etc/board.d/02_network @@ -10,6 +10,9 @@ board_config_update board=$(board_name) case "$board" in +hiveap-330) + ucidef_set_interfaces_lan_wan "eth1" "eth0" + ;; tl-wdr4900-v1) ucidef_add_switch "switch0" \ "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan" diff --git a/target/linux/mpc85xx/base-files/etc/diag.sh b/target/linux/mpc85xx/base-files/etc/diag.sh index b269427a51..7261795197 100644 --- a/target/linux/mpc85xx/base-files/etc/diag.sh +++ b/target/linux/mpc85xx/base-files/etc/diag.sh @@ -5,11 +5,14 @@ . /lib/functions/leds.sh get_status_led() { - case $(board_name) in - tl-wdr4900-v1) - status_led="tp-link:blue:system" - ;; - esac + case $(board_name) in + hiveap-330) + status_led="hiveap-330:green:tricolor0" + ;; + tl-wdr4900-v1) + status_led="tp-link:blue:system" + ;; +esac } set_state() { diff --git a/target/linux/mpc85xx/base-files/lib/mpc85xx.sh b/target/linux/mpc85xx/base-files/lib/mpc85xx.sh index 1a2a671e28..065589f18f 100755 --- a/target/linux/mpc85xx/base-files/lib/mpc85xx.sh +++ b/target/linux/mpc85xx/base-files/lib/mpc85xx.sh @@ -13,6 +13,9 @@ mpc85xx_board_detect() { model=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /model/ {print $2}' /proc/cpuinfo) case "$model" in + *"HiveAP-330") + name="hiveap-330" + ;; *"TL-WDR4900 v1") name="tl-wdr4900-v1" ;; diff --git a/target/linux/mpc85xx/base-files/lib/preinit/05_set_iface_mac_mcp85xx b/target/linux/mpc85xx/base-files/lib/preinit/05_set_iface_mac_mcp85xx new file mode 100644 index 0000000000..cecaee86b0 --- /dev/null +++ b/target/linux/mpc85xx/base-files/lib/preinit/05_set_iface_mac_mcp85xx @@ -0,0 +1,17 @@ +#!/bin/sh + +. /lib/functions.sh +. /lib/functions/system.sh + +preinit_set_mac_address() { + case $(board_name) in + hiveap-330) + mac_wan=$(mtd_get_mac_binary hw-info 0) + [ -n "$mac_wan" ] && ifconfig eth0 hw ether "$mac_wan" + mac_lan=$(macaddr_add $(mtd_get_mac_binary hw-info 0) +1) + [ -n "$mac_lan" ] && ifconfig eth1 hw ether "$mac_lan" + ;; + esac +} + +boot_hook_add preinit_main preinit_set_mac_address diff --git a/target/linux/mpc85xx/base-files/lib/upgrade/platform.sh b/target/linux/mpc85xx/base-files/lib/upgrade/platform.sh index 65b3674769..9e3a3d661a 100755 --- a/target/linux/mpc85xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/mpc85xx/base-files/lib/upgrade/platform.sh @@ -4,6 +4,10 @@ PART_NAME=firmware +get_magic_long_at() { + (get_image "$1" | dd bs=4 count=1 skip="$2" | hexdump -v -n 4 -e '1/1 "%02x"') 2>/dev/null +} + tplink_get_hwid() { local part @@ -28,6 +32,29 @@ platform_check_image() { [ "$#" -gt 1 ] && return 1 case $board in + hiveap-330) + local init_magic=$(get_magic_long_at "$1" "65536") + local root_magic=$(get_magic_long_at "$1" "131072") + local kernel_magic=$(get_magic_long_at "$1" "10551296") + + [ "$magic" != "d00dfeed" ] && { + echo "Invalid dtb image type." + return 1 + } + [ "$init_magic" != "27051956" ] && { + echo "Invalid initramfs image type." + return 1 + } + [ "$root_magic" != "68737173" ] && { + echo "Invalid rootfs image type." + return 1 + } + [ "$kernel_magic" != "27051956" ] && { + echo "Invalid kernel image type." + return 1 + } + return 0 + ;; tl-wdr4900-v1) [ "$magic" != "01000000" ] && { echo "Invalid image type." |