6182d7af60504aed5a489a6ff661e67aa8101dc0
[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 WRT1900AC")
35 name="armada-xp-linksys-mamba"
36 ;;
37 *"Marvell Armada 385 Access Point Development Board")
38 name="armada-385-db-ap"
39 ;;
40 esac
41
42 [ -z "$name" ] && name="unknown"
43
44 [ -z "$MVEBU_BOARD_NAME" ] && MVEBU_BOARD_NAME="$name"
45 [ -z "$MVEBU_MODEL" ] && MVEBU_MODEL="$machine"
46
47 [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
48
49 echo "$MVEBU_BOARD_NAME" > /tmp/sysinfo/board_name
50 echo "$MVEBU_MODEL" > /tmp/sysinfo/model
51 }
52
53 mvebu_board_name() {
54 local name
55
56 [ -f /tmp/sysinfo/board_name ] || mvebu_board_detect
57 [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
58 [ -z "$name" ] && name="unknown"
59
60 echo "$name"
61 }