[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 00/13] RISC-V: ACPI: Enable AIA, PLIC and update RHCT
From: |
Alistair Francis |
Subject: |
Re: [PATCH v8 00/13] RISC-V: ACPI: Enable AIA, PLIC and update RHCT |
Date: |
Thu, 21 Dec 2023 10:17:49 +1000 |
On Tue, Dec 19, 2023 at 1:03 AM Sunil V L <sunilvl@ventanamicro.com> wrote:
>
> This series primarily enables external interrupt controllers (AIA and PLIC)
> in ACPI tables for RISC-V virt platform. It also updates RHCT with CMO and
> MMU related information.
>
> Below ECRs for these changes are approved by ASWG and will be
> available in next ACPI spec release.
>
> 1) MADT (AIA) -
> https://drive.google.com/file/d/1oMGPyOD58JaPgMl1pKasT-VKsIKia7zR/view?usp=sharing
> 2) RHCT -
> https://drive.google.com/file/d/1sKbOa8m1UZw1JkquZYe3F1zQBN1xXsaf/view?usp=sharing
>
> First two patches in this series are to migrate a couple of functions from
> ARM architecture to common code so that RISC-V doesn't need to duplicate
> the same.
>
> The patch set is based on Alistair's riscv-to-apply.next branch.
>
> These changes are also available in riscv_acpi_b2_v8 branch at:
> https://github.com/vlsunil/qemu/
>
> Changes since v7:
> 1) Prefixed gpex property names with "x-" as per feedback from
> Michael Tsirkin.
> 2) Rebased to latest riscv-to-apply.next.
>
> Changes since v6:
> 1) Fixed the qtest failure issue reported by Daniel in PATCH 2.
>
> Changes since v5:
> 1) Fixed the issue in PATCH 2 reported by Daniel found when built with
> clang + --enable-debug.
>
> Changes since v4:
> 1) Updated copyright for new files as per SPDX format suggested by
> Drew.
> 2) Updated RINTC patch to avoid code duplication as suggested by Drew.
> 3) Moved mmu offset below cmo in MMU patch as suggested by Drew.
> 4) Updated tags.
>
> Changes since v3:
> 1) Addressed comments from Daniel and Drew.
> 2) Added a new patch in microvm to use common function for virtio in
> DSDT.
> 3) Rebased to latest riscv-to-apply.next branch and added tags.
>
> Changes since v2:
> 1) Rebased to latest riscv-to-apply.next branch which needed
> changing ext_icboz to ext_zicboz in CMO patch.
> 2) Fixed node type in MMU node.
> 3) Added latest tags.
>
> Changes since v1:
> 1) As per Igor's suggestion, migrated fw_cfg and virtio creation
> functions to device specific file instead of generic aml-build.c.
> Since ACPI is optional, new files are created and enabled for
> build only when CONFIG_ACPI is enabled.
> 2) As per Igor's suggestion, properties are added to the GPEX PCI
> host to indicate MMIO ranges. The platform fw can initialize
> these to appropriate values and the DSDT generator can fetch
> the information from the host bus itself. This makes the code
> generic instead of machine specific.
> 3) Added PLIC patch from Haibo.
> 4) Rebased to latest riscv-to-apply.next and added RB tags as
> appropriate.
>
> Sunil V L (13):
> hw/arm/virt-acpi-build.c: Migrate fw_cfg creation to common location
> hw/arm/virt-acpi-build.c: Migrate virtio creation to common location
> hw/i386/acpi-microvm.c: Use common function to add virtio in DSDT
> hw/riscv: virt: Make few IMSIC macros and functions public
> hw/riscv/virt-acpi-build.c: Add AIA support in RINTC
> hw/riscv/virt-acpi-build.c: Add IMSIC in the MADT
> hw/riscv/virt-acpi-build.c: Add APLIC in the MADT
> hw/riscv/virt-acpi-build.c: Add CMO information in RHCT
> hw/riscv/virt-acpi-build.c: Add MMU node in RHCT
> hw/pci-host/gpex: Define properties for MMIO ranges
> hw/riscv/virt: Update GPEX MMIO related properties
> hw/riscv/virt-acpi-build.c: Add IO controllers and devices
> hw/riscv/virt-acpi-build.c: Add PLIC in MADT
Thanks!
Applied to riscv-to-apply.next
Alistair
>
> hw/arm/virt-acpi-build.c | 51 +----
> hw/i386/acpi-microvm.c | 15 +-
> hw/nvram/fw_cfg-acpi.c | 23 +++
> hw/nvram/meson.build | 1 +
> hw/pci-host/gpex-acpi.c | 13 ++
> hw/pci-host/gpex.c | 12 ++
> hw/riscv/Kconfig | 1 +
> hw/riscv/virt-acpi-build.c | 323 +++++++++++++++++++++++++++++---
> hw/riscv/virt.c | 72 ++++---
> hw/virtio/meson.build | 1 +
> hw/virtio/virtio-acpi.c | 33 ++++
> include/hw/nvram/fw_cfg_acpi.h | 15 ++
> include/hw/pci-host/gpex.h | 28 ++-
> include/hw/riscv/virt.h | 26 +++
> include/hw/virtio/virtio-acpi.h | 16 ++
> 15 files changed, 499 insertions(+), 131 deletions(-)
> create mode 100644 hw/nvram/fw_cfg-acpi.c
> create mode 100644 hw/virtio/virtio-acpi.c
> create mode 100644 include/hw/nvram/fw_cfg_acpi.h
> create mode 100644 include/hw/virtio/virtio-acpi.h
>
> --
> 2.39.2
>
>
- [PATCH v8 04/13] hw/riscv: virt: Make few IMSIC macros and functions public, (continued)
- [PATCH v8 04/13] hw/riscv: virt: Make few IMSIC macros and functions public, Sunil V L, 2023/12/18
- [PATCH v8 05/13] hw/riscv/virt-acpi-build.c: Add AIA support in RINTC, Sunil V L, 2023/12/18
- [PATCH v8 06/13] hw/riscv/virt-acpi-build.c: Add IMSIC in the MADT, Sunil V L, 2023/12/18
- [PATCH v8 07/13] hw/riscv/virt-acpi-build.c: Add APLIC in the MADT, Sunil V L, 2023/12/18
- [PATCH v8 08/13] hw/riscv/virt-acpi-build.c: Add CMO information in RHCT, Sunil V L, 2023/12/18
- [PATCH v8 09/13] hw/riscv/virt-acpi-build.c: Add MMU node in RHCT, Sunil V L, 2023/12/18
- [PATCH v8 10/13] hw/pci-host/gpex: Define properties for MMIO ranges, Sunil V L, 2023/12/18
- [PATCH v8 11/13] hw/riscv/virt: Update GPEX MMIO related properties, Sunil V L, 2023/12/18
- [PATCH v8 12/13] hw/riscv/virt-acpi-build.c: Add IO controllers and devices, Sunil V L, 2023/12/18
- [PATCH v8 13/13] hw/riscv/virt-acpi-build.c: Add PLIC in MADT, Sunil V L, 2023/12/18
- Re: [PATCH v8 00/13] RISC-V: ACPI: Enable AIA, PLIC and update RHCT,
Alistair Francis <=