[ECOS] S3C4510: invalidate cache

Roland Caßebohm roland.cassebohm@visionsystems.de
Tue Nov 4 15:30:00 GMT 2003


I had several problems using fash driver with our new platform
using the Samsung S3C4510B ARM7TDMI processor. Our hal is based
on the SNDS100 hal. While flash accessing the cache will be
disabled and invalidated using HAL_UCACHE_INVALIDATE_ALL().

For example in flash_dev_query():
After the flash driver reenables the cache, it verifies the read
id's of the flash device, which are save in the variable id[2]
in stack. But the S3C4510B seems to read the invalide cache.

The macro HAL_UCACHE_INVALIDATE_ALL() of the SNDS100 hal uses
the strategy which is discriped in the S3C4510B manual. Only 
one thing is different, the SNDS100 hal sets the "non-cacheable"
bit (0x4000000) while deleting tag-ram. But right this seems to 
make the problems. I have changed this back to don't use this
bit and now it works.

The E7T hal also use this tag-addresses, should I make a patch
for both platforms, SNDS100 and E7T?


Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss

More information about the Ecos-discuss mailing list