[PATCH 00/10] riscv: add initial RPMI virt support

Subrahmanya Lingappa posted 10 patches 1 day, 18 hours ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/cover.1783660209.git.subrahmanya.lingappa@qti.qualcomm.com
Maintainers: Paolo Bonzini <pbonzini@redhat.com>, Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>, Palmer Dabbelt <palmer@dabbelt.com>, Alistair Francis <alistair.francis@wdc.com>, Weiwei Li <liwei1518@gmail.com>, Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>, Liu Zhiwei <zhiwei_liu@linux.alibaba.com>, Chao Liu <chao.liu@processmission.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "Daniel P. Berrangé" <berrange@redhat.com>, "Philippe Mathieu-Daudé" <philmd@mailo.com>, "Alex Bennée" <alex.bennee@linaro.org>, Fabiano Rosas <farosas@suse.de>, Laurent Vivier <lvivier@redhat.com>
There is a newer version of this series
Kconfig.host                               |   3 +
MAINTAINERS                                |   3 +
docs/system/riscv/virt.rst                 |  50 ++
hw/misc/Kconfig                            |   4 +
hw/misc/meson.build                        |   6 +
hw/misc/riscv_rpmi.c                       | 558 +++++++++++++++++
hw/misc/riscv_rpmi_hsm.c                   | 287 +++++++++
hw/misc/riscv_rpmi_internal.h              |  42 ++
hw/misc/riscv_rpmi_sysreset.c              | 206 +++++++
hw/misc/riscv_rpmi_syssusp.c               | 191 ++++++
hw/riscv/Kconfig                           |   1 +
hw/riscv/meson.build                       |   1 +
hw/riscv/rpmi-fdt.c                        | 103 ++++
hw/riscv/virt.c                            | 167 +++++
include/hw/misc/riscv_rpmi.h               | 126 ++++
include/hw/riscv/rpmi-fdt.h                |  41 ++
include/hw/riscv/virt.h                    |   3 +
meson.build                                |  14 +
meson_options.txt                          |   2 +
scripts/meson-buildoptions.sh              |   3 +
tests/functional/riscv64/meson.build       |   2 +
tests/functional/riscv64/test_rpmi_virt.py | 172 ++++++
tests/qtest/meson.build                    |   2 +
tests/qtest/riscv-rpmi-test.c              | 684 +++++++++++++++++++++
24 files changed, 2671 insertions(+)
create mode 100644 hw/misc/riscv_rpmi.c
create mode 100644 hw/misc/riscv_rpmi_hsm.c
create mode 100644 hw/misc/riscv_rpmi_internal.h
create mode 100644 hw/misc/riscv_rpmi_sysreset.c
create mode 100644 hw/misc/riscv_rpmi_syssusp.c
create mode 100644 hw/riscv/rpmi-fdt.c
create mode 100644 include/hw/misc/riscv_rpmi.h
create mode 100644 include/hw/riscv/rpmi-fdt.h
create mode 100644 tests/functional/riscv64/test_rpmi_virt.py
create mode 100644 tests/qtest/riscv-rpmi-test.c
[PATCH 00/10] riscv: add initial RPMI virt support
Posted by Subrahmanya Lingappa 1 day, 18 hours ago
Add optional librpmi support and the initial RISC-V virt RPMI
implementation. This series introduces the shared-memory transport, FDT
helpers, opt-in virt wiring, and the Base, System Reset, HSM, and System
Suspend service groups with qtest and functional coverage.

The implementation targets the RISC-V Platform Management Interface
(RPMI) Specification v1.0 Ratified and uses librpmi as the backend.

Subrahmanya Lingappa (10):
  build: add optional librpmi dependency
  hw/misc: add RISC-V RPMI transport and Base support
  hw/riscv: add RPMI FDT helpers
  hw/riscv/virt: add opt-in RPMI base support
  riscv: add RPMI system reset service
  riscv: add RPMI HSM service
  riscv: add RPMI system suspend service
  docs/system/riscv: document initial virt RPMI support
  tests/qtest: cover initial RISC-V RPMI services
  tests/functional: add initial RPMI virt guest smoke

 Kconfig.host                               |   3 +
 MAINTAINERS                                |   3 +
 docs/system/riscv/virt.rst                 |  50 ++
 hw/misc/Kconfig                            |   4 +
 hw/misc/meson.build                        |   6 +
 hw/misc/riscv_rpmi.c                       | 558 +++++++++++++++++
 hw/misc/riscv_rpmi_hsm.c                   | 287 +++++++++
 hw/misc/riscv_rpmi_internal.h              |  42 ++
 hw/misc/riscv_rpmi_sysreset.c              | 206 +++++++
 hw/misc/riscv_rpmi_syssusp.c               | 191 ++++++
 hw/riscv/Kconfig                           |   1 +
 hw/riscv/meson.build                       |   1 +
 hw/riscv/rpmi-fdt.c                        | 103 ++++
 hw/riscv/virt.c                            | 167 +++++
 include/hw/misc/riscv_rpmi.h               | 126 ++++
 include/hw/riscv/rpmi-fdt.h                |  41 ++
 include/hw/riscv/virt.h                    |   3 +
 meson.build                                |  14 +
 meson_options.txt                          |   2 +
 scripts/meson-buildoptions.sh              |   3 +
 tests/functional/riscv64/meson.build       |   2 +
 tests/functional/riscv64/test_rpmi_virt.py | 172 ++++++
 tests/qtest/meson.build                    |   2 +
 tests/qtest/riscv-rpmi-test.c              | 684 +++++++++++++++++++++
 24 files changed, 2671 insertions(+)
 create mode 100644 hw/misc/riscv_rpmi.c
 create mode 100644 hw/misc/riscv_rpmi_hsm.c
 create mode 100644 hw/misc/riscv_rpmi_internal.h
 create mode 100644 hw/misc/riscv_rpmi_sysreset.c
 create mode 100644 hw/misc/riscv_rpmi_syssusp.c
 create mode 100644 hw/riscv/rpmi-fdt.c
 create mode 100644 include/hw/misc/riscv_rpmi.h
 create mode 100644 include/hw/riscv/rpmi-fdt.h
 create mode 100644 tests/functional/riscv64/test_rpmi_virt.py
 create mode 100644 tests/qtest/riscv-rpmi-test.c

-- 
2.43.0