> However, I'm stll not sure that it is necessary to change this code. > The call to the device flash_program() routine will still evict the > caches and this verification will just refill the cache with the new > flash contents. Functionally, it should remain the same. We have never > needed to make this change for other targets that have similar cache > behavior, so I'm still unclear what the issue here is.
I'm trying to add a STRATA v2 driver in my code. Reading from http://ecos.sourceware.org/docs-latest/ref/strata-instance.html#STRATA-INSTANCE-CACHE I got the impression that my first choice is to implement the CYGARC_UNCACHED_ADDRESS in the HAL and I'm off the hook. All the other solutions, including defining STRATA_INTSCACHE_BEGIN and STRATA_INTSCACHE_END looked like workarounds if I cannot bypass caches using the address trick. The problem starts when I don't invalidate the cache in the STRATA driver. The verification in IO FLASH fails, and this is the first bad thing that happened. That was also the first thing I tried to fix. I guess I should make a patch for the STRATA v2 documentation and add a cache invalidate in the HAL_STRATA_INTSCACHE_END macro in my HAL. -- Edgar Grimberg System Developer Zylin AS ZY1000 JTAG Debugger http://www.zylin.com/zy1000.html Phone: (+47) 51 63 25 00
