09ebff3edcac3c395526578abaf0f377d9d66d64
[openwrt/svn-archive/archive.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 esac
53
54 [ -z "$name" ] && name="unknown"
55
56 [ -z "$MVEBU_BOARD_NAME" ] && MVEBU_BOARD_NAME="$name"
57 [ -z "$MVEBU_MODEL" ] && MVEBU_MODEL="$machine"
58
59 [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
60
61 echo "$MVEBU_BOARD_NAME" > /tmp/sysinfo/board_name
62 echo "$MVEBU_MODEL" > /tmp/sysinfo/model
63 }
64
65 mvebu_board_name() {
66 local name
67
68 [ -f /tmp/sysinfo/board_name ] || mvebu_board_detect
69 [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
70 [ -z "$name" ] && name="unknown"
71
72 echo "$name"
73 }