[PATCH V1 1/3] ACPICA: IORT: Add Root Complex PASID Flags field
Jason Gunthorpe
jgg at ziepe.ca
Thu Apr 23 15:43:18 PDT 2026
On Fri, Apr 24, 2026 at 12:44:15AM +0530, Vidya Sagar wrote:
> The IORT spec, Issue E.c (ARM DEN 0049E.c, January 2022), bumps the
> Root Complex Node to revision 4 and adds two PASID descriptors:
>
> - PASID Capabilities at byte offset 33 (2 bytes), bits[4:0] of which
> report the Max PASID Width supported by the Root Complex.
> - Flags at byte offset 36 (4 bytes), bit 0 of which reports whether
> the Root Complex itself supports PASID. This is distinct from the
> existing ATS Attribute bit 2 (at offset 24) that only reports
> whether the RC forwards PASID information on translated
> transactions.
>
> The ACPICA struct in include/acpi/actbl2.h was updated for the E.c
> PASID Capabilities descriptor (offset 33) but stops short with a
> trailing 'u8 reserved[]' flexible array, so the new Flags field at
> offset 36 is unreachable and the existing ACPI_IORT_PASID_*
> definitions have no consumer.
>
> Replace the trailing flexible array with a fixed 'u8 reserved[1]'
> followed by 'u32 flags' so the struct fully covers RC node revision 4,
> and add the ACPI_IORT_RC_PASID_SUPPORTED mask for bit 0 of the new
> field. With #pragma pack(1) in effect for actbl2.h, this lands the new
> field at the spec-mandated absolute offset 36.
>
> Signed-off-by: Vidya Sagar <vidyas at nvidia.com>
> ---
> include/acpi/actbl2.h | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
There is a whole process to change this file, I went through it once
for canwbs..
https://lore.kernel.org/acpica-devel/2-v3-e2e16cd7467f+2a6a1-smmuv3_nesting_jgg@nvidia.com/
You have to make a pull request here:
https://github.com/acpica/acpica/pulls
And then use the
generate/linux/make-patches.sh -u <commit-id>
Script to make this patch for linux in the perscribed format.
I think, something like that
Jason
More information about the linux-arm-kernel
mailing list