checks: Do not check overlays for alias paths

The path given as an alias inside an overlay can be a path to a node
in the base DT. The path check searches only the overlay as that is
the only tree available leading to false check failures.

Skip this check when checking an overlay.

Signed-off-by: Andrew Davis <afd@ti.com>
Message-ID: <20250822171038.190122-1-afd@ti.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
Andrew Davis 2025-08-22 12:10:38 -05:00 committed by David Gibson
parent e1284ee5dc
commit 9197f1ccd9

View file

@ -718,11 +718,14 @@ static void check_alias_paths(struct check *c, struct dt_info *dti,
continue; continue;
} }
if (!prop->val.val || !get_node_by_path(dti->dt, prop->val.val)) { /* This check does not work for overlays with external paths */
if (!(dti->dtsflags & DTSF_PLUGIN) &&
(!prop->val.val || !get_node_by_path(dti->dt, prop->val.val))) {
FAIL_PROP(c, dti, node, prop, "aliases property is not a valid node (%s)", FAIL_PROP(c, dti, node, prop, "aliases property is not a valid node (%s)",
prop->val.val); prop->val.val);
continue; continue;
} }
if (strspn(prop->name, LOWERCASE DIGITS "-") != strlen(prop->name)) if (strspn(prop->name, LOWERCASE DIGITS "-") != strlen(prop->name))
FAIL(c, dti, node, "aliases property name must include only lowercase and '-'"); FAIL(c, dti, node, "aliases property name must include only lowercase and '-'");
} }