Branch: refs/heads/master Home: https://github.com/tianocore/edk2 Commit: 8a210b9ac03dc092dd65542bd676f82cec4fa374 https://github.com/tianocore/edk2/commit/8a210b9ac03dc092dd65542bd676f82cec4fa374 Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022)
Changed paths: M ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Iort/IortParser.c Log Message: ----------- ShellPkg: Acpiview: Abbreviate field names to preserve alignment Some field names in the IORT table parser were longer than the OUTPUT_FIELD_COLUMN_WIDTH plus indentation, resulting in loss of the output print alignment. Therefore, abbreviate the field names. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Zhichao Gao <zhichao....@intel.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Commit: 65c4f3f2be30b01b48b5123ac84f84f9b91e8d4d https://github.com/tianocore/edk2/commit/65c4f3f2be30b01b48b5123ac84f84f9b91e8d4d Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c Log Message: ----------- DynamicTablesPkg: Handle error when IdMappingToken is NULL Add error handling when the IdMappingCount is not zero and the IdMappingToken is NULL. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Commit: f5cea604a6df84e186f78e00f5863f15e3fe8a37 https://github.com/tianocore/edk2/commit/f5cea604a6df84e186f78e00f5863f15e3fe8a37 Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c Log Message: ----------- DynamicTablesPkg: IORT set reference to Id array only if present The IORT table generator is setting up a reference to ID array for nodes even when the ID Mapping count is zero. This is not an issue as an OS would only access the ID Reference if the ID mapping count is not zero. However, it would be good to set the reference to ID array to zero when the ID Mapping count is zero rather than populating it with an incorrect value. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Commit: 238f903e8d5dbda0f9c0453c3623bfdcbd697304 https://github.com/tianocore/edk2/commit/238f903e8d5dbda0f9c0453c3623bfdcbd697304 Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c Log Message: ----------- DynamicTablesPkg: IORT set reference to interrupt array if present The IORT generator is populating the reference field for Context and PMU interrupts even if their count is zero. Update the IORT generator to set the references only if the interrupt count is not 0. Also add checks to ensure a valid reference token has been provided. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Commit: 4c55f6394fafe0494ec24e7c05cb68c938d7852d https://github.com/tianocore/edk2/commit/4c55f6394fafe0494ec24e7c05cb68c938d7852d Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c M MdePkg/Include/IndustryStandard/IoRemappingTable.h Log Message: ----------- MdePkg: IORT header update for IORT Rev E.d spec Bugzilla: 3458 - Add support IORT Rev E.d specification updates (https://bugzilla.tianocore.org/show_bug.cgi?id=3458) The IO Remapping Table, Platform Design Document, Revision E.d, Feb 2022 (https://developer.arm.com/documentation/den0049/) introduces the following updates, collectively including the updates and errata fixes to Rev E, Rev E.a, Rev E.b, Rev E.c: - increments the IORT table revision to 5. - 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. - adds flag to indicate if the root complex supports PASID. - adds flags to define access privilege and attributes for the memory ranges. Therefore, update the IORT header file to reflect these changes, and also rename the EFI_ACPI_IO_REMAPPING_TABLE_REVISION macro to EFI_ACPI_IO_REMAPPING_TABLE_REVISION_00. Also update the IORT generator in DynamicTablesPkg to fix the compilation errors so that Git Bisect can work. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Liming Gao <gaolim...@byosoft.com.cn> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Reviewed-by: Zhichao Gao <zhichao....@intel.com> Commit: cd67efa1b2e807bbea8516a1ab7a20c278176696 https://github.com/tianocore/edk2/commit/cd67efa1b2e807bbea8516a1ab7a20c278176696 Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M ShellPkg/Library/UefiShellAcpiViewCommandLib/Parsers/Iort/IortParser.c Log Message: ----------- ShellPkg: Acpiview: IORT parser update for IORT Rev E.d spec Bugzilla: 3458 - Add support IORT Rev E.d specification updates (https://bugzilla.tianocore.org/show_bug.cgi?id=3458) The IO Remapping Table, Platform Design Document, Revision E.d, Feb 2022 (https://developer.arm.com/documentation/den0049/) introduces the following updates, collectively including the updates and errata fixes to Rev E, Rev E.a, Rev E.b, Rev E.c: - increments the IORT table revision to 5. - 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. - adds flag to indicate if the root complex supports PASID. - adds flags to define access privilege and attributes for the memory ranges. Therefore, update the IORT parser to: - parse the Identifier field. - parse Reserved Memory Range node. - parse Memory Range Descriptors. - add validations to check that the physical range base and size of the Memory Range Descriptor is 64KB aligned. - add validation to check that the IORT Table Revision is not 4 as IORT Rev E.c is deprecated. - add validation to check that the IORT RMR node revision is not 2 as it breaks backward compatibility and was deprecated as part of IORT Rev E.c. - skip parsing of IORT Rev E, Rev E.a, Rev E.b, Rev E.c as some fields were deprecated in these revisions. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Zhichao Gao <zhichao....@intel.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Commit: de200b7e2c3c5bdb7b6eb8c3cc947ae6f053eb38 https://github.com/tianocore/edk2/commit/de200b7e2c3c5bdb7b6eb8c3cc947ae6f053eb38 Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M DynamicTablesPkg/DynamicTablesPkg.ci.yaml M DynamicTablesPkg/Include/ArmNameSpaceObjects.h Log Message: ----------- DynamicTablesPkg: Update ArmNameSpaceObjects for IORT Rev E.d Bugzilla: 3458 - Add support IORT Rev E.d specification updates (https://bugzilla.tianocore.org/show_bug.cgi?id=3458) The IO Remapping Table, Platform Design Document, Revision E.d, Feb 2022 (https://developer.arm.com/documentation/den0049/) introduces the following updates, collectively including the updates and errata fixes to Rev E, Rev E.a, Rev E.b, Rev E.c: - increments the IORT table revision to 5. - 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. - adds flag to indicate if the root complex supports PASID. - adds flags to define access privilege and attributes for the memory ranges. Therefore, update the Arm namespace objects to: - add Identifier field to IORT nodes. - introduce enums to represent RMR nodes and Memory Range descriptors. - add definition of node type 6 - Reserved Memory Range node. - add definition for Memory Range Descriptors. - add PASID capabilities and flags field to Root Complex node. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Commit: e9150618ec91f79e70a1719ac8c198bee34a99be https://github.com/tianocore/edk2/commit/e9150618ec91f79e70a1719ac8c198bee34a99be Author: Sami Mujawar <sami.muja...@arm.com> Date: 2022-07-29 (Fri, 29 Jul 2022) Changed paths: M DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.c M DynamicTablesPkg/Library/Acpi/Arm/AcpiIortLibArm/IortGenerator.h Log Message: ----------- DynamicTablesPkg: IORT generator updates for Rev E.d spec Bugzilla: 3458 - Add support IORT Rev E.d specification updates (https://bugzilla.tianocore.org/show_bug.cgi?id=3458) The IO Remapping Table, Platform Design Document, Revision E.d, Feb 2022 (https://developer.arm.com/documentation/den0049/) introduces the following updates, collectively including the updates and errata fixes to Rev E, Rev E.a, Rev E.b, Rev E.c: - increments the IORT table revision to 5. - 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. - adds flag to indicate if the root complex supports PASID. - adds flags to define access privilege and attributes for the memory ranges. Therefore, update the IORT generator to: - increment IORT table revision count to 5. - populate Identifier filed if revision is greater than 4. - add support to populate Reserved Memory Range nodes and the Memory range descriptors. - add validation to check that the Identifier field is unique. - Populate the PASID capabilities and Flags field of the Root complex node. - Added checks to not generate IORT Rev E, Rev E.<a,b,c>. Signed-off-by: Sami Mujawar <sami.muja...@arm.com> Reviewed-by: Pierre Gondois <pierre.gond...@arm.com> Compare: https://github.com/tianocore/edk2/compare/0d0bfcb4571c...e9150618ec91 _______________________________________________ edk2-commits mailing list edk2-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-commits