const char *compat;
char dtb_name[256];
int buf_len = 256;
- int ret;
- ret = fdt_get_string(gd->fdt_blob, 0, "compatible", &compat);
- if (ret)
+ if (getenv("fdt_file"))
+ return 0; /* do nothing if it is already set */
+
+ compat = fdt_stringlist_get(gd->fdt_blob, 0, "compatible", 0, NULL);
+ if (!compat)
return -EINVAL;
if (strncmp(compat, VENDOR_PREFIX, strlen(VENDOR_PREFIX)))
strncat(dtb_name, ".dtb", buf_len);
- setenv("fdt_file", dtb_name);
-
- return 0;
+ return setenv("fdt_file", dtb_name);
}
int board_late_init(void)