Add SiFive Private L2 cache and PMU driver
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest3 patches 17 repliesIn review
- v13 patches 28 repliesSuperseded
Changes in v2 from the cover letter
- Rebased on Linux-6.5-rc2
- Change pl2 cache compatible string to lowercase
- Add cpuhp_remove_state() after pl2 cache driver probe fail
- Return 0 instead of return ret at the end of sifive_pl2_cache_init()
- Cut down the pl2 cache config log lines in pl2_config_read()
- Sorting the variable by types in sifive_pl2_cache_dev_probe()
- Change the error message when failing to find the CPU node
- Add pl2 PMU driver to support per-task profile
- Move the pl2 PMU driver implementation to the drivers/perf folder
- Keep only one pl2 cache compatible string suggested by Krzysztof and Conor
- Addressed Krzysztof's and Conor's comments on DT binding
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/3 | dt-bindings: riscv: sifive: Add SiFive Private L2 cache controllerDocumentation/ | +62 | 16 replies | |
| 2/3 | soc: sifive: Add SiFive private L2 cache driverdrivers/ drivers/ drivers/ +2 more | +231 | 1 reply | |
| 3/3 | soc: sifive: Add SiFive private L2 cache PMU driverdrivers/ drivers/ drivers/ +2 more | +624 | 0 replies |
Reviews trailers per patch
All 3 patches have a Reviewed-by or Acked-by.
| Patch | Zong Li | Nick Hu |
|---|---|---|
| 1/3 | R-b | R-b |
| 2/3 | R-b | |
| 3/3 | R-b | R-b |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v2 0/3] Add SiFive Private L2 cache and PMU driver
This patch series adds the SiFive Private L2 cache controller driver and Performance Monitoring Unit (PMU) driver.
The Private L2 cache communicates with both the upstream L1 caches and downstream L3 cache or memory, enabling a high- performance cache subsystem. It is also responsible for managing requests from the L1 instruction and data caches of the core.
The Private L2 Performance Monitoring Unit (PMU) consists of a set of event-programmable counters and their event selector registers. The registers are available to control the behavior of the counters.
Changes since v1:
- Rebased on Linux-6.5-rc2
- Change pl2 cache compatible string to lowercase
- Add cpuhp_remove_state() after pl2 cache driver probe fail
- Return 0 instead of return ret at the end of sifive_pl2_cache_init()
- Cut down the pl2 cache config log lines in pl2_config_read()
- Sorting the variable by types in sifive_pl2_cache_dev_probe()
- Change the error message when failing to find the CPU node
- Add pl2 PMU driver to support per-task profile
- Move the pl2 PMU driver implementation to the drivers/perf folder
- Keep only one pl2 cache compatible string suggested by Krzysztof and Conor
- Addressed Krzysztof's and Conor's comments on DT binding
Eric Lin (2):
dt-bindings: riscv: sifive: Add SiFive Private L2 cache controller
soc: sifive: Add SiFive private L2 cache driver
Greentime Hu (1):
soc: sifive: Add SiFive private L2 cache PMU driver
.../bindings/cache/sifive,pl2cache.yaml | 62 ++ drivers/perf/Kconfig | 10 + drivers/perf/Makefile | 1 + drivers/perf/sifive_pl2_pmu.c | 602 ++++++++++++++++++ drivers/soc/sifive/Kconfig | 8 + drivers/soc/sifive/Makefile | 1 + drivers/soc/sifive/sifive_pl2.h | 29 + drivers/soc/sifive/sifive_pl2_cache.c | 202 ++++++ include/linux/cpuhotplug.h | 1 + 9 files changed, 916 insertions(+) create mode 100644 Documentation/devicetree/bindings/cache/sifive,pl2cache.yaml create mode 100644 drivers/perf/sifive_pl2_pmu.c create mode 100644 drivers/soc/sifive/sifive_pl2.h create mode 100644 drivers/soc/sifive/sifive_pl2_cache.c
Signature · 1 line
2.40.1