mvebu: use device-tree board detection
Convert whole target to Device Tree based board detection instead of identifying devices by dts file name. With this we can drop mvebu.sh translation script and rely on common method for model detection. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
This commit is contained in:
committed by
Hauke Mehrtens
parent
a39d2a8053
commit
ee96fa15b1
@@ -1,94 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2013-2015 OpenWrt.org
|
||||
# Copyright (C) 2016 LEDE-Project.org
|
||||
#
|
||||
|
||||
MVEBU_BOARD_NAME=
|
||||
MVEBU_MODEL=
|
||||
|
||||
mvebu_board_detect() {
|
||||
local machine
|
||||
local name
|
||||
|
||||
machine=$(cat /proc/device-tree/model)
|
||||
|
||||
case "$machine" in
|
||||
*"Marvell Armada 370 Evaluation Board")
|
||||
name="armada-370-db"
|
||||
;;
|
||||
*"Globalscale Marvell ESPRESSOBin Board")
|
||||
name="globalscale,espressobin"
|
||||
;;
|
||||
*"Marvell Armada 3720 Development Board DB-88F3720-DDR3")
|
||||
name="marvell,armada-3720-db"
|
||||
;;
|
||||
*"Marvell 8040 MACCHIATOBin")
|
||||
name="marvell,armada8040-mcbin"
|
||||
;;
|
||||
*"Marvell Armada 8040 DB board")
|
||||
name="marvell,armada8040-db"
|
||||
;;
|
||||
*"Marvell Armada 7040 DB board")
|
||||
name="marvell,armada7040-db"
|
||||
;;
|
||||
*"Globalscale Mirabox")
|
||||
name="mirabox"
|
||||
;;
|
||||
*"Marvell Armada 370 Reference Design")
|
||||
name="armada-370-rd"
|
||||
;;
|
||||
*"Marvell Armada XP Evaluation Board")
|
||||
name="armada-xp-db"
|
||||
;;
|
||||
*"PlatHome OpenBlocks AX3-4 board")
|
||||
name="openblocks-ax3-4"
|
||||
;;
|
||||
*"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"
|
||||
;;
|
||||
*"Linksys WRT1900ACS")
|
||||
name="armada-385-linksys-shelby"
|
||||
;;
|
||||
*"Linksys WRT3200ACM")
|
||||
name="armada-385-linksys-rango"
|
||||
;;
|
||||
*"Linksys WRT32X")
|
||||
name="armada-385-linksys-venom"
|
||||
;;
|
||||
*"Marvell Armada 385 Access Point Development Board")
|
||||
name="armada-385-db-ap"
|
||||
;;
|
||||
*"Marvell Armada XP Development Board DB-MV784MP-GP")
|
||||
name="armada-xp-gp"
|
||||
;;
|
||||
*"SolidRun Clearfog Pro A1")
|
||||
name="armada-388-clearfog-pro"
|
||||
;;
|
||||
*"SolidRun Clearfog Base A1")
|
||||
name="armada-388-clearfog-base"
|
||||
;;
|
||||
*"Turris Omnia")
|
||||
name="armada-385-turris-omnia"
|
||||
;;
|
||||
esac
|
||||
|
||||
[ -z "$name" ] && name="unknown"
|
||||
|
||||
[ -z "$MVEBU_BOARD_NAME" ] && MVEBU_BOARD_NAME="$name"
|
||||
[ -z "$MVEBU_MODEL" ] && MVEBU_MODEL="$machine"
|
||||
|
||||
[ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
|
||||
|
||||
echo "$MVEBU_BOARD_NAME" > /tmp/sysinfo/board_name
|
||||
echo "$MVEBU_MODEL" > /tmp/sysinfo/model
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
do_sysinfo_mvebu() {
|
||||
. /lib/mvebu.sh
|
||||
|
||||
mvebu_board_detect
|
||||
}
|
||||
|
||||
boot_hook_add preinit_main do_sysinfo_mvebu
|
||||
@@ -9,12 +9,7 @@ preinit_set_mac_address() {
|
||||
. /lib/functions.sh
|
||||
|
||||
case $(board_name) in
|
||||
armada-xp-linksys-mamba)
|
||||
mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
|
||||
ip link set dev eth0 address $mac 2>/dev/null
|
||||
ip link set dev eth1 address $mac 2>/dev/null
|
||||
;;
|
||||
armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom)
|
||||
linksys,caiman|linksys,cobra|linksys,rango|linksys,shelby|linksys,venom)
|
||||
# rename interfaces back to the way they were with 4.4
|
||||
case "$(readlink /sys/class/net/eth0)" in
|
||||
*f1070000*)
|
||||
@@ -29,7 +24,12 @@ preinit_set_mac_address() {
|
||||
ip link set dev eth1 address $mac 2>/dev/null
|
||||
ip link set dev eth0 address $mac_wan 2>/dev/null
|
||||
;;
|
||||
armada-385-db-ap|armada-388-clearfog)
|
||||
linksys,mamba)
|
||||
mac=$(mtd_get_mac_ascii devinfo hw_mac_addr)
|
||||
ip link set dev eth0 address $mac 2>/dev/null
|
||||
ip link set dev eth1 address $mac 2>/dev/null
|
||||
;;
|
||||
marvell,a385-db-ap|solidrun,clearfog*a1)
|
||||
# rename interfaces back to the way they were with 4.4
|
||||
case "$(readlink /sys/class/net/eth0)" in
|
||||
*f1070000*)
|
||||
|
||||
@@ -9,7 +9,7 @@ move_config() {
|
||||
|
||||
if export_bootdevice && export_partdevice partdev 1; then
|
||||
case $(board_name) in
|
||||
armada-385-turris-omnia)
|
||||
cznic,turris-omnia)
|
||||
insmod nls_cp437
|
||||
insmod nls_iso8859-1
|
||||
insmod fat
|
||||
|
||||
@@ -8,7 +8,7 @@ preinit_mount_syscfg() {
|
||||
. /lib/functions.sh
|
||||
|
||||
case $(board_name) in
|
||||
armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom|armada-xp-linksys-mamba)
|
||||
linksys,caiman|linksys,cobra|linksys,mamba|linksys,rango|linksys,shelby|linksys,venom)
|
||||
needs_recovery=0
|
||||
syscfg_part=$(grep syscfg /proc/mtd |cut -c4)
|
||||
ubiattach -m $syscfg_part || needs_recovery=1
|
||||
|
||||
@@ -9,7 +9,7 @@ REQUIRE_IMAGE_METADATA=1
|
||||
|
||||
platform_check_image() {
|
||||
case "$(board_name)" in
|
||||
armada-385-turris-omnia|armada-388-clearfog-base|armada-388-clearfog-pro|globalscale,espressobin|marvell,armada8040-mcbin)
|
||||
cznic,turris-omnia|globalscale,espressobin|marvell,armada8040-mcbin|solidrun,clearfog-base-a1|solidrun,clearfog-pro-a1)
|
||||
platform_check_image_sdcard "$ARGV"
|
||||
;;
|
||||
*)
|
||||
@@ -20,10 +20,10 @@ platform_check_image() {
|
||||
|
||||
platform_do_upgrade() {
|
||||
case "$(board_name)" in
|
||||
armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom|armada-xp-linksys-mamba)
|
||||
linksys,caiman|linksys,cobra|linksys,mamba|linksys,rango|linksys,shelby|linksys,venom)
|
||||
platform_do_upgrade_linksys "$ARGV"
|
||||
;;
|
||||
armada-385-turris-omnia|armada-388-clearfog-base|armada-388-clearfog-pro|globalscale,espressobin|marvell,armada8040-mcbin)
|
||||
cznic,turris-omnia|globalscale,espressobin|marvell,armada8040-mcbin|solidrun,clearfog-base-a1|solidrun,clearfog-pro-a1)
|
||||
platform_do_upgrade_sdcard "$ARGV"
|
||||
;;
|
||||
*)
|
||||
@@ -33,10 +33,10 @@ platform_do_upgrade() {
|
||||
}
|
||||
platform_copy_config() {
|
||||
case "$(board_name)" in
|
||||
armada-385-linksys-caiman|armada-385-linksys-cobra|armada-385-linksys-rango|armada-385-linksys-shelby|armada-385-linksys-venom|armada-xp-linksys-mamba)
|
||||
linksys,caiman|linksys,cobra|linksys,mamba|linksys,rango|linksys,shelby|linksys,venom)
|
||||
platform_copy_config_linksys
|
||||
;;
|
||||
armada-385-turris-omnia|armada-388-clearfog-base|armada-388-clearfog-pro|globalscale,espressobin|marvell,armada8040-mcbin)
|
||||
cznic,turris-omnia|globalscale,espressobin|marvell,armada8040-mcbin|solidrun,clearfog-base-a1|solidrun,clearfog-pro-a1)
|
||||
platform_copy_config_sdcard "$ARGV"
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -91,7 +91,7 @@ platform_do_upgrade_sdcard() {
|
||||
get_image "$@" | dd of="/dev/$diskdev" bs=1 skip=440 count=4 seek=440 conv=fsync
|
||||
|
||||
case "$board" in
|
||||
armada-385-turris-omnia)
|
||||
cznic,turris-omnia)
|
||||
fw_setenv openwrt_bootargs 'earlyprintk console=ttyS0,115200 root=/dev/mmcblk0p2 rootfstype=auto rootwait'
|
||||
fw_setenv openwrt_mmcload 'setenv bootargs "$openwrt_bootargs cfg80211.freg=$regdomain"; fatload mmc 0 0x01000000 zImage; fatload mmc 0 0x02000000 armada-385-turris-omnia.dtb'
|
||||
fw_setenv factory_mmcload 'setenv bootargs "$bootargs cfg80211.freg=$regdomain"; btrload mmc 0 0x01000000 boot/zImage @; btrload mmc 0 0x02000000 boot/dtb @'
|
||||
|
||||
Reference in New Issue
Block a user