mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
66 lines
1.2 KiB
Plaintext
66 lines
1.2 KiB
Plaintext
sanitize_name_x86() {
|
|
sed -e '
|
|
y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/;
|
|
s/[^a-z0-9_-]\+/-/g;
|
|
s/^-//;
|
|
s/-$//;
|
|
' "$@"
|
|
}
|
|
|
|
do_sysinfo_x86() {
|
|
local vendor product file
|
|
|
|
for file in sys_vendor board_vendor; do
|
|
vendor="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
|
|
case "$vendor" in
|
|
"System manufacturer")
|
|
continue
|
|
;;
|
|
"To be filled by O.E.M."|"To Be Filled By O.E.M.")
|
|
continue
|
|
;;
|
|
esac
|
|
[ -n "$vendor" ] && break
|
|
done
|
|
|
|
for file in product_name board_name; do
|
|
product="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
|
|
case "$vendor:$product" in
|
|
"PC Engines:APU")
|
|
product="apu1"
|
|
break
|
|
;;
|
|
"Sophos:SG"|"Sophos:XG")
|
|
case "$(cat /sys/devices/virtual/dmi/id/product_version 2>/dev/null)" in
|
|
105*)
|
|
product="${product}-105"
|
|
break
|
|
;;
|
|
esac
|
|
;;
|
|
"Supermicro:Super Server")
|
|
continue
|
|
;;
|
|
?*:System\ Product\ Name)
|
|
continue
|
|
;;
|
|
?*:To\ be\ filled\ by\ O\.E\.M\.|?*:To\ Be\ Filled\ By\ O\.E\.M\.)
|
|
continue
|
|
;;
|
|
?*:?*)
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
|
|
[ -n "$vendor" -a -n "$product" ] || return
|
|
|
|
mkdir -p /tmp/sysinfo
|
|
|
|
echo "$vendor $product" > /tmp/sysinfo/model
|
|
|
|
sanitize_name_x86 /tmp/sysinfo/model > /tmp/sysinfo/board_name
|
|
}
|
|
|
|
boot_hook_add preinit_main do_sysinfo_x86
|