If no ofnode is attached by the controller driver, DT parsing does not
happen.

Signed-off-by: Miquel Raynal (DAVE) <[email protected]>
---
 drivers/mtd/nand/raw/zynq_nand.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/mtd/nand/raw/zynq_nand.c b/drivers/mtd/nand/raw/zynq_nand.c
index 2d07b29ecabd..54c255630724 100644
--- a/drivers/mtd/nand/raw/zynq_nand.c
+++ b/drivers/mtd/nand/raw/zynq_nand.c
@@ -1103,6 +1103,11 @@ static int zynq_nand_probe(struct udevice *dev)
                return dm_scan_fdt_dev(dev);
        }
 
+       if (!ofnode_get_child_count(of_nand))
+               nand_set_flash_node(nand_chip, of_nand);
+       else
+               nand_set_flash_node(nand_chip, ofnode_first_subnode(of_nand));
+
        if (ofnode_read_resource(of_nand, 0, &res)) {
                printf("Failed to get nand resource\n");
                return -ENODEV;

-- 
2.53.0

Reply via email to