4 Commits

Author SHA1 Message Date
Samuel Holland
a2615b3b16 riscv: cpu: thead: Add CPU-specific cache operations
Use the vendor CSRs for enabling/disabling the caches, and the ISA
extension for cache maintenance.

Signed-off-by: Samuel Holland <samuel@sholland.org>
2023-07-28 16:13:28 -05:00
Samuel Holland
5159250118 riscv: cpu: thead: Initialize extension CSRs
Enable the T-HEAD ISA extensions, as these are required to use the cache
maintenance instructions. Enable the branch predictor and BTB to improve
performance. Some bits are only available on specific CPU models, so
provide Kconfig symbols for selecting the right model.

Signed-off-by: Samuel Holland <samuel@sholland.org>
2023-07-28 16:13:28 -05:00
Samuel Holland
63ba3ddfad riscv: cpu: thead: Add extension CSR definitions
T-HEAD C9xx and E9xx CPUs contain some extra CSRs which control the
branch predictor and cache-related functionality.

Signed-off-by: Samuel Holland <samuel@sholland.org>
2023-07-28 16:13:28 -05:00
Samuel Holland
ddbe65963d riscv: cpu: Add skeleton for T-HEAD CPUs
This is a direct copy of the existing generic CPU code.

Signed-off-by: Samuel Holland <samuel@sholland.org>
2023-07-28 16:13:28 -05:00