From 2705cda81389e84687fb0325d2bf6c8bc2756bee Mon Sep 17 00:00:00 2001 From: Imre Kaloz Date: Thu, 16 Apr 2015 09:54:39 +0000 Subject: mvebu: add support for the Linksys Caiman and Cobra Signed-off-by: Imre Kaloz SVN-Revision: 45456 --- target/linux/mvebu/base-files/etc/uci-defaults/01_leds | 10 ++++++++++ target/linux/mvebu/base-files/etc/uci-defaults/02_network | 6 ++++++ target/linux/mvebu/base-files/etc/uci-defaults/03_wireless | 2 +- target/linux/mvebu/base-files/lib/mvebu.sh | 6 ++++++ target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac | 8 +++++++- target/linux/mvebu/base-files/lib/preinit/81_linksys_syscfg | 2 +- target/linux/mvebu/base-files/lib/upgrade/platform.sh | 4 ++-- 7 files changed, 33 insertions(+), 5 deletions(-) (limited to 'target/linux/mvebu/base-files') diff --git a/target/linux/mvebu/base-files/etc/uci-defaults/01_leds b/target/linux/mvebu/base-files/etc/uci-defaults/01_leds index 8907a4b62c..50c2f8d231 100644 --- a/target/linux/mvebu/base-files/etc/uci-defaults/01_leds +++ b/target/linux/mvebu/base-files/etc/uci-defaults/01_leds @@ -9,6 +9,16 @@ board=$(mvebu_board_name) case "$board" in +armada-385-linksys-caiman) + ucidef_set_led_netdev "wan" "WAN" "pca963x:caiman:white:wan" "eth0" + ucidef_set_led_usbdev "usb2" "USB2" "pca963x:caiman:white:usb2" "1-1" + ucidef_set_led_usbdev "usb3" "USB3" "pca963x:caiman:white:usb3_1" "2-1" + ;; +armada-385-linksys-cobra) + ucidef_set_led_netdev "wan" "WAN" "pca963x:cobra:white:wan" "eth0" + ucidef_set_led_usbdev "usb2" "USB2" "pca963x:cobra:white:usb2" "1-1" + ucidef_set_led_usbdev "usb3" "USB3" "pca963x:cobra:white:usb3_1" "2-1" + ;; armada-xp-linksys-mamba) ucidef_set_led_netdev "wan" "WAN" "mamba:white:wan" "eth1" ucidef_set_led_usbdev "usb2" "USB2" "mamba:white:usb2" "1-1" diff --git a/target/linux/mvebu/base-files/etc/uci-defaults/02_network b/target/linux/mvebu/base-files/etc/uci-defaults/02_network index 75b0af79f6..73a3d8a1ac 100644 --- a/target/linux/mvebu/base-files/etc/uci-defaults/02_network +++ b/target/linux/mvebu/base-files/etc/uci-defaults/02_network @@ -15,6 +15,12 @@ ucidef_set_interface_loopback board=$(mvebu_board_name) case "$board" in +armada-385-linksys-caiman) + ucidef_set_interfaces_lan_wan "eth1" "eth0" + ;; +armada-385-linksys-cobra) + ucidef_set_interfaces_lan_wan "eth1" "eth0" + ;; armada-xp-linksys-mamba) ucidef_set_interfaces_lan_wan "eth0" "eth1" ucidef_add_switch "switch0" "1" "1" diff --git a/target/linux/mvebu/base-files/etc/uci-defaults/03_wireless b/target/linux/mvebu/base-files/etc/uci-defaults/03_wireless index 5eb3c901c2..c5d670a0ba 100644 --- a/target/linux/mvebu/base-files/etc/uci-defaults/03_wireless +++ b/target/linux/mvebu/base-files/etc/uci-defaults/03_wireless @@ -10,7 +10,7 @@ board=$(mvebu_board_name) case "$board" in -armada-xp-linksys-mamba) +armada-385-linksys-caiman|armada-385-linksys-cobra|armada-xp-linksys-mamba) SKU=$(strings /dev/mtd3|sed -ne 's/^cert_region=//p') case "$SKU" in AP) diff --git a/target/linux/mvebu/base-files/lib/mvebu.sh b/target/linux/mvebu/base-files/lib/mvebu.sh index 6182d7af60..ac6d148476 100755 --- a/target/linux/mvebu/base-files/lib/mvebu.sh +++ b/target/linux/mvebu/base-files/lib/mvebu.sh @@ -31,9 +31,15 @@ mvebu_board_detect() { *"Marvell Armada XP GP Board") name="armada-xp-gp" ;; + *"Linksys WRT1200AC") + name="armada-385-linksys-caiman" + ;; *"Linksys WRT1900AC") name="armada-xp-linksys-mamba" ;; + *"Linksys WRT1900ACv2") + name="armada-385-linksys-cobra" + ;; *"Marvell Armada 385 Access Point Development Board") name="armada-385-db-ap" ;; diff --git a/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac b/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac index 7b77bea27f..7217e93370 100644 --- a/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac +++ b/target/linux/mvebu/base-files/lib/preinit/06_set_iface_mac @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 OpenWrt.org +# Copyright (C) 2014-2015 OpenWrt.org # preinit_set_mac_address() { @@ -15,6 +15,12 @@ preinit_set_mac_address() { ifconfig eth0 hw ether $mac 2>/dev/null ifconfig eth1 hw ether $mac_wan 2>/dev/null ;; + armada-385-linksys-caiman|armada-385-linksys-cobra) + mac=$(mtd_get_mac_ascii devinfo hw_mac_addr) + mac_wan=$(macaddr_setbit_la "$mac") + ifconfig eth1 hw ether $mac 2>/dev/null + ifconfig eth0 hw ether $mac_wan 2>/dev/null + ;; esac } diff --git a/target/linux/mvebu/base-files/lib/preinit/81_linksys_syscfg b/target/linux/mvebu/base-files/lib/preinit/81_linksys_syscfg index d59cec3ab7..d665cb14aa 100644 --- a/target/linux/mvebu/base-files/lib/preinit/81_linksys_syscfg +++ b/target/linux/mvebu/base-files/lib/preinit/81_linksys_syscfg @@ -8,7 +8,7 @@ preinit_mount_syscfg() { . /lib/mvebu.sh case $(mvebu_board_name) in - armada-xp-linksys-mamba) + armada-385-linksys-caiman|armada-385-linksys-cobra|armada-xp-linksys-mamba) needs_recovery=0 ubiattach -m 8 || needs_recovery=1 if [ $needs_recovery -eq 1 ] diff --git a/target/linux/mvebu/base-files/lib/upgrade/platform.sh b/target/linux/mvebu/base-files/lib/upgrade/platform.sh index 55807f5f44..5e9c04b600 100755 --- a/target/linux/mvebu/base-files/lib/upgrade/platform.sh +++ b/target/linux/mvebu/base-files/lib/upgrade/platform.sh @@ -13,7 +13,7 @@ platform_check_image() { [ "$#" -gt 1 ] && return 1 case "$board" in - armada-xp-linksys-mamba ) + armada-385-linksys-caiman|armada-385-linksys-cobra|armada-xp-linksys-mamba) [ "$magic_long" != "27051956" -a "$magic_long" != "73797375" ] && { echo "Invalid image type." return 1 @@ -30,7 +30,7 @@ platform_do_upgrade() { local board=$(mvebu_board_name) case "$board" in - armada-xp-linksys-mamba) + armada-385-linksys-caiman|armada-385-linksys-cobra|armada-xp-linksys-mamba) platform_do_upgrade_linksys "$ARGV" ;; *) -- cgit v1.2.3