diff options
author | Tom Rini <trini@konsulko.com> | 2020-07-24 08:42:06 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-07-24 08:42:06 -0400 |
commit | 7208396bbf1df1c7a85d263b7ff054e6b45d8240 (patch) | |
tree | 41b20866e0a94e34ca76e54a2745ca7a5ba0889b /common/fdt_support.c | |
parent | 5d3a21df6694ebd66d5c34c9d62a26edc7456fc7 (diff) |
Revert "Merge tag 'dm-pull-20jul20' of git://git.denx.de/u-boot-dm"
This reverts commit 5d3a21df6694ebd66d5c34c9d62a26edc7456fc7, reversing
changes made to 56d37f1c564107e27d873181d838571b7d7860e7.
Unfortunately this is causing CI failures:
https://travis-ci.org/github/trini/u-boot/jobs/711313649
Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'common/fdt_support.c')
-rw-r--r-- | common/fdt_support.c | 32 |
1 files changed, 12 insertions, 20 deletions
diff --git a/common/fdt_support.c b/common/fdt_support.c index a565b470f8..3778de5368 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -816,8 +816,8 @@ static int fdt_del_partitions(void *blob, int parent_offset) return 0; } -static int fdt_node_set_part_info(void *blob, int parent_offset, - struct mtd_device *dev) +int fdt_node_set_part_info(void *blob, int parent_offset, + struct mtd_device *dev) { struct list_head *pentry; struct part_info *part; @@ -951,35 +951,27 @@ void fdt_fixup_mtdparts(void *blob, const struct node_info *node_info, struct mtd_device *dev; int i, idx; int noff; - bool inited = false; + + if (mtdparts_init() != 0) + return; for (i = 0; i < node_info_size; i++) { idx = 0; - noff = -1; - - 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; - + noff = fdt_node_offset_by_compatible(blob, -1, + node_info[i].compat); + while (noff != -FDT_ERR_NOTFOUND) { debug("%s: %s, mtd dev type %d\n", fdt_get_name(blob, noff, 0), node_info[i].compat, node_info[i].type); - - if (!inited) { - if (mtdparts_init() != 0) - return; - inited = true; - } - dev = device_find(node_info[i].type, idx++); if (dev) { if (fdt_node_set_part_info(blob, noff, dev)) return; /* return on error */ } + + /* Jump to next flash node */ + noff = fdt_node_offset_by_compatible(blob, noff, + node_info[i].compat); } } } |