Hi,
This new version has some adjustments w.r.t the KVM code that got a bit
neglected in the last 3 versions. The most notable change is in patch 3,
a new patch where we're moving the KVM property handling into an
exclusive helper. This helped to unclog riscv_cpu_add_user_properties()
a lot, making it easier for future cleanups we're planning to do in this
code.
Patch 4 (new) helped to padronize the code even more, allowing for more
macro usages to reduce repetition. Patch 8 (new) is basically patch 7
for KVM properties.
Patches missing review: 3, 4, 8, 10, 11
Changes from v3:
- patch 1:
- skip existing riscv_cpu_options before calling qdev_prop_add_static()
- patch 3 (new):
- move kvm CPU property handling to riscv_cpu_add_kvm_properties()
- patch 4 (new):
- remove DEFINE_PROP_END_OF_LIST() for riscv_cpu_extensions[]
- patch 7 (former 5):
- rename macro to ADD_CPU_QDEV_PROPERTIES_ARRAY()
- patch 8 (new):
- add ADD_UNAVAIL_KVM_PROP_ARRAY macro
- v3 link: https://lore.kernel.org/qemu-riscv/20230714174311.672359-1-dbarboza@ventanamicro.com/
Daniel Henrique Barboza (11):
target/riscv/cpu.c: split CPU options from riscv_cpu_extensions[]
target/riscv/cpu.c: skip 'bool' check when filtering KVM props
target/riscv/cpu.c: split kvm prop handling to its own helper
target/riscv/cpu.c: del DEFINE_PROP_END_OF_LIST() from
riscv_cpu_extensions
target/riscv/cpu.c: split vendor exts from riscv_cpu_extensions[]
target/riscv/cpu.c: split non-ratified exts from
riscv_cpu_extensions[]
target/riscv/cpu.c: add ADD_CPU_QDEV_PROPERTIES_ARRAY() macro
target/riscv/cpu.c: add ADD_UNAVAIL_KVM_PROP_ARRAY() macro
target/riscv: add 'max' CPU type
avocado, risc-v: add opensbi tests for 'max' CPU
target/riscv: deprecate the 'any' CPU type
docs/about/deprecated.rst | 12 +++
target/riscv/cpu-qom.h | 1 +
target/riscv/cpu.c | 169 +++++++++++++++++++++++++--------
tests/avocado/riscv_opensbi.py | 16 ++++
4 files changed, 160 insertions(+), 38 deletions(-)
--
2.41.0