mvebu: add board detection scripts
[openwrt.git] / target / linux / mvebu / base-files / lib / mvebu.sh
1 #!/bin/sh
2 #
3 # Copyright (C) 2013 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         esac
32
33         [ -z "$name" ] && name="unknown"
34
35         [ -z "$MVEBU_BOARD_NAME" ] && MVEBU_BOARD_NAME="$name"
36         [ -z "$MVEBU_MODEL" ] && MVEBU_MODEL="$machine"
37
38         [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
39
40         echo "$MVEBU_BOARD_NAME" > /tmp/sysinfo/board_name
41         echo "$MVEBU_MODEL" > /tmp/sysinfo/model
42 }
43
44 mvebu_board_name() {
45         local name
46
47         [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
48         [ -z "$name" ] && name="unknown"
49
50         echo "$name"
51 }