mvebu: add sysupgrade support for clearfog
[openwrt/openwrt.git] / target / linux / mvebu / base-files / lib / mvebu.sh
1 #!/bin/sh
2 #
3 # Copyright (C) 2013-2015 OpenWrt.org
4 #
5
6 MVEBU_BOARD_NAME=
7 MVEBU_MODEL=
8
9 mvebu_board_detect() {
10 local machine
11 local name
12
13 machine=$(cat /proc/device-tree/model)
14
15 case "$machine" in
16 *"Marvell Armada 370 Evaluation Board")
17 name="armada-370-db"
18 ;;
19 *"Globalscale Mirabox")
20 name="mirabox"
21 ;;
22 *"Marvell Armada 370 Reference Design")
23 name="armada-370-rd"
24 ;;
25 *"Marvell Armada XP Evaluation Board")
26 name="armada-xp-db"
27 ;;
28 *"PlatHome OpenBlocks AX3-4 board")
29 name="openblocks-ax3-4"
30 ;;
31 *"Marvell Armada XP GP Board")
32 name="armada-xp-gp"
33 ;;
34 *"Linksys WRT1200AC")
35 name="armada-385-linksys-caiman"
36 ;;
37 *"Linksys WRT1900AC")
38 name="armada-xp-linksys-mamba"
39 ;;
40 *"Linksys WRT1900ACv2")
41 name="armada-385-linksys-cobra"
42 ;;
43 *"Linksys WRT1900ACS")
44 name="armada-385-linksys-shelby"
45 ;;
46 *"Marvell Armada 385 Access Point Development Board")
47 name="armada-385-db-ap"
48 ;;
49 *"Marvell Armada XP Development Board DB-MV784MP-GP")
50 name="armada-xp-gp"
51 ;;
52 *"SolidRun Clearfog A1")
53 name="armada-388-clearfog"
54 ;;
55 esac
56
57 [ -z "$name" ] && name="unknown"
58
59 [ -z "$MVEBU_BOARD_NAME" ] && MVEBU_BOARD_NAME="$name"
60 [ -z "$MVEBU_MODEL" ] && MVEBU_MODEL="$machine"
61
62 [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
63
64 echo "$MVEBU_BOARD_NAME" > /tmp/sysinfo/board_name
65 echo "$MVEBU_MODEL" > /tmp/sysinfo/model
66 }
67
68 mvebu_board_name() {
69 local name
70
71 [ -f /tmp/sysinfo/board_name ] || mvebu_board_detect
72 [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
73 [ -z "$name" ] && name="unknown"
74
75 echo "$name"
76 }