fdt_support: skip MTD node with "disabled" in fdt_fixup_mtdparts()

Currently, fdt_fixup_mtdparts() only checks the compatible property.
It is pointless to fix up the disabled node.

Skip the node if it has the property:

  status = "disabled"

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Masahiro Yamada 2020-07-17 10:46:19 +09:00 committed by Simon Glass
parent 53a896649a
commit 7d8073e7cf

View file

@ -955,9 +955,16 @@ void fdt_fixup_mtdparts(void *blob, const struct node_info *node_info,
for (i = 0; i < node_info_size; i++) { for (i = 0; i < node_info_size; i++) {
idx = 0; idx = 0;
noff = fdt_node_offset_by_compatible(blob, -1, noff = -1;
node_info[i].compat);
while (noff != -FDT_ERR_NOTFOUND) { while ((noff = fdt_node_offset_by_compatible(blob, noff,
node_info[i].compat)) >= 0) {
const char *prop;
prop = fdt_getprop(blob, noff, "status", NULL);
if (prop && !strcmp(prop, "disabled"))
continue;
debug("%s: %s, mtd dev type %d\n", debug("%s: %s, mtd dev type %d\n",
fdt_get_name(blob, noff, 0), fdt_get_name(blob, noff, 0),
node_info[i].compat, node_info[i].type); node_info[i].compat, node_info[i].type);
@ -973,10 +980,6 @@ void fdt_fixup_mtdparts(void *blob, const struct node_info *node_info,
if (fdt_node_set_part_info(blob, noff, dev)) if (fdt_node_set_part_info(blob, noff, dev))
return; /* return on error */ return; /* return on error */
} }
/* Jump to next flash node */
noff = fdt_node_offset_by_compatible(blob, noff,
node_info[i].compat);
} }
} }
} }