Commit graph

102 commits

Author SHA1 Message Date
Varshit Pandya
9c5eb0687d DynamicTablesPkg: Generalize the CMN SSDT generator
Extend the CMN Configuration Manager object with an implementation type
and optional root-node region length.

Map the implementation type to the ACPI hardware IDs for CMN-600,
CMN-650, CMN-700 and CMN-S3. Apply CMN-600-specific address restrictions
only when the CMN-600 implementation type is selected.

Rename the CMN-600 generator, identifiers and files to reflect support
for multiple CMN implementations.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-08-26 21:23:04 +01:00
Pierre Gondois
d2936e9efa DynamicTablesPkg: Add StaToken to ProcHierarch CmObj
Add a new StaToken field to CM_ARCH_COMMON_PROC_HIERARCHY_INFO
CmObj, allowing to describe the ASL "_STA" value the processor
or processor container should return.

CM_X64_LOCAL_APIC_X2APIC_INFO.StaToken already allows to reference
a StaToken from a X2APIC CmObj. If ProcHierarchy objects are used,
the SSDT CPU topology table will be generated using the X2APIC
objects, so the new field should not collide with the new one.
Add a note to CM_X64_LOCAL_APIC_X2APIC_INFO.StaToken
to handle this case.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2026-07-31 17:24:16 +00:00
Girish Mahadevan
7a3943da83 DynamicTablesPkg: Add Baseboard CM object and parser
Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
2026-07-31 04:34:25 +00:00
Girish Mahadevan
1d8239c4fc DynamicTablesPkg: Add System Enclosure CM object and parser
Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
2026-07-24 07:06:45 +00:00
VarshitPandya
2bdb08ab00 DynamicTablesPkg: Add Additional Information CM objects
Add the Configuration Manager objects required to describe SMBIOS
Additional Information (Type 40) structures.

The top-level object references a list of Additional Information entries.
Each entry identifies a field in an existing SMBIOS structure and
references a typed value object containing the additional data.

Define the maximum value buffer size from the SMBIOS Type 40 formatted
length limit and add parsers for the new CM objects.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-07-22 14:40:20 +00:00
Girish Mahadevan
7ac27b187e DynamicTablesPkg: Add System Information CM object and parser
Add EArchCommonObjSystemInfo to ArchCommonNameSpaceObjects.h and a
corresponding parser entry in ConfigurationManagerObjectParser.c.

Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
2026-07-17 11:12:25 +00:00
VarshitPandya
d8ec67acb7 DynamicTablesPkg: Smbios Memory Channel (Type 37)
Add support for generating SMBIOS Type 37 Memory Channel structures from
Configuration Manager data.

Introduce the Memory Channel CM object and the associated Memory Channel
Device CM object. The channel object describes the Type 37 fixed fields,
including channel type, maximum channel load, memory device count, and the
token for the device-list object. The device-list object describes each
memory device attached to the channel using a device load and a Type 17
Memory Device CM token.

Add parser entries for both CM objects and register the Type 37 generator in
the DynamicTablesPkg DSC so it is available through the SMBIOS table factory.

The Type 37 generator builds one SMBIOS record per Memory Channel CM object.
For each channel, it retrieves the referenced Memory Channel Device list,
validates the channel type, maximum channel load, device count, device load,
and device tokens, resolves each referenced Type 17 CM token to an SMBIOS
handle, and emits the variable-length MemoryDevice array in the Type 37
record.

This allows platforms to describe memory channels and link them to generated
Type 17 Memory Device records through CM tokens instead of hard-coded SMBIOS
handles.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-07-07 15:31:02 +00:00
VarshitPandya
e54671e9ef DynamicTablesPkg: Smbios Memory Device Mapped Address (Type 20)
Add an SMBIOS Type 20 generator for Memory Device Mapped Address
structures.

The generator builds one Type 20 table per Memory Device Mapped Address
CM object, validates the address range, encodes extended addresses when
the 32-bit address fields cannot represent the range, and maps optional
Type 17 and Type 19 CM object references to SMBIOS handles. If either
reference token is CM_NULL_TOKEN, the corresponding SMBIOS handle is set
to SMBIOS_HANDLE_INVALID.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-07-03 10:54:53 +00:00
VarshitPandya
019a537496 DynamicTablesPkg: Add SMBIOS System Reset (Type 23) generator
Add a Configuration Manager object and parser for SMBIOS Type 23
System Reset information.

Add a Type 23 SMBIOS generator that creates the System Reset structure
from the System Reset CM object. The generator expects a single CM
object, fills the system reset capabilities and watchdog reset fields,
and registers the generated table with the SMBIOS table factory.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-07-02 09:10:11 +00:00
VarshitPandya
dc23931fac DynamicTablesPkg: Add SMBIOS Electrical Current Probe (Type 29) generator
Add a Configuration Manager object and parser for SMBIOS Type 29
Electrical Current Probe information.

Add a Type 29 SMBIOS generator that creates one Electrical Current Probe
structure for each Electrical Current Probe CM object. The generator
validates the probe location and status fields, publishes the optional
description string, and registers the generated table with the SMBIOS
table factory.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-07-02 09:10:11 +00:00
VarshitPandya
2c82d4ada9 DynamicTablesPkg: Add SMBIOS Voltage Probe (Type 26) generator
Add a Configuration Manager object and parser for SMBIOS Type 26
Voltage Probe information.

Add a Type 26 SMBIOS generator that creates one Voltage Probe
structure for each Voltage Probe CM object. The generator validates
the probe location and status fields, publishes the optional
description string, and registers the generated table with the
SMBIOS table factory.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-07-02 09:10:11 +00:00
VarshitPandya
5628eaaf38 DynamicTablesPkg: Add SMBIOS Temperature Probe (Type 28) generator
Introduce a CM_ARCH_COMMON_TEMPERATURE_PROBE_INFO object to describe
temperature probes provided by the platform. The generator creates one
SMBIOS Type 28 record for each temperature probe object and populates
the description, location/status, probe limits, resolution, tolerance,
accuracy, OEM-defined data, and nominal value.

Add the CM object parser entry and wire the generator into the
DynamicTablesPkg build.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-06-30 20:31:10 +00:00
VarshitPandya
0c2e337351 DynamicTablesPkg: Add SMBIOS Cooling Device (Type 27) generator
Introduce a CM_ARCH_COMMON_COOLING_DEVICE_INFO object to describe
cooling devices provided by the platform. The generator creates one
SMBIOS Type 27 record for each cooling device object and populates the
device type/status, cooling unit group, OEM-defined data, nominal speed,
and optional description string.

The temperature probe handle is set to 0xFFFF for now because SMBIOS
Type 28 Temperature Probe generation is not currently available. Reject
non-null temperature probe tokens until Type 28 handle resolution can be
added.

Add the CM object parser entry and wire the generator into the
DynamicTablesPkg build.

Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-06-30 20:31:10 +00:00
Pierre Gondois
c70de6b4ed DynamicTablesPkg/CmObjParser: Use common interrupt parser
CmArmDmc620PmuRegInfoParser only parses the interrupt field
without parsing the interrupt flags. Fix it.

Also make CmArmCmn600InfoParser use the common interrupt
parser instead of separately printing the interrupt number
and flag.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2026-06-29 07:45:14 +00:00
Pierre Gondois
3ca262e05c DynamicTablesPkg/CmObjParser: Fix ArmNamespaceObjectParser order
Dmc620 have been added at an incorrect index in the
ArmNamespaceObjectParser array. Fix the order.

Also, rename:
- CmArmObjDmc620PmuSocketInfoParser
to:
- CmArmDmc620PmuSocketInfoParser
to follow the other conventional names.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2026-06-29 07:45:14 +00:00
Pierre Gondois
1eab31a287 DynamicTablesPkg/CmObjParser: Add missing fields to CmObjParser
The following objects are missing some fields in the
CmObjParser:
- CM_ARCH_COMMON_PROC_HIERARCHY_INFO
- CM_ARCH_COMMON_CACHE_INFO

Add them.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2026-06-29 07:45:14 +00:00
Girish Mahadevan
69bf610705 DynamicTablesPkg: Add Memory Array Mapped Address CM object and parser
Add EArchCommonObjMemoryArrayMappedAddress to ArchCommonNameSpaceObjects.h
and a corresponding parser entry in ConfigurationManagerObjectParser.c.

Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-06-05 14:23:55 +00:00
Girish Mahadevan
76bca23d4b DynamicTablesPkg: Add Memory Device CM object and parser
Add EArchCommonObjMemoryDeviceInfo to ArchCommonNameSpaceObjects.h
and a corresponding parser entry in ConfigurationManagerObjectParser.c.

Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-06-05 14:23:55 +00:00
Girish Mahadevan
cdb60ce258 DynamicTablesPkg: Add Physical Memory Array CM object and parser
Add EArchCommonObjPhysicalMemoryArray to ArchCommonNameSpaceObjects.h
and a corresponding parser entry in ConfigurationManagerObjectParser.c.

Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-06-05 14:23:55 +00:00
Girish Mahadevan
e64225c9d3 DynamicTablesPkg: Add Platform Firmware Information CM object and parser
Add EArchCommonObjPlatformFwInfo to ArchCommonNameSpaceObjects.h and a
corresponding parser entry in ConfigurationManagerObjectParser.c.

Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-06-04 12:59:48 +00:00
Glen Yeldho
932a2e2fee DynamicTablesPkg: Adds ACPI EINJ Table generation support
Add an ACPI Error Injection (EINJ) table generator that uses the
Configuration Manager to obtain the platform error-injection
instruction entries.

Ref: ACPI Specification, Section 18.6 (Error Injection—EINJ table).

Co-authored-by: Varshit Pandya <varshit.pandya@arm.com>
Signed-off-by: Varshit Pandya <varshit.pandya@arm.com>
2026-05-27 09:15:46 +00:00
Yeoreum Yun
d9256a20ff DynamicTablesPkg: add X64 objects for error sources
This is preparation patch to add HEST table generator in
DyanmicTablePkg.

Add common objects for common error sources information:
  - IA-32 Architecture Machine Check Exception.
  - IA-32 Architecture Corrected Machine Check.
  - IA-32 Architecture Non-Maskable Interrupt.
  - IA-32 Architecture Deferred Machine Check.

Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-04-30 10:31:01 +00:00
Yeoreum Yun
829c70b9ef DynamicTablesPkg: add common objects for common error sources
This is preparation patch to add HEST table generator in
DyanmicTablePkg.

Add common objects for common error sources information:
  - PCI Express Root Port AER Structure
  - PCI Express Device AER Structure
  - PCI Express/PCI-X Bridge AER Structure
  - Generic Hardware Error Source
  - Generic Hardware Error Source version 2

Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-04-30 10:31:01 +00:00
Sughosh Ganu
b1707d99ae DynamicTablesPkg: add SSDT DMC620 PMU table generator
The Generic ACPI for Arm Components 1.2 Platform Design Document [1],
section 2.6.1.2 "ASL reference code for the DMC620 PMU" provides
information to describe the Arm Corelink DMC620 Dynamic Memory
Controller's Performance Monitoring Unit (PMU) block using an ASL
definition block table.

Add support for a table generator for the DMC620 PMU block. The table
generator uses the Configuration Manager protocol to obtain the
following information.
  - Number of sockets on the platform
  - DMC620 devices per socket

After obtaining the socket based topology, information is obtained on
individual DMC620 devices. This includes
  - PMU register base address and length
  - Information on the associated PMU interrupt

The table generator uses the Dynamic AML CodeGen API's for generating
the table from the information obtained through the Configuration
Manager protocol.

[1] - https://developer.arm.com/documentation/den0093/1-2eac1/

Signed-off-by: Sughosh Ganu <sughosh.ganu@arm.com>
2026-01-16 11:35:45 +01:00
Sunil V L
8b4cca46da DynamicTablesPkg/TableHelperLib: Add RISC-V structure parsers
Add support for parsing RISC-V-specific structures in TableHelperLib.
These parsers assist in interpreting and processing Configuration
Manager (CM) objects related to RISC-V hardware components.

Signed-off-by: Sunil V L <sunilvl@ventanamicro.com>
2025-12-02 20:52:41 +00:00
Abdul Lateef Attar
7ce19889f9 DynamicTablesPkg: Add the parser for EArchCommonObjTpm2DeviceInfo
Add the missing parser for EArchCommonObjTpm2DeviceInfo.
This missing parser causing assert for EArchCommonObjMcfgPciConfigSpaceInfo
and EArchCommonObjPciRootPortInfo parser.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-10-23 07:56:17 +00:00
Abdul Lateef Attar
01d4c1d51c DynamicTablesPkg: Update PCIe config space object
Adds RootPortInfoToken to PCIe config space object to
support addition of root port devices in PCIE SSDT.

Updates the ConfigurationManagerObjectParser to include the new token.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-10-23 07:56:17 +00:00
Abdul Lateef Attar
8366881b06 DynamicTablesPkg: Add PCIe root port namespace object
Introduce new architecture common namespace object
for PCIe root ports in the DynamicTables package.

This object holds information:
- PCIe root port address in device and function format
- Reference token information to the PCIe routing table object
- Slot number information for the root port

Also updates ConfigurationManagerObjectParser to parse
the new object and populate the relevant fields.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-10-23 07:56:17 +00:00
Abdul Lateef Attar
7fe3609022 DynamicTablesPkg: Add alias for EArchCommonObjPciConfigSpaceInfo
Introduce EArchCommonObjMcfgPciConfigSpaceInfo as an alias for
EArchCommonObjPciConfigSpaceInfo.

The CM_ARCH_COMMON_PCI_CONFIG_SPACE_INFO object is utilized by both
the MCFG and ACPI SSDT PCIE generators. Assigning a unique configuration
object ID ensures the platform configuration driver supplies the correct data.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-08-01 15:45:06 +02:00
Abdul Lateef Attar
f93da07277 DynamicTablesPkg: Enhance SPCR support for interrupt and terminal types
Introduce optional configuration objects to specify interrupt and terminal types.
When the platform supplies this information,
the SPCR table is updated to reflect the provided values.

If the interrupt type is 8259,
the corresponding IRQ number is set in the SPCR table.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-06-19 17:43:41 +00:00
Pierre Gondois
52531b20d6 DynamicTablesPkg: Add HMAT/SLIT related objects
Add the following objects:
- EArchCommonObjProxDomainInfo
- EArchCommonObjProxDomainRelationInfo
- EArchCommonObjSystemLocalityInfo
- EArchCommonObjMemoryProxDomainAttrInfo
- EArchCommonObjMemoryLatBwInfo
- EArchCommonObjMemoryCacheInfo
allowing to generate HMAT/SLIT tables.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-06-11 12:24:35 +00:00
Pierre Gondois
317ef44747 DynamicTablesPkg: Rework ProximityDomain handling
The SRAT/HMAT/SLIT tables describe the relations between
ProximityDomain IDs. These proximity domains might represent
memory domains, CPUs, IO, etc.

ProximityDomain IDs are mere IDs. They don't represent anything
and could be generated by the DynamicTablesPkg framework. These
IDs are currently hard-coded by the ConfigurationManager developer.

In order to:
- avoid the developer to keep track of the used ProximityDomain IDs
- have a better internal representation of the relation between
  CPUs sharing the same ProximityDomain ID
allow the developer to use Tokens pointing to ProximityDomain
structures.

Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2025-06-11 12:24:35 +00:00
Nick Graves
1668fd54aa DynamicTablesPkg: Add CXL CEDT namespace objects
- Add objects for CEDT CHBS and CEDT CFMWS. These describe CXL host
  bridges and CXL fixed memory windows, respectively.

Signed-off-by: Nick Graves <nicholasgraves@google.com>
2025-05-25 08:58:41 +00:00
Jeff Brasen
d8d47a0ae6 DynamicTablesPkg: Add support for non-serial DBG2 devices
This commit adds support for building non-serial DBG2 devices

1. Add new common namespace objects:
   - EArchCommonObjMemoryRangeDescriptor
   - EArchCommonObjDbg2DeviceInfo

2. Enhance DBG2 table generator:
   - Add support for non-serial DBG2 devices
   - Support multiple debug devices
   - Improve memory handling with proper allocation checks
   - Add better cleanup in error paths

3. Update configuration manager:
   - Add parsers for new common namespace objects

Signed-off-by: Jeff Brasen <jbrasen@nvidia.com>
2025-04-24 09:01:22 +02:00
Abdul Lateef Attar
0f136602fd DynamicTablesPkg: Add _STA method to CPU object
Implement the _STA method for the CPU object based on
the value provided by the configuration manager.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25 10:52:23 +01:00
Abdul Lateef Attar
565a458adc DynamicTablesPkg: Add _PSD and _CPC support for X64
Introduce _PSD and _CPC ACPI objects for X64 platforms.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25 10:52:23 +01:00
Abdul Lateef Attar
70f53a1b32 DynamicTablesPkg: Add _CST, _CSD, _PCT, and _PSS objects
This patch adds several ACPI objects to the X64 CPU SSDT table
 to enhance power and performance management.

The new objects include:
- _CST: Defines CPU idle states for power saving.
- _CSD: Specifies dependencies between CPU idle states.
- _PCT: Provides an interface for controlling CPU performance states.
- _PSS: Lists supported CPU performance states.
- _PPC: Indicates current CPU performance capabilities.

These additions help improve power efficiency and thermal management in X64 systems.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25 10:52:23 +01:00
Abdul Lateef Attar
704eaf5cda DynamicTablesPkg: Adds C-state and P-state namespace objects
This update adds new configuration manager objects for C-State and P-State.
The C-State objects manage processor idle states,
while the P-State objects handle processor performance states.
This enhancement improves power management and performance
tuning within the DynamicTablesPkg.

Changes include:
- Added C-State and P-State namespace objects in ArchCommonNameSpaceObjects.h.
- Updated ConfigurationManagerObjectParser.c to support the new objects.
- Revised Readme.md to document these changes.

Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25 10:52:23 +01:00
Abdul Lateef Attar
2b3ea9334f DynamicTablesPkg: Adds X64 support to SRAT table generator
Adds X64 support to the SRAT table generator library.
Adds EX64ObjLocalApicX2ApicAffinity CM object to get
platform configuration information.
Update the parser with newly added CM object.

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-07 15:24:03 +00:00
Abdul Lateef Attar
eda58c143c DynamicTablesPkg: Adds X64 FACS generator library
Adds a library to generate the ACPI FACS table for X64 architecture.
It gathers the necessary FACS information from the configuration manager.
Additionally, it includes an event to update the hardware signature
in the FACS table, where the hardware signature is the
CRC of all ACPI table's CRC

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-01-24 09:38:40 +01:00
Abdul Lateef Attar
95972f966e DynamicTablesPkg: Correct parser for X64 architecture objects
- Add array size to CmArchCommonSpmiInterfaceInfoParser
   to correctly parse the SPMI interface object.
- Use the size of enum values instead of fixed sizes.
- Apply #pragma pack to the X64 object structure
   to ensure the total size of the structure matches
   the parser's combined individual field sizes without padding.

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-12-11 13:17:04 +00:00
Abdul Lateef Attar
e89ff68110 DynamicTablesPkg: Add X64 MADT table generator
Updates X64 namespace object.
Updates the object parser.
Updates the Readme.

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-11-28 16:46:34 +01:00
Abdul Lateef Attar
f962adc8a0 DynamicTablesPkg: Adds SPMI table generator
Adds ACPI SPMI table generator library.
Updates acpi standard table enum with spmi.
Updates arch common namespace object and parser.
Updates the Readme.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-10-03 08:58:50 +00:00
Abdul Lateef Attar
fada1cea46 DynamicTablesPkg: Adds ACPI HPET table generator
Adds X64 ACPI HPET table generator library.
Updates acpi standard table enum with hpet.
Updates X64 namespace object.
Updates the object parser.
Updates the Readme.

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-09-18 07:53:07 +00:00
Abdul Lateef Attar
5dafa13d62 DynamicTablesPkg: Adds WSMT generator for X64
Adds ACPI WSMT table generator library.
Updates acpi standard table enum with wsmt.
Updates X64 namespace object.
Updates the object parser.
Updates the Readme.

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-09-02 14:23:41 +00:00
Dat Mach
b0f43dd3fd DynamicTablesPkg: Add parser for Tpm2 CM object
Update the CM Object parser to add support for parsing the
CM_ARM_TPM2_INTERFACE_INFO object.

Signed-off-by: Dat Mach <dmach@nvidia.com>
2024-08-08 01:52:47 +00:00
Dat Mach
d24df10cee DynamicTablesPkg: Add HexDump for CM Object parser
Add helper function HexDump for printing hex dump of CM Object fields.

Also merge multiple flavors of PrintCharX into one function PrintChars
by using the field length.

Signed-off-by: Dat Mach <dmach@nvidia.com>
2024-08-08 01:52:47 +00:00
Abdul Lateef Attar
bc0fc75637 DynamicTablesPkg/AcpiFadtLib: Adds FADT X64 generator
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4781

Updates FADT X64 generator to collect below configuration
information and update the table accordingly.
      - SCI interrupt
      - SCI command
      - PM Block
      - GPE Block
      - PM Block 64-bit
      - GPE Block 64-bit
      - Sleep block
      - Reset block
      - Miscellaneous legacy information

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-08-02 08:05:57 +00:00
Abdul Lateef Attar
967cbd87b7 DynamicTablesPkg: Adds X64 namespace object
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4781
Adds empty X64 namespace object for future use.

Cc: Sami Mujawar <Sami.Mujawar@arm.com>
Cc: Pierre Gondois <pierre.gondois@arm.com>
Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2024-08-02 08:05:57 +00:00
Sami Mujawar
fb6a7147f3 DynamicTablesPkg: Move PSD info to Arch Common
Move the PSD info object from Arm Namespace to the Arch Common
namespace.

Correspondingly also update the following modules to reflect the
changes introduced by the move:
 - SSDT CPU topology generator
 - ConfigurationManagerObjectParser
 - Dynamic Plat Repo TokenFixer map.

Cc: Pierre Gondois <Pierre.Gondois@arm.com>
Cc: Yeo Reum Yun <YeoReum.Yun@arm.com>
Cc: AbdulLateef Attar <AbdulLateef.Attar@amd.com>
Cc: Jeshua Smith <jeshuas@nvidia.com>
Cc: Jeff Brasen <jbrasen@nvidia.com>
Cc: Girish Mahadevan <gmahadevan@nvidia.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Meenakshi Aggarwal <meenakshi.aggarwal@nxp.com>
Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
Reviewed-by: Sunil V L <sunilvl@ventanamicro.com>
2024-07-29 13:44:55 +00:00