This is the mail archive of the ecos-patches@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: IO FLASH and caches


> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]