I'm trying to make an UIO driver in ARM Cortex-A9 processors. These processors use ARMv7-A architecture. I'm stuck with cache operations from user space. Need help in how to perform cache flush and invalidate from userspace app. ARMv7-A has both instruction cache and data cache, requirement is data cache flush and invalidate.
Gone through https://community.arm.com/groups/processors/blog/2010/02/17/caches-and-self-modifying-code. Tried __clear_cache() provided GCC. It didn't work. I am not sure, thinking that it flushes only instruction cache.