10 Aug 2004 11:49
virtual vectors problem
Bart Veer <bartv <at> ecoscentric.com>
2004-08-10 09:49:11 GMT
2004-08-10 09:49:11 GMT
There is a problem with the current virtual vectors code and there are
two obvious ways of resolving it. I have a personal preference, but
some people may disagree.
In hal/common/current/src/hal_if.c we have the following code:
//----------------------------------
// Cache functions
#ifdef CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
static void
flush_icache(void *__p, int __nbytes)
{
CYGARC_HAL_SAVE_GP();
#ifdef HAL_ICACHE_FLUSH
HAL_ICACHE_FLUSH( __p , __nbytes );
#elif defined(HAL_ICACHE_INVALIDATE)
HAL_ICACHE_INVALIDATE();
#endif
CYGARC_HAL_RESTORE_GP();
}
static void
flush_dcache(void *__p, int __nbytes)
{
CYGARC_HAL_SAVE_GP();
#ifdef HAL_DCACHE_FLUSH
HAL_DCACHE_FLUSH( __p , __nbytes );
#elif defined(HAL_DCACHE_INVALIDATE)
HAL_DCACHE_INVALIDATE();
(Continue reading)
RSS Feed