cfi_protect is not implemented on Spansion flashes (many do not even have protection...
[fw/openocd] / src / flash / nor / ocl.c
index 57d9efaaaa6f78f8e3bab54cd08ed410c751b8d5..6c609239b3c9e75cc56676e869a85e0acf7fd245 100644 (file)
@@ -21,8 +21,8 @@
 #include "config.h"
 #endif
 
+#include "imp.h"
 #include "ocl.h"
-#include "flash.h"
 #include <target/embeddedice.h>
 
 
@@ -101,8 +101,6 @@ static int ocl_erase(struct flash_bank *bank, int first, int last)
        /* wait for response, fixed timeout of 1 s */
        if ((retval = embeddedice_handshake(ocl->jtag_info, EICE_COMM_CTRL_WBIT, 1000) != ERROR_OK))
        {
-               if (retval == ERROR_TARGET_TIMEOUT)
-                       LOG_ERROR("loader not responding");
                return retval;
        }
 
@@ -206,8 +204,6 @@ static int ocl_write(struct flash_bank *bank, uint8_t *buffer, uint32_t offset,
                /* wait for response, fixed timeout of 1 s */
                if ((retval = embeddedice_handshake(ocl->jtag_info, EICE_COMM_CTRL_WBIT, 1000) != ERROR_OK))
                {
-                       if (retval == ERROR_TARGET_TIMEOUT)
-                               LOG_ERROR("loader not responding");
                        free(dcc_buffer);
                        return retval;
                }
@@ -252,8 +248,6 @@ static int ocl_probe(struct flash_bank *bank)
        /* wait for response, fixed timeout of 1 s */
        if ((retval = embeddedice_handshake(ocl->jtag_info, EICE_COMM_CTRL_WBIT, 1000) != ERROR_OK))
        {
-               if (retval == ERROR_TARGET_TIMEOUT)
-                       LOG_ERROR("loader not responding");
                return retval;
        }
 
@@ -348,14 +342,15 @@ static int ocl_auto_probe(struct flash_bank *bank)
 }
 
 struct flash_driver ocl_flash = {
-               .name = "ocl",
-               .flash_bank_command = &ocl_flash_bank_command,
-               .erase = &ocl_erase,
-               .protect = &ocl_protect,
-               .write = &ocl_write,
-               .probe = &ocl_probe,
-               .erase_check = &ocl_erase_check,
-               .protect_check = &ocl_protect_check,
-               .info = &ocl_info,
-               .auto_probe = &ocl_auto_probe,
-       };
+       .name = "ocl",
+       .flash_bank_command = ocl_flash_bank_command,
+       .erase = ocl_erase,
+       .protect = ocl_protect,
+       .write = ocl_write,
+       .read = default_flash_read,
+       .probe = ocl_probe,
+       .erase_check = ocl_erase_check,
+       .protect_check = ocl_protect_check,
+       .info = ocl_info,
+       .auto_probe = ocl_auto_probe,
+};