The dmidecode Makefile uses $(shell uname -m) to detect architecture, which returns the build host's arch (x86_64) during cross-compilation. This causes x86-only utilities (biosdecode, vpddecode, ownership) to be incorrectly built and installed on ARM targets.
On NVIDIA Tegra234, running biosdecode triggers a flood of CBB fabric DECODE_ERR interrupts (23,568+ printk messages dropped) by scanning non-existent x86 BIOS memory at 0xF0000-0xFFFFF. Fix by passing TARGET_ARCH to the Makefile's MACHINE variable, so it correctly detects the target architecture and skips x86-only tools on ARM builds. Signed-off-by: Wei Gao <[email protected]> --- meta/recipes-devtools/dmidecode/dmidecode_3.7.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-devtools/dmidecode/dmidecode_3.7.bb b/meta/recipes-devtools/dmidecode/dmidecode_3.7.bb index 93c3678d9a..5c70765051 100644 --- a/meta/recipes-devtools/dmidecode/dmidecode_3.7.bb +++ b/meta/recipes-devtools/dmidecode/dmidecode_3.7.bb @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263" SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/dmidecode/${BP}.tar.xz" COMPATIBLE_HOST = "(i.86|x86_64|aarch64|arm|powerpc|powerpc64).*-linux" +EXTRA_OEMAKE += "MACHINE=${TARGET_ARCH}" do_install() { oe_runmake \ -- 2.43.0
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#239270): https://lists.openembedded.org/g/openembedded-core/message/239270 Mute This Topic: https://lists.openembedded.org/mt/119920434/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
