The array bounds have to be checked before accessing the array element.

Identified by cppcheck.

Fixes: 67ac6ffaeefb ("mtd: nand: davinci: add opportunity to write keystone 
U-boot image")
Signed-off-by: Heinrich Schuchardt <[email protected]>
---
 drivers/mtd/nand/raw/davinci_nand.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/mtd/nand/raw/davinci_nand.c 
b/drivers/mtd/nand/raw/davinci_nand.c
index 33c2f16be8..724bbee752 100644
--- a/drivers/mtd/nand/raw/davinci_nand.c
+++ b/drivers/mtd/nand/raw/davinci_nand.c
@@ -739,8 +739,8 @@ static void davinci_nand_init(struct nand_chip *nand)

        layout = &nand_keystone_rbl_4bit_layout_oobfirst;
        layout->oobavail = 0;
-       for (i = 0; layout->oobfree[i].length &&
-            i < ARRAY_SIZE(layout->oobfree); i++)
+       for (i = 0; i < ARRAY_SIZE(layout->oobfree) &&
+            layout->oobfree[i].length; i++)
                layout->oobavail += layout->oobfree[i].length;

        nand->write_page = nand_davinci_write_page;
--
2.20.1

_______________________________________________
U-Boot mailing list
[email protected]
https://lists.denx.de/listinfo/u-boot

Reply via email to