回复: [edk2-devel] [PATCH v2 0/8] IORT Rev E.b specification updates


Sami Mujawar
 

Hi Liming,

Please find my response inline marked [SAMI].

Regards,

Sami Mujawar

On 18/06/2021, 01:49, "gaoliming" <gaoliming@byosoft.com.cn> wrote:

Sami:
I agree this change. With this patch, will you update the existing
platform to use the matched version macro EFI_ACPI_IO_REMAPPING_TABLE_REV0?
[SAMI] I can update the platforms in edk2-platforms as a follow-on patch. In that case the macro EFI_ACPI_IO_REMAPPING_TABLE_REVISION can also be removed.
Please let me know if this approach would be better, and I can send an update.
[/SAMI]

Thanks
Liming

-----邮件原件-----
> 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Sami
> Mujawar
> 发送时间: 2021年6月17日 17:55
> 收件人: devel@edk2.groups.io
> 抄送: Sami Mujawar <sami.mujawar@arm.com>; Alexei.Fedorov@arm.com;
> ardb+tianocore@kernel.org; Matteo.Carlini@arm.com;
> Ben.Adderson@arm.com; steven.price@arm.com;
> Lorenzo.Pieralisi@arm.com; michael.d.kinney@intel.com;
> gaoliming@byosoft.com.cn; zhiguang.liu@intel.com; ray.ni@intel.com;
> zhichao.gao@intel.com; nd@arm.com
> 主题: [edk2-devel] [PATCH v2 0/8] IORT Rev E.b specification updates
>
> Bugzilla: 3458 - Add support IORT Rev E.b specification updates
> (https://bugzilla.tianocore.org/show_bug.cgi?id=3458)
>
> The IO Remapping Table (IORT) specification has been updated to
> rev E.b. The following updates are introduced including the errata
> to rev E and E.a:
> - increments the IORT table revision to 3.
> - updates the node definition to add an 'Identifier' field.
> - adds definition of node type 6 - Reserved Memory Range node.
> - adds definition for Memory Range Descriptors.
> - adds flag to indicate PRI support for root complexes.
> - adds flag to indicate if the root complex supports forwarding
> of PASID information on translated transactions to the SMMU.
>
> The v1 patch series:
> - Updates the IORT header file to match the Rev E.b specification.
> - Add support to parse IORT Rev E.b tables
> - Add support to generate IORT Rev E.b compliant ACPI tables
> using Dynamic Tables Framework.
>
> This v2 patch series includes all changes from v1 patch series
> except the following 2 patches have been modified to set the
> EFI_ACPI_IO_REMAPPING_TABLE_REVISION macro to Rev 0 as setting
> to Rev 3 will break existing platforms, the problem being that
> the Identifier field in the IORT nodes would not be unique.
> - MdePkg: IORT header update for IORT Rev E.b spec
> - DynamicTablesPkg: IORT generator updates for Rev E.b spec
>
> The changes can be seen at:
> https://github.com/samimujawar/edk2/tree/1527_iort_rev_eb_v2
>
> Sami Mujawar (8):
> MdePkg: Fix IORT header file include guard
> MdePkg: IORT header update for IORT Rev E.b spec
> ShellPkg: Acpiview: Abbreviate field names to preserve alignment
> ShellPkg: Acpiview: IORT parser update for IORT Rev E.b spec
> DynamicTablesPkg: IORT set reference to Id array only if present
> DynamicTablesPkg: IORT set reference to interrupt array if present
> DynamicTablesPkg: Update ArmNameSpaceObjects for IORT Rev E.b
> DynamicTablesPkg: IORT generator updates for Rev E.b spec
>
> DynamicTablesPkg/Include/ArmNameSpaceObjects.h
> | 58 ++
> DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
> | 772 ++++++++++++++++++--
> DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.h
> | 5 +-
> MdePkg/Include/IndustryStandard/IoRemappingTable.h
> | 71 +-
> ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Iort/IortParser.c |
> 207 +++++-
> 5 files changed, 1013 insertions(+), 100 deletions(-)
>
> --
> 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
>
>
>
>
>


gaoliming
 

Sami:
I agree this change. With this patch, will you update the existing
platform to use the matched version macro EFI_ACPI_IO_REMAPPING_TABLE_REV0?

Thanks
Liming

-----邮件原件-----
发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Sami
Mujawar
发送时间: 2021年6月17日 17:55
收件人: devel@edk2.groups.io
抄送: Sami Mujawar <sami.mujawar@arm.com>; Alexei.Fedorov@arm.com;
ardb+tianocore@kernel.org; Matteo.Carlini@arm.com;
Ben.Adderson@arm.com; steven.price@arm.com;
Lorenzo.Pieralisi@arm.com; michael.d.kinney@intel.com;
gaoliming@byosoft.com.cn; zhiguang.liu@intel.com; ray.ni@intel.com;
zhichao.gao@intel.com; nd@arm.com
主题: [edk2-devel] [PATCH v2 0/8] IORT Rev E.b specification updates

Bugzilla: 3458 - Add support IORT Rev E.b specification updates
(https://bugzilla.tianocore.org/show_bug.cgi?id=3458)

The IO Remapping Table (IORT) specification has been updated to
rev E.b. The following updates are introduced including the errata
to rev E and E.a:
- increments the IORT table revision to 3.
- updates the node definition to add an 'Identifier' field.
- adds definition of node type 6 - Reserved Memory Range node.
- adds definition for Memory Range Descriptors.
- adds flag to indicate PRI support for root complexes.
- adds flag to indicate if the root complex supports forwarding
of PASID information on translated transactions to the SMMU.

The v1 patch series:
- Updates the IORT header file to match the Rev E.b specification.
- Add support to parse IORT Rev E.b tables
- Add support to generate IORT Rev E.b compliant ACPI tables
using Dynamic Tables Framework.

This v2 patch series includes all changes from v1 patch series
except the following 2 patches have been modified to set the
EFI_ACPI_IO_REMAPPING_TABLE_REVISION macro to Rev 0 as setting
to Rev 3 will break existing platforms, the problem being that
the Identifier field in the IORT nodes would not be unique.
- MdePkg: IORT header update for IORT Rev E.b spec
- DynamicTablesPkg: IORT generator updates for Rev E.b spec

The changes can be seen at:
https://github.com/samimujawar/edk2/tree/1527_iort_rev_eb_v2

Sami Mujawar (8):
MdePkg: Fix IORT header file include guard
MdePkg: IORT header update for IORT Rev E.b spec
ShellPkg: Acpiview: Abbreviate field names to preserve alignment
ShellPkg: Acpiview: IORT parser update for IORT Rev E.b spec
DynamicTablesPkg: IORT set reference to Id array only if present
DynamicTablesPkg: IORT set reference to interrupt array if present
DynamicTablesPkg: Update ArmNameSpaceObjects for IORT Rev E.b
DynamicTablesPkg: IORT generator updates for Rev E.b spec

DynamicTablesPkg/Include/ArmNameSpaceObjects.h
| 58 ++
DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c
| 772 ++++++++++++++++++--
DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.h
| 5 +-
MdePkg/Include/IndustryStandard/IoRemappingTable.h
| 71 +-
ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Iort/IortParser.c |
207 +++++-
5 files changed, 1013 insertions(+), 100 deletions(-)

--
'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'