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