mbox series

[RFC,v2,0/4] Add CPPC extension support in OpenSBI

Message ID 20230323090320.2489167-1-sunilvl@ventanamicro.com
Headers show
Series Add CPPC extension support in OpenSBI | expand

Message

Sunil V L March 23, 2023, 9:03 a.m. UTC
The latest proposal of SBI CPPC extension can be found at:
https://lists.riscv.org/g/tech-prs/message/301

This series implements SBI CPPC extension support in OpenSBI
as-per above draft proposal.

To test these patches,
Qemu patches can be found in,
aia_plic_cppc_v1 branch at: https://github.com/vlsunil/qemu.git
Linux patches can be found in
aia_plic_cppc_v1 branch at: https://github.com/vlsunil/linux.git

These OpenSBI patches can also be found in
aia_plic_cppc_v1 branch at: https://github.com/vlsunil/opensbi.git

Changes since v1:
	1) Addresses Drew's feedback
		a) Updated common functions to handle most of the errors.
		b) Added is_reserved, readable, writable helpers as per Drew's feedback.
		c) Updated macro name to SBI_CPPC_ENERGY_PERF_PREFERENCE
	2) Updated RB tags

Sunil V L (4):
  include: Add defines for SBI CPPC extension
  lib: sbi: Implement SBI CPPC extension
  lib: sbi: Print the CPPC device name
  NOT_FOR_MERGE: Add test code to emulate CPPC extension

 include/sbi/sbi_cppc.h            |  37 ++++++
 include/sbi/sbi_ecall_interface.h |  34 +++++
 lib/sbi/Kconfig                   |   4 +
 lib/sbi/objects.mk                |   4 +
 lib/sbi/sbi_cppc.c                | 124 ++++++++++++++++++
 lib/sbi/sbi_ecall_cppc.c          |  63 +++++++++
 lib/sbi/sbi_init.c                |   5 +
 platform/generic/objects.mk       |   1 +
 platform/generic/platform.c       |   6 +
 platform/generic/test_cppc.c      | 204 ++++++++++++++++++++++++++++++
 10 files changed, 482 insertions(+)
 create mode 100644 include/sbi/sbi_cppc.h
 create mode 100644 lib/sbi/sbi_cppc.c
 create mode 100644 lib/sbi/sbi_ecall_cppc.c
 create mode 100644 platform/generic/test_cppc.c