x86: improve sysinfo handling of dummy values
authorStefan Lippers-Hollmann <s.l-h@gmx.de>
Thu, 30 Dec 2021 02:52:07 +0000 (03:52 +0100)
committerChristian Lamparter <chunkeey@gmail.com>
Sat, 8 Jan 2022 22:25:05 +0000 (23:25 +0100)
Fall back to using board_vendor and board_name, if known dummy values
are used for sys_vendor and product_name.

Examples:
To be filled by O.E.M.:To be filled by O.E.M.
--> INTEL Corporation:ChiefRiver

System manufacturer:System Product Name
--> ASUSTeK COMPUTER INC.:P8H77-M PRO

To Be Filled By O.E.M.:To Be Filled By O.E.M.
--> ASRock:Q1900DC-ITX

Gigabyte Technology Co., Ltd.:To be filled by O.E.M.
--> Gigabyte Technology Co., Ltd.:H77M-D3H

empty:empty
--> TYAN Computer Corporation:TYAN Toledo i3210W/i3200R S5211

To Be Filled By O.E.M.:To Be Filled By O.E.M.
--> ASRock:H77 Pro4-M

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
target/linux/x86/base-files/lib/preinit/01_sysinfo

index 498b0769988d3247a35d9c87e40f79cdf06544e8..97e8e003f344c1216257ec164c9a1d6d9124cbdc 100644 (file)
@@ -12,12 +12,24 @@ do_sysinfo_x86() {
 
        for file in sys_vendor board_vendor; do
                vendor="$(cat /sys/devices/virtual/dmi/id/$file 2>/dev/null)"
+               case "$vendor" in
+               empty | \
+               System\ manufacturer | \
+               To\ [bB]e\ [fF]illed\ [bB]y\ 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
+               ?*:empty | \
+               ?*:System\ Product\ Name | \
+               ?*:To\ [bB]e\ [fF]illed\ [bB]y\ O\.E\.M\.)
+                       continue
+                       ;;
                "PC Engines:APU")
                        product="apu1"
                        break