summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/shared/armv467ar-basic-cache (unfollow)
Commit message (Collapse)AuthorFilesLines
2016-10-02bsps/arm: Fix basic cache support for SMPSebastian Huber1-8/+8
Updates #2782 Updates #2783
2016-10-02arm/bsps: CP15 and basic cache support entire cache clean for more ↵Pavel Pisa1-3/+19
architecture variants now. Next cache operations should work on most of cores now rtems_cache_flush_entire_data() rtems_cache_invalidate_entire_data() rtems_cache_invalidate_entire_instruction() Instruction cache invalidate works on the first level for now only. Data cacache operations are extended to ensure flush/invalidate on all cache levels. The CP15 arm_cp15_data_cache_clean_all_levels() function extended to continue through unified levels too (ctype = 4). Updates #2782 Updates #2783
2016-10-02bsps/arm: basic on core cache support changed to use l1 functions.Pavel Pisa1-3/+40
The basic data and instruction rage functions should be compatible for all ARMv4,5,6,7 functions. On the other hand, some functions are not portable, for example arm_cp15_data_cache_test_and_clean() and arm_cp15_data_cache_invalidate() for all versions and there has to be specialized version for newer cores. arm_cache_l1_properties_for_level uses CCSIDR which is not present on older chips. Actual version is only experimental, needs more changes and problem has been found on RPi1 with dlopen so there seems to be real problem. Updates #2783 Updates #2782
2016-10-02bsps/arm: Change code to explicit selection of cache implementation for ARM ↵Pavel Pisa1-0/+134
BSPs. The original ARM architecture wide cache_.h is changed to dummy version for targets not implementing/enablig cache at all. The ARM targets equipped by cache should include appropriate implementation. Next options are available for now c/src/lib/libbsp/arm/shared/armv467ar-basic-cache/cache_.h basic ARM cache integrated on the CPU core directly which requires only CP15 oparations c/src/lib/libbsp/arm/shared/arm-l2c-310/cache_.h support for case where ARM L2C-310 cache controller is used. It is accessible as mmaped peripheral. c/src/lib/libbsp/arm/shared/armv7m/include/cache_.h Cortex-M specific cache support Updates #2782 Updates #2783