The code unconditionally writes into the oob area all the time.
---
 src/flash/nand.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/flash/nand.c b/src/flash/nand.c
index 2344ede..c42291b 100644
--- a/src/flash/nand.c
+++ b/src/flash/nand.c
@@ -911,7 +911,10 @@ int nand_write_page_raw(struct nand_device_s *device, u32 
page, u8 *data, u32 da
                 * or 2048 for the beginning of OOB area)
                 */
                device->controller->address(device, 0x0);
-               device->controller->address(device, 0x8);
+               if (data)
+                       device->controller->address(device, 0x0);
+               else
+                       device->controller->address(device, 0x8);
                
                /* row */
                device->controller->address(device, page & 0xff);
-- 
1.6.2-rc2.GIT

_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to