Message ID | 20241108125242.60136-2-shameerali.kolothum.thodi@huawei.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | hw/arm/virt: Add support for user-creatable nested SMMUv3 | expand |
Hi, On 11/8/24 13:52, Shameer Kolothum wrote: > From: Nicolin Chen <nicolinc@nvidia.com> > > A following patch will add a new MMIO region for nested SMMU instances. Nit: Add a new ... is generally preferred I think > > This macro will be repeatedly used to set offsets and MMIO sizes in both > virt and virt-acpi-build. > > Signed-off-by: Nicolin Chen <nicolinc@nvidia.com> > Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Eric > --- > hw/arm/virt.c | 2 +- > include/hw/arm/virt.h | 3 +++ > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index 719e83e6a1..780bcff77c 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -174,7 +174,7 @@ static const MemMapEntry base_memmap[] = { > [VIRT_FW_CFG] = { 0x09020000, 0x00000018 }, > [VIRT_GPIO] = { 0x09030000, 0x00001000 }, > [VIRT_UART1] = { 0x09040000, 0x00001000 }, > - [VIRT_SMMU] = { 0x09050000, 0x00020000 }, > + [VIRT_SMMU] = { 0x09050000, SMMU_IO_LEN }, > [VIRT_PCDIMM_ACPI] = { 0x09070000, MEMORY_HOTPLUG_IO_LEN }, > [VIRT_ACPI_GED] = { 0x09080000, ACPI_GED_EVT_SEL_LEN }, > [VIRT_NVDIMM_ACPI] = { 0x09090000, NVDIMM_ACPI_IO_LEN}, > diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h > index ab961bb6a9..46f48fe561 100644 > --- a/include/hw/arm/virt.h > +++ b/include/hw/arm/virt.h > @@ -47,6 +47,9 @@ > /* See Linux kernel arch/arm64/include/asm/pvclock-abi.h */ > #define PVTIME_SIZE_PER_CPU 64 > > +/* MMIO region size for SMMUv3 */ > +#define SMMU_IO_LEN 0x20000 > + > enum { > VIRT_FLASH, > VIRT_MEM,
diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 719e83e6a1..780bcff77c 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -174,7 +174,7 @@ static const MemMapEntry base_memmap[] = { [VIRT_FW_CFG] = { 0x09020000, 0x00000018 }, [VIRT_GPIO] = { 0x09030000, 0x00001000 }, [VIRT_UART1] = { 0x09040000, 0x00001000 }, - [VIRT_SMMU] = { 0x09050000, 0x00020000 }, + [VIRT_SMMU] = { 0x09050000, SMMU_IO_LEN }, [VIRT_PCDIMM_ACPI] = { 0x09070000, MEMORY_HOTPLUG_IO_LEN }, [VIRT_ACPI_GED] = { 0x09080000, ACPI_GED_EVT_SEL_LEN }, [VIRT_NVDIMM_ACPI] = { 0x09090000, NVDIMM_ACPI_IO_LEN}, diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h index ab961bb6a9..46f48fe561 100644 --- a/include/hw/arm/virt.h +++ b/include/hw/arm/virt.h @@ -47,6 +47,9 @@ /* See Linux kernel arch/arm64/include/asm/pvclock-abi.h */ #define PVTIME_SIZE_PER_CPU 64 +/* MMIO region size for SMMUv3 */ +#define SMMU_IO_LEN 0x20000 + enum { VIRT_FLASH, VIRT_MEM,