diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
index 7c2171723..7d8a86331 100755
--- a/drivers/base/swnode.c
+++ b/drivers/base/swnode.c
@@ -544,6 +544,9 @@ software_node_get_reference_args(const struct fwnode_handle *fwnode,
 	if (nargs > NR_FWNODE_REFERENCE_ARGS)
 		return -EINVAL;
 
+	if (!args)
+		return 0;
+
 	args->fwnode = software_node_get(refnode);
 	args->nargs = nargs;