]> git.sur5r.net Git - openocd/blobdiff - src/target/mips_m4k.c
MIPS: fastdata bulk write fallback
[openocd] / src / target / mips_m4k.c
index 4adc1f193c39818d91a715819afceb32cb659338..312fc09cf517376a87892fee02435e9ff77b17b8 100644 (file)
@@ -1001,6 +1001,12 @@ int mips_m4k_bulk_write_memory(struct target *target, uint32_t address, uint32_t
        }
 
        retval = mips32_pracc_fastdata_xfer(ejtag_info, source, write, address, count, (uint32_t*) buffer);
+       if (retval != ERROR_OK)
+       {
+               /* FASTDATA access failed, try normal memory write */
+               LOG_WARNING("Fastdata access Failed, falling back to non-bulk write");
+               retval = mips_m4k_write_memory(target, address, 4, count, buffer);
+       }
 
        if (source)
                target_free_working_area(target, source);