From: Heikki Krogerus Date: Mon, 1 Mar 2021 14:30:11 +0000 (+0300) Subject: software node: Fix node registration X-Git-Tag: v5.12-rc3~24^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8891123f9cbb9c1ee531e5a87fa116f0af685c48;p=thirdparty%2Flinux.git software node: Fix node registration Software node can not be registered before its parent. Fixes: 80488a6b1d3c ("software node: Add support for static node descriptors") Cc: 5.10+ # 5.10+ Signed-off-by: Heikki Krogerus Reviewed-by: Andy Shevchenko Tested-by: Andy Shevchenko Signed-off-by: Rafael J. Wysocki --- diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c index 37179a8b1ceba..74db8c971db74 100644 --- a/drivers/base/swnode.c +++ b/drivers/base/swnode.c @@ -938,6 +938,9 @@ int software_node_register(const struct software_node *node) if (software_node_to_swnode(node)) return -EEXIST; + if (node->parent && !parent) + return -EINVAL; + return PTR_ERR_OR_ZERO(swnode_register(node, parent, 0)); } EXPORT_SYMBOL_GPL(software_node_register);