x86: add led driver for PC Engines APU1
[openwrt/openwrt.git] / target / linux / x86 / base-files / lib / preinit / 01_sysinfo
1 sanitize_name_x86() {
2 sed -e '
3 y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;
4 s/[^a-z0-9_-]\+/-/g;
5 s/^-//;
6 s/-$//;
7 ' "$@"
8 }
9
10 do_sysinfo_x86() {
11 local vendor product file
12
13 for file in sys_vendor board_vendor; do
14 vendor="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
15 [ -n "$vendor" ] && break
16 done
17
18 for file in product_name board_name; do
19 product="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
20 case "$vendor:$product" in
21 "PC Engines:APU")
22 product="apu1"
23 break
24 ;;
25 "Supermicro:Super Server")
26 continue
27 ;;
28 ?*:?*)
29 break
30 ;;
31 esac
32 done
33
34 [ -n "$vendor" -a -n "$product" ] || return
35
36 mkdir -p /tmp/sysinfo
37
38 echo "$vendor $product" > /tmp/sysinfo/model
39
40 sanitize_name_x86 /tmp/sysinfo/model > /tmp/sysinfo/board_name
41 }
42
43 boot_hook_add preinit_main do_sysinfo_x86