cache: Introduce external cache controller system support
The cache API currently shipped in Zephyr is assuming that the cache controller is always on-core thus managed at the arch level. This is not always the case because many SoCs rely on external cache controllers as a peripheral external to the core (for example PL310 cache controller and the L2Cxxx family). In some cases you also want a single driver to control a whole set of cache controllers. Rework the cache code introducing support for external cache controllers. Signed-off-by: Carlo Caione <ccaione@baylibre.com>
This commit is contained in:
parent
3b00571160
commit
e2333269ae
10 changed files with 243 additions and 115 deletions
1
drivers/cache/CMakeLists.txt
vendored
Normal file
1
drivers/cache/CMakeLists.txt
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
18
drivers/cache/Kconfig
vendored
Normal file
18
drivers/cache/Kconfig
vendored
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Copyright (c) 2021 Carlo Caione <ccaione@baylibre.com>
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
menuconfig CACHE
|
||||
bool "External cache controllers drivers"
|
||||
help
|
||||
Enable support for external cache controllers drivers
|
||||
|
||||
if CACHE
|
||||
|
||||
module = CACHE
|
||||
module-str = cache
|
||||
source "subsys/logging/Kconfig.template.log_config"
|
||||
|
||||
config CACHE_HAS_DRIVER
|
||||
bool
|
||||
|
||||
endif # CACHE
|
Loading…
Add table
Add a link
Reference in a new issue