]> git.sur5r.net Git - openocd/commitdiff
mx2: add error propagation and remove warnings
authorØyvind Harboe <oyvind.harboe@zylin.com>
Fri, 21 Oct 2011 23:11:58 +0000 (01:11 +0200)
committerØyvind Harboe <oyvindharboe@gmail.com>
Sun, 23 Oct 2011 13:30:46 +0000 (13:30 +0000)
Change-Id: Idd4fb452790e5d7921a749679dbd865586e5a4a9
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Reviewed-on: http://openocd.zylin.com/48
Tested-by: jenkins
Reviewed-by: Øyvind Harboe <oyvindharboe@gmail.com>
src/flash/nand/mx2.c

index 77ae13827d5ea256b35af4bd555c7b2d89a7636a..6c3c5508f2e20b1efd7fb40b3e51172aca8a85dd 100644 (file)
@@ -501,15 +501,20 @@ static int imx27_read_page(struct nand_device *nand, uint32_t page,
                return retval;
        }
        /* Reset address_cycles before imx27_command ?? */
-       retval = ERROR_OK;
-       retval |= imx27_command(nand, NAND_CMD_READ0);
-
-       retval |= imx27_address(nand, 0); //col
-       retval |= imx27_address(nand, 0); //col
-       retval |= imx27_address(nand, page & 0xff); //page address
-       retval |= imx27_address(nand, (page >> 8) & 0xff); //page address
-       retval |= imx27_address(nand, (page >> 16) & 0xff); //page address
-       retval |= imx27_command(nand, NAND_CMD_READSTART);
+       retval = imx27_command(nand, NAND_CMD_READ0);
+       if (retval != ERROR_OK) return retval;
+       retval = imx27_address(nand, 0); //col
+       if (retval != ERROR_OK) return retval;
+       retval = imx27_address(nand, 0); //col
+       if (retval != ERROR_OK) return retval;
+       retval = imx27_address(nand, page & 0xff); //page address
+       if (retval != ERROR_OK) return retval;
+       retval = imx27_address(nand, (page >> 8) & 0xff); //page address
+       if (retval != ERROR_OK) return retval;
+       retval = imx27_address(nand, (page >> 16) & 0xff); //page address
+       if (retval != ERROR_OK) return retval;
+       retval = imx27_command(nand, NAND_CMD_READSTART);
+       if (retval != ERROR_OK) return retval;
 
        target_write_u16(target, MX2_NF_BUFADDR, 0);
        mx2_nf_info->fin = MX2_NF_FIN_DATAOUT;