Skip to content

Commit

Permalink
ACPI 6.3: HMAT updates
Browse files Browse the repository at this point in the history
This change reserves several field to be reserved as well as rename
subtable 0 to "memory proximity domain attributes"

Signed-off-by: Erik Schmauss <erik.schmauss@intel.com>
  • Loading branch information
Erik Schmauss committed Feb 13, 2019
1 parent ed18748 commit a216e8c
Show file tree
Hide file tree
Showing 6 changed files with 13 additions and 15 deletions.
2 changes: 1 addition & 1 deletion source/common/dmtable.c
Original file line number Diff line number Diff line change
Expand Up @@ -320,7 +320,7 @@ static const char *AcpiDmHestNotifySubnames[] =

static const char *AcpiDmHmatSubnames[] =
{
"Memory Subystem Address Range",
"Memory Proximity Domain Attributes",
"System Locality Latency and Bandwidth Information",
"Memory Side Cache Information",
"Unknown Structure Type" /* Reserved */
Expand Down
2 changes: 1 addition & 1 deletion source/common/dmtbdump1.c
Original file line number Diff line number Diff line change
Expand Up @@ -1406,7 +1406,7 @@ AcpiDmDumpHmat (
case ACPI_HMAT_TYPE_ADDRESS_RANGE:

InfoTable = AcpiDmTableInfoHmat0;
Length = sizeof (ACPI_HMAT_ADDRESS_RANGE);
Length = sizeof (ACPI_HMAT_PROXIMITY_DOMAIN);
break;

case ACPI_HMAT_TYPE_LOCALITY:
Expand Down
8 changes: 3 additions & 5 deletions source/common/dmtbinfo1.c
Original file line number Diff line number Diff line change
Expand Up @@ -1105,20 +1105,18 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoHmatHdr[] =

/* HMAT subtables */

/* 0x00: Memory Subsystem Address Range */
/* 0x00: Memory proximity domain attributes */

ACPI_DMTABLE_INFO AcpiDmTableInfoHmat0[] =
{
{ACPI_DMT_UINT16, ACPI_HMAT0_OFFSET (Flags), "Flags (decoded below)", 0},
{ACPI_DMT_FLAG0, ACPI_HMAT0_FLAG_OFFSET (Flags,0), "Processor Proximity Domain Valid", 0},
{ACPI_DMT_FLAG1, ACPI_HMAT0_FLAG_OFFSET (Flags,0), "Memory Proximity Domain Valid", 0},
{ACPI_DMT_FLAG2, ACPI_HMAT0_FLAG_OFFSET (Flags,0), "Reservation Hint", 0},
{ACPI_DMT_UINT16, ACPI_HMAT0_OFFSET (Reserved1), "Reserved1", 0},
{ACPI_DMT_UINT32, ACPI_HMAT0_OFFSET (ProcessorPD), "Processor Proximity Domain", 0},
{ACPI_DMT_UINT32, ACPI_HMAT0_OFFSET (MemoryPD), "Memory Proximity Domain", 0},
{ACPI_DMT_UINT32, ACPI_HMAT0_OFFSET (Reserved2), "Reserved2", 0},
{ACPI_DMT_UINT64, ACPI_HMAT0_OFFSET (PhysicalAddressBase), "Physical Address Range Base", 0},
{ACPI_DMT_UINT64, ACPI_HMAT0_OFFSET (PhysicalAddressLength), "Physical Address Range Size", 0},
{ACPI_DMT_UINT64, ACPI_HMAT0_OFFSET (Reserved3), "Reserved3", 0},
{ACPI_DMT_UINT64, ACPI_HMAT0_OFFSET (Reserved4), "Reserved4", 0},
ACPI_DMT_TERMINATOR
};

Expand Down
4 changes: 2 additions & 2 deletions source/include/actbinfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,7 @@
#define ACPI_HEST11_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HEST_IA_DEFERRED_CHECK,f)
#define ACPI_HESTN_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HEST_NOTIFY,f)
#define ACPI_HESTB_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HEST_IA_ERROR_BANK,f)
#define ACPI_HMAT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HMAT_ADDRESS_RANGE,f)
#define ACPI_HMAT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HMAT_PROXIMITY_DOMAIN,f)
#define ACPI_HMAT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HMAT_LOCALITY,f)
#define ACPI_HMAT2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HMAT_CACHE,f)
#define ACPI_HMATH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_HMAT_STRUCTURE,f)
Expand Down Expand Up @@ -366,7 +366,7 @@
#define ACPI_GTDT_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_GTDT,f,o)
#define ACPI_GTDT0a_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_GTDT_TIMER_ENTRY,f,o)
#define ACPI_GTDT1_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_GTDT_WATCHDOG,f,o)
#define ACPI_HMAT0_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_HMAT_ADDRESS_RANGE,f,o)
#define ACPI_HMAT0_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_HMAT_PROXIMITY_DOMAIN,f,o)
#define ACPI_HMAT1_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_HMAT_LOCALITY,f,o)
#define ACPI_HMAT2_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_HMAT_CACHE,f,o)
#define ACPI_IORT3_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_IORT_SMMU,f,o)
Expand Down
10 changes: 5 additions & 5 deletions source/include/actbl1.h
Original file line number Diff line number Diff line change
Expand Up @@ -1797,20 +1797,20 @@ typedef struct acpi_hmat_structure
* HMAT Structures, correspond to Type in ACPI_HMAT_STRUCTURE
*/

/* 0: Memory subystem address range */
/* 0: Memory proximity domain attributes */

typedef struct acpi_hmat_address_range
typedef struct acpi_hmat_proximity_domain
{
ACPI_HMAT_STRUCTURE Header;
UINT16 Flags;
UINT16 Reserved1;
UINT32 ProcessorPD; /* Processor proximity domain */
UINT32 MemoryPD; /* Memory proximity domain */
UINT32 Reserved2;
UINT64 PhysicalAddressBase; /* Physical address range base */
UINT64 PhysicalAddressLength; /* Physical address range length */
UINT64 Reserved3;
UINT64 Reserved4;

} ACPI_HMAT_ADDRESS_RANGE;
} ACPI_HMAT_PROXIMITY_DOMAIN;

/* Masks for Flags field above */

Expand Down
2 changes: 1 addition & 1 deletion source/tools/acpisrc/astable.c
Original file line number Diff line number Diff line change
Expand Up @@ -744,7 +744,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_HEST_GENERIC_DATA", SRC_TYPE_STRUCT},
{"ACPI_HEST_GENERIC_DATA_V300", SRC_TYPE_STRUCT},
{"ACPI_HEST_IA_DEFERRED_CHECK", SRC_TYPE_STRUCT},
{"ACPI_HMAT_ADDRESS_RANGE", SRC_TYPE_STRUCT},
{"ACPI_HMAT_PROXIMITY_DOMAIN", SRC_TYPE_STRUCT},
{"ACPI_HMAT_CACHE", SRC_TYPE_STRUCT},
{"ACPI_HMAT_LOCALITY", SRC_TYPE_STRUCT},
{"ACPI_HMAT_STRUCTURE", SRC_TYPE_STRUCT},
Expand Down

0 comments on commit a216e8c

Please sign in to comment.