Linux enumerates MTD partitions in DTB order, while the fdt_add_subnode()
function puts a new subnode at the beginning.

To fix this, put MTD partitions into DTB in reverse order.

Fixes: 92f36c8e74c1 ("arm: mvebu: turris_omnia: fixup MTD partitions in Linux' 
DTB")
Signed-off-by: Pali Rohár <[email protected]>
Reviewed-by: Marek Behún <[email protected]>
---
 board/CZ.NIC/turris_omnia/turris_omnia.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/CZ.NIC/turris_omnia/turris_omnia.c 
b/board/CZ.NIC/turris_omnia/turris_omnia.c
index a48e1f5c305d..d2f510993449 100644
--- a/board/CZ.NIC/turris_omnia/turris_omnia.c
+++ b/board/CZ.NIC/turris_omnia/turris_omnia.c
@@ -601,7 +601,7 @@ static bool fixup_mtd_partitions(void *blob, int offset, 
struct mtd_info *mtd)
 
        mtd_probe_devices();
 
-       list_for_each_entry(slave, &mtd->partitions, node) {
+       list_for_each_entry_reverse(slave, &mtd->partitions, node) {
                char name[32];
                int part;
 
-- 
2.20.1

Reply via email to