openwrt/target/linux/cns3xxx/base-files/lib/cns3xxx.sh
Mathias Kresin 78cf5eed6e treewide: do board detection during preinit
Do the board detection during preinit to unify it across all targets.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-07-15 23:13:34 +02:00

38 lines
721 B
Bash

#!/bin/sh
CNS3XXX_BOARD_NAME=
CNS3XXX_MODEL=
cns3xxx_board_detect() {
local machine
local name
machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /Hardware/ {print $2}' /proc/cpuinfo)
case "$machine" in
"Gateworks Corporation Laguna"*)
name="laguna"
;;
*)
name="generic";
;;
esac
[ -z "$CNS3XXX_BOARD_NAME" ] && CNS3XXX_BOARD_NAME="$name"
[ -z "$CNS3XXX_MODEL" ] && CNS3XXX_MODEL="$machine"
[ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
echo "$CNS3XXX_BOARD_NAME" > /tmp/sysinfo/board_name
echo "$CNS3XXX_MODEL" > /tmp/sysinfo/model
}
cns3xxx_board_name() {
local name
[ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
[ -z "$name" ] && name="unknown"
echo "$name"
}