oxnas: bring in new oxnas target
[oweals/openwrt.git] / target / linux / oxnas / base-files / lib / oxnas.sh
1 #!/bin/sh
2 #
3 # Copyright (C) 2013 OpenWrt.org
4 #
5
6 OXNAS_BOARD_NAME=
7 OXNAS_MODEL=
8
9 bootloader_cmdline_var() {
10         local param
11         local pval
12         for arg in $(cat /proc/device-tree/chosen/bootloader-args); do
13                 param="$(echo $arg | cut -d'=' -f 1)"
14                 pval="$(echo $arg | cut -d'=' -f 2-)"
15
16                 if [ "$param" = "$1" ]; then
17                         echo "$pval"
18                 fi
19         done
20 }
21
22 legacy_boot_mac_adr() {
23         local macstr
24         local oIFS
25         macstr="$(bootloader_cmdline_var mac_adr)"
26         oIFS="$IFS"
27         IFS=","
28         set -- $macstr
29         printf "%02x:%02x:%02x:%02x:%02x:%02x" $1 $2 $3 $4 $5 $6
30         IFS="$oIFS"
31 }
32
33 oxnas_board_detect() {
34         local machine
35         local name
36
37         machine=$(cat /proc/device-tree/model)
38
39         case "$machine" in
40         *"Akitio MyCloud mini"*)
41                 name="akitio"
42                 ;;
43         *"MitraStar Technology Corp. STG-212"*)
44                 name="stg212"
45                 ;;
46         *"Shuttle KD20"*)
47                 name="kd20"
48                 ;;
49         *"Pogoplug Pro"*)
50                 name="pogoplug-pro"
51                 ;;
52         *"Pogoplug V3"*)
53                 name="pogoplug-v3"
54                 ;;
55         esac
56
57         [ -z "$name" ] && name="unknown"
58
59         [ -z "$OXNAS_BOARD_NAME" ] && OXNAS_BOARD_NAME="$name"
60         [ -z "$OXNAS_MODEL" ] && OXNAS_MODEL="$machine"
61
62         [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
63
64         echo "$OXNAS_BOARD_NAME" > /tmp/sysinfo/board_name
65         echo "$OXNAS_MODEL" > /tmp/sysinfo/model
66 }