[PATCH V1 1/3] ACPICA: IORT: Add Root Complex PASID Flags field

Hanjun Guo guohanjun at huawei.com
Tue Apr 28 05:32:12 PDT 2026


On 2026/4/24 6:43, Jason Gunthorpe wrote:
> 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

Yes, please get this patch merged in ACPICA first.

Thanks
Hanjun



More information about the linux-arm-kernel mailing list