diff --git a/lib/utils/fdt/fdt_domain.c b/lib/utils/fdt/fdt_domain.c index 8683bb3e..4fde50f5 100644 --- a/lib/utils/fdt/fdt_domain.c +++ b/lib/utils/fdt/fdt_domain.c @@ -475,12 +475,12 @@ static int __fdt_parse_domain(const void *fdt, int domain_offset, void *opaque) if (!fdt_node_is_enabled(fdt, cpu_offset)) continue; + /* This is an optional property */ val = fdt_getprop(fdt, cpu_offset, "opensbi-domain", &len); - if (!val || len < 4) { - err = SBI_EINVAL; - goto fail_free_all; - } + if (!val || len < 4) + continue; + /* However, it should be valid if specified */ doffset = fdt_node_offset_by_phandle(fdt, fdt32_to_cpu(*val)); if (doffset < 0) { err = doffset;