diff options
author | Samuel Holland <samuel.holland@sifive.com> | 2025-04-14 12:47:04 -0700 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2025-04-24 08:23:02 -0600 |
commit | 8327aa9af4be32b4236dfd25c8cefe568e9b3641 (patch) | |
tree | 025360246604f6b0a164312d2be212ef40bb1886 /lib/smbios.c | |
parent | a948f5711844498421432719c4c19d9629cb9c05 (diff) |
smbios: Do not look up children of invalid nodes
If there is no UCLASS_SYSINFO device available, parent_node will be
ofnode_null(). Calling ofnode_find_subnode() then triggers an assertion:
drivers/core/ofnode.c:598: ofnode_find_subnode: Assertion `ofnode_valid(node)' failed.
Check for a valid parent_node, not just that OF_CONTROL is enabled.
Fixes: 44ffb6f0ecaf ("smbios: Allow properties to come from the device tree")
Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
Diffstat (limited to 'lib/smbios.c')
-rw-r--r-- | lib/smbios.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/smbios.c b/lib/smbios.c index 7c9701a57f9..b8c2846277a 100644 --- a/lib/smbios.c +++ b/lib/smbios.c @@ -950,7 +950,7 @@ ulong write_smbios_table(ulong addr) ctx.subnode_name = NULL; if (method->subnode_name) { ctx.subnode_name = method->subnode_name; - if (IS_ENABLED(CONFIG_OF_CONTROL)) + if (ofnode_valid(parent_node)) ctx.node = ofnode_find_subnode(parent_node, method->subnode_name); } |