#include "AcpiView.h"\r
\r
// Maximum Memory Domain matrix print size.\r
-#define MAX_MEMORY_DOMAIN_TARGET_PRINT_MATRIX 10\r
+#define MAX_MEMORY_DOMAIN_TARGET_PRINT_MATRIX 10\r
\r
// Local variables\r
-STATIC CONST UINT16* HmatStructureType;\r
-STATIC CONST UINT32* HmatStructureLength;\r
+STATIC CONST UINT16 *HmatStructureType;\r
+STATIC CONST UINT32 *HmatStructureLength;\r
\r
-STATIC CONST UINT32* NumberInitiatorProximityDomain;\r
-STATIC CONST UINT32* NumberTargetProximityDomain;\r
+STATIC CONST UINT32 *NumberInitiatorProximityDomain;\r
+STATIC CONST UINT32 *NumberTargetProximityDomain;\r
STATIC CONST\r
-EFI_ACPI_6_4_HMAT_STRUCTURE_SYSTEM_LOCALITY_LATENCY_AND_BANDWIDTH_INFO_FLAGS*\r
-SllbiFlags;\r
+EFI_ACPI_6_4_HMAT_STRUCTURE_SYSTEM_LOCALITY_LATENCY_AND_BANDWIDTH_INFO_FLAGS *\r
+ SllbiFlags;\r
\r
-STATIC CONST UINT8* SllbiDataType;\r
-STATIC CONST UINT16* NumberSMBIOSHandles;\r
+STATIC CONST UINT8 *SllbiDataType;\r
+STATIC CONST UINT16 *NumberSMBIOSHandles;\r
\r
-STATIC ACPI_DESCRIPTION_HEADER_INFO AcpiHdrInfo;\r
+STATIC ACPI_DESCRIPTION_HEADER_INFO AcpiHdrInfo;\r
\r
/**\r
Names of System Locality Latency Bandwidth Information (SLLBI) data types\r
**/\r
-STATIC CONST CHAR16* SllbiNames[] = {\r
+STATIC CONST CHAR16 *SllbiNames[] = {\r
L"Access %sLatency%s",\r
L"Read %sLatency%s",\r
L"Write %sLatency%s",\r
VOID\r
EFIAPI\r
ValidateCacheAttributes (\r
- IN UINT8* Ptr,\r
- IN VOID* Context\r
+ IN UINT8 *Ptr,\r
+ IN VOID *Context\r
)\r
{\r
- EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES*\r
- Attributes;\r
+ EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES *\r
+ Attributes;\r
\r
Attributes =\r
- (EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES*)Ptr;\r
+ (EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES *)Ptr;\r
\r
if (Attributes->TotalCacheLevels > 0x3) {\r
IncrementErrorCount ();\r
Attributes->TotalCacheLevels\r
);\r
}\r
+\r
if (Attributes->CacheLevel > 0x3) {\r
IncrementErrorCount ();\r
Print (\r
Attributes->CacheLevel\r
);\r
}\r
+\r
if (Attributes->CacheAssociativity > 0x2) {\r
IncrementErrorCount ();\r
Print (\r
Attributes->CacheAssociativity\r
);\r
}\r
+\r
if (Attributes->WritePolicy > 0x2) {\r
IncrementErrorCount ();\r
Print (\r
VOID\r
EFIAPI\r
DumpCacheAttributes (\r
- IN CONST CHAR16* Format OPTIONAL,\r
- IN UINT8* Ptr\r
+ IN CONST CHAR16 *Format OPTIONAL,\r
+ IN UINT8 *Ptr\r
)\r
{\r
- EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES*\r
- Attributes;\r
+ EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES *\r
+ Attributes;\r
\r
Attributes =\r
- (EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES*)Ptr;\r
+ (EFI_ACPI_6_4_HMAT_STRUCTURE_MEMORY_SIDE_CACHE_INFO_CACHE_ATTRIBUTES *)Ptr;\r
\r
Print (L"\n");\r
PrintFieldName (4, L"Total Cache Levels");\r
/**\r
An ACPI_PARSER array describing the ACPI HMAT Table.\r
*/\r
-STATIC CONST ACPI_PARSER HmatParser[] = {\r
+STATIC CONST ACPI_PARSER HmatParser[] = {\r
PARSE_ACPI_HEADER (&AcpiHdrInfo),\r
- {L"Reserved", 4, 36, NULL, NULL, NULL, NULL, NULL}\r
+ { L"Reserved", 4,36, NULL, NULL, NULL, NULL, NULL }\r
};\r
\r
/**\r
An ACPI_PARSER array describing the HMAT structure header.\r
*/\r
-STATIC CONST ACPI_PARSER HmatStructureHeaderParser[] = {\r
- {L"Type", 2, 0, NULL, NULL, (VOID**)&HmatStructureType, NULL, NULL},\r
- {L"Reserved", 2, 2, NULL, NULL, NULL, NULL, NULL},\r
- {L"Length", 4, 4, NULL, NULL, (VOID**)&HmatStructureLength, NULL, NULL}\r
+STATIC CONST ACPI_PARSER HmatStructureHeaderParser[] = {\r
+ { L"Type", 2, 0, NULL, NULL, (VOID **)&HmatStructureType, NULL, NULL },\r
+ { L"Reserved", 2, 2, NULL, NULL, NULL, NULL, NULL },\r
+ { L"Length", 4, 4, NULL, NULL, (VOID **)&HmatStructureLength, NULL, NULL }\r
};\r
\r
/**\r
An ACPI PARSER array describing the Memory Proximity Domain Attributes\r
Structure - Type 0.\r
*/\r
-STATIC CONST ACPI_PARSER MemProximityDomainAttributeParser[] = {\r
- {L"Type", 2, 0, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Length", 4, 4, L"%d", NULL, NULL, NULL, NULL},\r
- {L"Flags", 2, 8, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 2, 10, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Proximity Dom for initiator", 4, 12, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Proximity Dom for memory", 4, 16, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 4, 20, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 8, 24, L"0x%lx", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 8, 32, L"0x%lx", NULL, NULL, NULL, NULL}\r
+STATIC CONST ACPI_PARSER MemProximityDomainAttributeParser[] = {\r
+ { L"Type", 2, 0, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Length", 4, 4, L"%d", NULL, NULL, NULL, NULL },\r
+ { L"Flags", 2, 8, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 2, 10, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Proximity Dom for initiator", 4, 12, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Proximity Dom for memory", 4, 16, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 4, 20, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 8, 24, L"0x%lx", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 8, 32, L"0x%lx", NULL, NULL, NULL, NULL }\r
};\r
\r
/**\r
An ACPI PARSER array describing the System Locality Latency and Bandwidth\r
Information Structure - Type 1.\r
*/\r
-STATIC CONST ACPI_PARSER SllbiParser[] = {\r
- {L"Type", 2, 0, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Length", 4, 4, L"%d", NULL, NULL, NULL, NULL},\r
- {L"Flags", 1, 8, L"0x%x", NULL, (VOID**)&SllbiFlags, NULL, NULL},\r
- {L"Data type", 1, 9, L"0x%x", NULL, (VOID**)&SllbiDataType, NULL, NULL},\r
- {L"Min Transfer Size", 1, 10, L"%d", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 1, 11, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Initiator Proximity Dom Count", 4, 12, L"%d", NULL,\r
- (VOID**)&NumberInitiatorProximityDomain, NULL, NULL},\r
- {L"Target Proximity Dom Count", 4, 16, L"%d", NULL,\r
- (VOID**)&NumberTargetProximityDomain, NULL, NULL},\r
- {L"Reserved", 4, 20, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Entry Base Unit", 8, 24, L"0x%lx", NULL, NULL, NULL, NULL}\r
+STATIC CONST ACPI_PARSER SllbiParser[] = {\r
+ { L"Type", 2, 0, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Length", 4, 4, L"%d", NULL, NULL, NULL, NULL },\r
+ { L"Flags", 1, 8, L"0x%x", NULL, (VOID **)&SllbiFlags, NULL, NULL },\r
+ { L"Data type", 1, 9, L"0x%x", NULL, (VOID **)&SllbiDataType, NULL, NULL },\r
+ { L"Min Transfer Size", 1, 10, L"%d", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 1, 11, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Initiator Proximity Dom Count", 4, 12, L"%d", NULL,\r
+ (VOID **)&NumberInitiatorProximityDomain, NULL, NULL },\r
+ { L"Target Proximity Dom Count", 4, 16, L"%d", NULL,\r
+ (VOID **)&NumberTargetProximityDomain, NULL, NULL },\r
+ { L"Reserved", 4, 20, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Entry Base Unit", 8, 24, L"0x%lx", NULL, NULL, NULL, NULL }\r
// initiator Proximity Domain list ...\r
// target Proximity Domain list ...\r
// Latency/Bandwidth matrix ...\r
An ACPI PARSER array describing the Memory Side Cache Information\r
Structure - Type 2.\r
*/\r
-STATIC CONST ACPI_PARSER MemSideCacheInfoParser[] = {\r
- {L"Type", 2, 0, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Length", 4, 4, L"%d", NULL, NULL, NULL, NULL},\r
- {L"Proximity Dom for memory", 4, 8, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Reserved", 4, 12, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"Memory Side Cache Size", 8, 16, L"0x%lx", NULL, NULL, NULL, NULL},\r
- {L"Cache Attributes", 4, 24, NULL, DumpCacheAttributes, NULL,\r
- ValidateCacheAttributes, NULL},\r
- {L"Reserved", 2, 28, L"0x%x", NULL, NULL, NULL, NULL},\r
- {L"SMBIOS Handle Count", 2, 30, L"%d", NULL,\r
- (VOID**)&NumberSMBIOSHandles, NULL, NULL}\r
+STATIC CONST ACPI_PARSER MemSideCacheInfoParser[] = {\r
+ { L"Type", 2, 0, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 2, 2, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Length", 4, 4, L"%d", NULL, NULL, NULL, NULL },\r
+ { L"Proximity Dom for memory", 4, 8, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Reserved", 4, 12, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"Memory Side Cache Size", 8, 16, L"0x%lx", NULL, NULL, NULL, NULL },\r
+ { L"Cache Attributes", 4, 24, NULL, DumpCacheAttributes, NULL,\r
+ ValidateCacheAttributes, NULL },\r
+ { L"Reserved", 2, 28, L"0x%x", NULL, NULL, NULL, NULL },\r
+ { L"SMBIOS Handle Count", 2, 30, L"%d", NULL,\r
+ (VOID **)&NumberSMBIOSHandles, NULL, NULL }\r
// SMBIOS handles List ...\r
};\r
\r
STATIC\r
VOID\r
DumpMpda (\r
- IN UINT8* Ptr,\r
- IN UINT32 Length\r
+ IN UINT8 *Ptr,\r
+ IN UINT32 Length\r
)\r
{\r
ParseAcpi (\r
STATIC\r
VOID\r
DumpSllbi (\r
- IN UINT8* Ptr,\r
- IN UINT32 Length\r
+ IN UINT8 *Ptr,\r
+ IN UINT32 Length\r
)\r
{\r
- CONST UINT32* InitiatorProximityDomainList;\r
- CONST UINT32* TargetProximityDomainList;\r
- CONST UINT16* LatencyBandwidthMatrix;\r
+ CONST UINT32 *InitiatorProximityDomainList;\r
+ CONST UINT32 *TargetProximityDomainList;\r
+ CONST UINT16 *LatencyBandwidthMatrix;\r
UINT32 Offset;\r
CHAR16 Buffer[OUTPUT_FIELD_COLUMN_WIDTH];\r
CHAR16 SecondBuffer[OUTPUT_FIELD_COLUMN_WIDTH];\r
if ((SllbiFlags == NULL) ||\r
(SllbiDataType == NULL) ||\r
(NumberInitiatorProximityDomain == NULL) ||\r
- (NumberTargetProximityDomain == NULL)) {\r
+ (NumberTargetProximityDomain == NULL))\r
+ {\r
IncrementErrorCount ();\r
Print (\r
L"ERROR: Insufficient remaining table buffer length to read the " \\r
- L"SLLBI structure header. Length = %d.\n",\r
+ L"SLLBI structure header. Length = %d.\n",\r
Length\r
);\r
return;\r
return;\r
}\r
\r
- InitiatorProximityDomainList = (UINT32*) (Ptr + Offset);\r
- TargetProximityDomainList = InitiatorProximityDomainList +\r
- *NumberInitiatorProximityDomain;\r
- LatencyBandwidthMatrix = (UINT16*) (TargetProximityDomainList +\r
+ InitiatorProximityDomainList = (UINT32 *)(Ptr + Offset);\r
+ TargetProximityDomainList = InitiatorProximityDomainList +\r
+ *NumberInitiatorProximityDomain;\r
+ LatencyBandwidthMatrix = (UINT16 *)(TargetProximityDomainList +\r
*NumberTargetProximityDomain);\r
\r
// Display each element of the Initiator Proximity Domain list\r
Print (L"Error: Unkown Data Type. DataType = 0x%x.\n", *SllbiDataType);\r
return;\r
}\r
+\r
StrCpyS (Buffer, sizeof (Buffer), SllbiNames[*SllbiDataType]);\r
\r
// Adjust base name depending on Memory Hierarchy in this Structure\r
SllbiFlags->MemoryHierarchy\r
);\r
return;\r
-\r
} // switch\r
\r
if (*NumberTargetProximityDomain <= MAX_MEMORY_DOMAIN_TARGET_PRINT_MATRIX) {\r
\r
for (IndexTarget = 0;\r
IndexTarget < *NumberTargetProximityDomain;\r
- IndexTarget++) {\r
+ IndexTarget++)\r
+ {\r
Print (L" %2d", IndexTarget);\r
}\r
\r
Print (L"\n ---+");\r
for (IndexTarget = 0;\r
IndexTarget < *NumberTargetProximityDomain;\r
- IndexTarget++) {\r
+ IndexTarget++)\r
+ {\r
Print (L"------");\r
}\r
+\r
Print (L"\n");\r
\r
TargetStartOffset = 0;\r
for (IndexInitiator = 0;\r
IndexInitiator < *NumberInitiatorProximityDomain;\r
- IndexInitiator++) {\r
+ IndexInitiator++)\r
+ {\r
Print (L" %2d |", IndexInitiator);\r
for (IndexTarget = 0;\r
IndexTarget < *NumberTargetProximityDomain;\r
- IndexTarget++) {\r
+ IndexTarget++)\r
+ {\r
Print (\r
L" %5d",\r
LatencyBandwidthMatrix[TargetStartOffset + IndexTarget]\r
);\r
} // for Target\r
+\r
Print (L"\n");\r
TargetStartOffset += (*NumberTargetProximityDomain);\r
} // for Initiator\r
+\r
Print (L"\n");\r
} else {\r
// Display the latency/bandwidth matrix as a list\r
TargetStartOffset = 0;\r
for (IndexInitiator = 0;\r
IndexInitiator < *NumberInitiatorProximityDomain;\r
- IndexInitiator++) {\r
+ IndexInitiator++)\r
+ {\r
for (IndexTarget = 0;\r
IndexTarget < *NumberTargetProximityDomain;\r
- IndexTarget++) {\r
+ IndexTarget++)\r
+ {\r
UnicodeSPrint (\r
SecondBuffer,\r
sizeof (SecondBuffer),\r
LatencyBandwidthMatrix[TargetStartOffset + IndexTarget]\r
);\r
} // for Target\r
+\r
TargetStartOffset += (*NumberTargetProximityDomain);\r
} // for Initiator\r
}\r
STATIC\r
VOID\r
DumpMsci (\r
- IN UINT8* Ptr,\r
- IN UINT32 Length\r
+ IN UINT8 *Ptr,\r
+ IN UINT32 Length\r
)\r
{\r
- CONST UINT16* SMBIOSHandlesList;\r
+ CONST UINT16 *SMBIOSHandlesList;\r
CHAR16 Buffer[OUTPUT_FIELD_COLUMN_WIDTH];\r
UINT32 Offset;\r
UINT16 Index;\r
IncrementErrorCount ();\r
Print (\r
L"ERROR: Insufficient remaining table buffer length to read the " \\r
- L"MSCI structure header. Length = %d.\n",\r
+ L"MSCI structure header. Length = %d.\n",\r
Length\r
);\r
return;\r
return;\r
}\r
\r
- SMBIOSHandlesList = (UINT16*) (Ptr + Offset);\r
+ SMBIOSHandlesList = (UINT16 *)(Ptr + Offset);\r
\r
for (Index = 0; Index < *NumberSMBIOSHandles; Index++) {\r
UnicodeSPrint (\r
VOID\r
EFIAPI\r
ParseAcpiHmat (\r
- IN BOOLEAN Trace,\r
- IN UINT8* Ptr,\r
- IN UINT32 AcpiTableLength,\r
- IN UINT8 AcpiTableRevision\r
+ IN BOOLEAN Trace,\r
+ IN UINT8 *Ptr,\r
+ IN UINT32 AcpiTableLength,\r
+ IN UINT8 AcpiTableRevision\r
)\r
{\r
- UINT32 Offset;\r
- UINT8* HmatStructurePtr;\r
+ UINT32 Offset;\r
+ UINT8 *HmatStructurePtr;\r
\r
if (!Trace) {\r
return;\r
// Check if the values used to control the parsing logic have been\r
// successfully read.\r
if ((HmatStructureType == NULL) ||\r
- (HmatStructureLength == NULL)) {\r
+ (HmatStructureLength == NULL))\r
+ {\r
IncrementErrorCount ();\r
Print (\r
L"ERROR: Insufficient remaining table buffer length to read the " \\r
- L"HMAT structure header. Length = %d.\n",\r
+ L"HMAT structure header. Length = %d.\n",\r
AcpiTableLength - Offset\r
);\r
return;\r
\r
// Validate HMAT Structure length.\r
if ((*HmatStructureLength == 0) ||\r
- ((Offset + (*HmatStructureLength)) > AcpiTableLength)) {\r
+ ((Offset + (*HmatStructureLength)) > AcpiTableLength))\r
+ {\r
IncrementErrorCount ();\r
Print (\r
L"ERROR: Invalid HMAT Structure length. " \\r
- L"Length = %d. Offset = %d. AcpiTableLength = %d.\n",\r
+ L"Length = %d. Offset = %d. AcpiTableLength = %d.\n",\r
*HmatStructureLength,\r
Offset,\r
AcpiTableLength\r
);\r
break;\r
case EFI_ACPI_6_4_HMAT_TYPE_MEMORY_SIDE_CACHE_INFO:\r
- DumpMsci (\r
+ DumpMsci (\r
HmatStructurePtr,\r
*HmatStructureLength\r
);\r
IncrementErrorCount ();\r
Print (\r
L"ERROR: Unknown HMAT structure:"\r
- L" Type = %d, Length = %d\n",\r
+ L" Type = %d, Length = %d\n",\r
*HmatStructureType,\r
*HmatStructureLength\r
);\r
} // switch\r
\r
HmatStructurePtr += *HmatStructureLength;\r
- Offset += *HmatStructureLength;\r
+ Offset += *HmatStructureLength;\r
} // while\r
}\r