[PATCH v2 0/5] Support external CMO to flush entire cache
Nick Hu
nick.hu at sifive.com
Thu May 8 22:09:11 PDT 2025
Hi
Any feedback about this?
On Thu, Apr 24, 2025 at 11:40 AM Nick Hu <nick.hu at sifive.com> wrote:
>
> Some features, such as power management, may require flushing the entire
> cache before entering a non-retention power state. To support this, a
> simple cache framework is introduced to allow the external CMO to
> perform a full cache flush.
>
> Changes in v2:
> - Since the platform override hooks was deprecated, use the fdt_driver
> for initializing the sifive_dev_platform.
>
> Nick Hu (3):
> lib: utils: Add cache flush library
> lib: utils: Add FDT cache library
> lib: utils/cache: Add fdt cmo helpers
>
> Vincent Chen (2):
> utils: cache: Add SiFive ccache controller
> platform: generic: Add SiFive development platform
>
> include/sbi_utils/cache/cache.h | 69 +++++++
> include/sbi_utils/cache/fdt_cache.h | 34 ++++
> include/sbi_utils/cache/fdt_cmo_helper.h | 34 ++++
> lib/utils/Kconfig | 2 +
> lib/utils/cache/Kconfig | 23 +++
> lib/utils/cache/cache.c | 46 +++++
> lib/utils/cache/fdt_cache.c | 87 +++++++++
> lib/utils/cache/fdt_cache_drivers.carray | 3 +
> lib/utils/cache/fdt_cmo_helper.c | 112 +++++++++++
> lib/utils/cache/fdt_sifive_ccache.c | 175 ++++++++++++++++++
> lib/utils/cache/objects.mk | 14 ++
> platform/generic/Kconfig | 5 +
> platform/generic/configs/defconfig | 3 +
> platform/generic/sifive/objects.mk | 3 +
> platform/generic/sifive/sifive_dev_platform.c | 42 +++++
> 15 files changed, 652 insertions(+)
> create mode 100644 include/sbi_utils/cache/cache.h
> create mode 100644 include/sbi_utils/cache/fdt_cache.h
> create mode 100644 include/sbi_utils/cache/fdt_cmo_helper.h
> create mode 100644 lib/utils/cache/Kconfig
> create mode 100644 lib/utils/cache/cache.c
> create mode 100644 lib/utils/cache/fdt_cache.c
> create mode 100644 lib/utils/cache/fdt_cache_drivers.carray
> create mode 100644 lib/utils/cache/fdt_cmo_helper.c
> create mode 100644 lib/utils/cache/fdt_sifive_ccache.c
> create mode 100644 lib/utils/cache/objects.mk
> create mode 100644 platform/generic/sifive/sifive_dev_platform.c
>
> --
> 2.17.1
>
More information about the opensbi
mailing list