From: Michal Simek <michal.simek@amd.com>
Date: Fri, 26 Apr 2024 13:38:12 +0000 (+0200)
Subject: lib: smbios: Let detect the system via sysinfo
X-Git-Tag: v2025.01-rc5-pxa1908~398^2~27^2~1
X-Git-Url: http://git.dujemihanovic.xyz/browse.php?a=commitdiff_plain;h=85df7f173cd2ec2acaf163e0136ef9e4e940917f;p=u-boot.git

lib: smbios: Let detect the system via sysinfo

Currently code looks like that it sysinfo drivers are supported but
actually none checking that system is detected. That's why call
sysinfo_detect() to make sure that priv->detected in sysinfo uclass is
setup hence information from driver can be passed to smbios.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---

diff --git a/lib/smbios.c b/lib/smbios.c
index a822acd48e..c6c3b62ae6 100644
--- a/lib/smbios.c
+++ b/lib/smbios.c
@@ -573,8 +573,14 @@ ulong write_smbios_table(ulong addr)
 	ctx.node = ofnode_null();
 	if (IS_ENABLED(CONFIG_OF_CONTROL) && CONFIG_IS_ENABLED(SYSINFO)) {
 		uclass_first_device(UCLASS_SYSINFO, &ctx.dev);
-		if (ctx.dev)
+		if (ctx.dev) {
+			int ret;
+
 			parent_node = dev_read_subnode(ctx.dev, "smbios");
+			ret = sysinfo_detect(ctx.dev);
+			if (ret)
+				return ret;
+		}
 	} else {
 		ctx.dev = NULL;
 	}