mirror of https://github.com/hak5/openwrt.git
oxnas: switch to generic board detect
remove /lib/oxnas.sh platform-specific board-detection and use generic which is based on device-tree compatible node instead. Signed-off-by: Daniel Golle <daniel@makrotopia.org>openwrt-19.07
parent
900005ee75
commit
4f017c871d
|
@ -6,17 +6,17 @@ board=$(board_name)
|
||||||
board_config_update
|
board_config_update
|
||||||
|
|
||||||
case $board in
|
case $board in
|
||||||
akitio)
|
"akitio,myloud")
|
||||||
ucidef_set_led_default "status" "status" "akitio:red:status" "0"
|
ucidef_set_led_default "status" "status" "akitio:red:status" "0"
|
||||||
;;
|
;;
|
||||||
stg212)
|
"mitrastar,stg-212")
|
||||||
ucidef_set_led_default "power" "power" "zyxel:blue:status" "1"
|
ucidef_set_led_default "power" "power" "zyxel:blue:status" "1"
|
||||||
ucidef_set_led_usbdev "usb" "USB" "zyxel:orange:copy" "1-1"
|
ucidef_set_led_usbdev "usb" "USB" "zyxel:orange:copy" "1-1"
|
||||||
;;
|
;;
|
||||||
kd20)
|
"shuttle,kd20")
|
||||||
ucidef_set_led_default "power" "power" "kd20:blue:status" "1"
|
ucidef_set_led_default "power" "power" "kd20:blue:status" "1"
|
||||||
;;
|
;;
|
||||||
pogoplug-pro | pogoplug-v3)
|
"cloudengines,pogoplug"*)
|
||||||
ucidef_set_led_default "power" "power" "pogoplug:blue:internal" "1"
|
ucidef_set_led_default "power" "power" "pogoplug:blue:internal" "1"
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
|
|
@ -2,14 +2,37 @@
|
||||||
|
|
||||||
. /lib/functions/uci-defaults.sh
|
. /lib/functions/uci-defaults.sh
|
||||||
. /lib/functions/system.sh
|
. /lib/functions/system.sh
|
||||||
. /lib/oxnas.sh
|
|
||||||
|
|
||||||
board_config_update
|
board_config_update
|
||||||
|
|
||||||
lan_mac=""
|
lan_mac=""
|
||||||
|
|
||||||
|
bootloader_cmdline_var() {
|
||||||
|
local param
|
||||||
|
local pval
|
||||||
|
for arg in $(cat /proc/device-tree/chosen/bootloader-args); do
|
||||||
|
param="$(echo $arg | cut -d'=' -f 1)"
|
||||||
|
pval="$(echo $arg | cut -d'=' -f 2-)"
|
||||||
|
|
||||||
|
if [ "$param" = "$1" ]; then
|
||||||
|
echo "$pval"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
legacy_boot_mac_adr() {
|
||||||
|
local macstr
|
||||||
|
local oIFS
|
||||||
|
macstr="$(bootloader_cmdline_var mac_adr)"
|
||||||
|
oIFS="$IFS"
|
||||||
|
IFS=","
|
||||||
|
set -- $macstr
|
||||||
|
printf "%02x:%02x:%02x:%02x:%02x:%02x" $1 $2 $3 $4 $5 $6
|
||||||
|
IFS="$oIFS"
|
||||||
|
}
|
||||||
|
|
||||||
case "$(board_name)" in
|
case "$(board_name)" in
|
||||||
kd20)
|
"shuttle,kd20")
|
||||||
lan_mac="$(legacy_boot_mac_adr)"
|
lan_mac="$(legacy_boot_mac_adr)"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
|
@ -6,16 +6,16 @@
|
||||||
|
|
||||||
get_status_led() {
|
get_status_led() {
|
||||||
case $(board_name) in
|
case $(board_name) in
|
||||||
akitio)
|
"akitio,mycloud")
|
||||||
status_led="akitio:red:status"
|
status_led="akitio:red:status"
|
||||||
;;
|
;;
|
||||||
stg212)
|
"mitrastar,stg-212")
|
||||||
status_led="zyxel:blue:status"
|
status_led="zyxel:blue:status"
|
||||||
;;
|
;;
|
||||||
kd20)
|
"shuttle,kd20")
|
||||||
status_led="kd20:blue:status"
|
status_led="kd20:blue:status"
|
||||||
;;
|
;;
|
||||||
pogoplug-pro | pogoplug-v3)
|
"cloudengines,pogoplug"*)
|
||||||
status_led="pogoplug:blue:internal"
|
status_led="pogoplug:blue:internal"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
|
@ -1,66 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
#
|
|
||||||
# Copyright (C) 2013 OpenWrt.org
|
|
||||||
#
|
|
||||||
|
|
||||||
OXNAS_BOARD_NAME=
|
|
||||||
OXNAS_MODEL=
|
|
||||||
|
|
||||||
bootloader_cmdline_var() {
|
|
||||||
local param
|
|
||||||
local pval
|
|
||||||
for arg in $(cat /proc/device-tree/chosen/bootloader-args); do
|
|
||||||
param="$(echo $arg | cut -d'=' -f 1)"
|
|
||||||
pval="$(echo $arg | cut -d'=' -f 2-)"
|
|
||||||
|
|
||||||
if [ "$param" = "$1" ]; then
|
|
||||||
echo "$pval"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
legacy_boot_mac_adr() {
|
|
||||||
local macstr
|
|
||||||
local oIFS
|
|
||||||
macstr="$(bootloader_cmdline_var mac_adr)"
|
|
||||||
oIFS="$IFS"
|
|
||||||
IFS=","
|
|
||||||
set -- $macstr
|
|
||||||
printf "%02x:%02x:%02x:%02x:%02x:%02x" $1 $2 $3 $4 $5 $6
|
|
||||||
IFS="$oIFS"
|
|
||||||
}
|
|
||||||
|
|
||||||
oxnas_board_detect() {
|
|
||||||
local machine
|
|
||||||
local name
|
|
||||||
|
|
||||||
machine=$(cat /proc/device-tree/model)
|
|
||||||
|
|
||||||
case "$machine" in
|
|
||||||
*"Akitio MyCloud mini"*)
|
|
||||||
name="akitio"
|
|
||||||
;;
|
|
||||||
*"MitraStar Technology Corp. STG-212"*)
|
|
||||||
name="stg212"
|
|
||||||
;;
|
|
||||||
*"Shuttle KD20"*)
|
|
||||||
name="kd20"
|
|
||||||
;;
|
|
||||||
*"Pogoplug Pro"*)
|
|
||||||
name="pogoplug-pro"
|
|
||||||
;;
|
|
||||||
*"Pogoplug V3"*)
|
|
||||||
name="pogoplug-v3"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
[ -z "$name" ] && name="unknown"
|
|
||||||
|
|
||||||
[ -z "$OXNAS_BOARD_NAME" ] && OXNAS_BOARD_NAME="$name"
|
|
||||||
[ -z "$OXNAS_MODEL" ] && OXNAS_MODEL="$machine"
|
|
||||||
|
|
||||||
[ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
|
|
||||||
|
|
||||||
echo "$OXNAS_BOARD_NAME" > /tmp/sysinfo/board_name
|
|
||||||
echo "$OXNAS_MODEL" > /tmp/sysinfo/model
|
|
||||||
}
|
|
|
@ -1,9 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
do_oxnas() {
|
|
||||||
. /lib/oxnas.sh
|
|
||||||
|
|
||||||
oxnas_board_detect
|
|
||||||
}
|
|
||||||
|
|
||||||
boot_hook_add preinit_main do_oxnas
|
|
Loading…
Reference in New Issue