openwrtv3/target/linux/oxnas/base-files/etc/board.d/02_network
Daniel Golle 4f017c871d 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>
2018-11-04 21:43:36 +01:00

45 lines
790 B
Bash
Executable file

#!/bin/sh
. /lib/functions/uci-defaults.sh
. /lib/functions/system.sh
board_config_update
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
"shuttle,kd20")
lan_mac="$(legacy_boot_mac_adr)"
;;
esac
ucidef_set_interface_lan "eth0" "dhcp"
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" "$lan_mac"
board_config_flush
exit 0