This set reworks the handling of private peripheral interrupts in virt to use INTIDs instead of PPI IDs, to make it easier to cross reference against Arm's Base System Architecture specification.
It then breaks those definitions out into a separate header and switches sbsa-ref to use the same header instead of defining its own values locally. Changes since v1: - Replaced PPI macro with PPI_TO_INTID/INTID_TO_PPI macros. - Fixed a few missing changes to interrupt translation (some reported by Peter, some I found when I searched more properly) - Changed ppibase to intidbase in gic creation instead of doing the translation, as suggested by Peter. - Added explicit comment that listed IDs are INTIDs. Changes since RFC: - Compilation tested - Reordered patches 1-2 as suggested by Philippe. Leif Lindholm (3): {include/}hw/arm: refactor virt PPI logic include/hw/arm: move BSA definitions to bsa.h hw/arm/sbsa-ref: use bsa.h for PPI definitions hw/arm/sbsa-ref.c | 20 +++++++++----------- hw/arm/virt-acpi-build.c | 12 ++++++------ hw/arm/virt.c | 24 ++++++++++++++---------- include/hw/arm/bsa.h | 37 +++++++++++++++++++++++++++++++++++++ include/hw/arm/virt.h | 12 +----------- 5 files changed, 67 insertions(+), 38 deletions(-) create mode 100644 include/hw/arm/bsa.h -- 2.30.2