TianoCore EDK2 master
Loading...
Searching...
No Matches
Mpam.h File Reference

Go to the source code of this file.

Data Structures

struct  EFI_ACPI_MPAM_GENERIC_LOCATOR
 
struct  EFI_ACPI_MPAM_CACHE_LOCATOR
 
struct  EFI_ACPI_MPAM_MEMORY_LOCATOR
 
struct  EFI_ACPI_MPAM_SMMU_LOCATOR
 
struct  EFI_ACPI_MPAM_MEMORY_CACHE_LOCATOR
 
struct  EFI_ACPI_MPAM_ACPI_LOCATOR
 
struct  EFI_ACPI_MPAM_INTERCONNECT_LOCATOR
 
struct  EFI_ACPI_MPAM_INTERCONNECT_DESCRIPTOR
 
struct  EFI_ACPI_MPAM_INTERCONNECT_DESCRIPTOR_TABLE
 
union  EFI_ACPI_MPAM_LOCATOR
 
struct  EFI_ACPI_MPAM_MSC_NODE
 
struct  EFI_ACPI_MPAM_MSC_RESOURCE
 
struct  EFI_ACPI_MPAM_FUNCTIONAL_DEPENDENCY_DESCRIPTOR
 

Macros

#define EFI_ACPI_MEMORY_SYSTEM_RESOURCE_PARTITIONING_AND_MONITORING_TABLE_REVISION   (0x01)
 
#define EFI_ACPI_MPAM_INTERRUPT_LEVEL_TRIGGERED   (0x0)
 
#define EFI_ACPI_MPAM_INTERRUPT_EDGE_TRIGGERED   (0x1)
 
#define EFI_ACPI_MPAM_INTERRUPT_WIRED   (0x0)
 
#define EFI_ACPI_MPAM_INTERRUPT_PROCESSOR_AFFINITY   (0x0)
 
#define EFI_ACPI_MPAM_INTERRUPT_PROCESSOR_CONTAINER_AFFINITY   (0x1)
 
#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_NOT_VALID   (0x0)
 
#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID   (0x1)
 
#define EFI_ACPI_MPAM_INTERRUPT_MODE_SHIFT   (0)
 
#define EFI_ACPI_MPAM_INTERRUPT_TYPE_SHIFT   (1)
 
#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_TYPE_SHIFT   (3)
 
#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID_SHIFT   (4)
 
#define EFI_ACPI_MPAM_INTERRUPT_RESERVED_SHIFT   (5)
 
#define EFI_ACPI_MPAM_INTERRUPT_MODE_MASK   (0x1)
 
#define EFI_ACPI_MPAM_INTERRUPT_TYPE_MASK   (0x3)
 
#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_TYPE_MASK   (0x8)
 
#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID_MASK   (0x10)
 
#define EFI_ACPI_MPAM_INTERRUPT_RESERVED_MASK   (0xFFFFFFE0)
 
#define EFI_ACPI_MPAM_LOCATION_PROCESSOR_CACHE   (0x0)
 
#define EFI_ACPI_MPAM_LOCATION_MEMORY   (0x1)
 
#define EFI_ACPI_MPAM_LOCATION_SMMU   (0x2)
 
#define EFI_ACPI_MPAM_LOCATION_MEMORY_CACHE   (0x3)
 
#define EFI_ACPI_MPAM_LOCATION_ACPI_DEVICE   (0x4)
 
#define EFI_ACPI_MPAM_LOCATION_INTERCONNECT   (0x5)
 
#define EFI_ACPI_MPAM_LOCATION_UNKNOWN   (0xFF)
 
#define EFI_ACPI_MPAM_INTERFACE_MMIO   (0x00)
 
#define EFI_ACPI_MPAM_INTERFACE_PCC   (0x0A)
 
#define EFI_ACPI_MPAM_LINK_TYPE_NUMA   (0x00)
 
#define EFI_ACPI_MPAM_LINK_TYPE_PROC   (0x01)
 

Detailed Description

ACPI for Memory System Resource Partitioning and Monitoring 2.0 (MPAM) as specified in ARM spec DEN0065

Copyright (c) 2024, Arm Limited. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Specification Reference:
Glossary:
  • MPAM - Memory System Resource Partitioning And Monitoring
  • MSC - Memory System Component
  • PCC - Platform Communication Channel
  • RIS - Resource Instance Selection
  • SMMU - Arm System Memory Management Unit

Definition in file Mpam.h.

Macro Definition Documentation

◆ EFI_ACPI_MEMORY_SYSTEM_RESOURCE_PARTITIONING_AND_MONITORING_TABLE_REVISION

#define EFI_ACPI_MEMORY_SYSTEM_RESOURCE_PARTITIONING_AND_MONITORING_TABLE_REVISION   (0x01)

MPAM Revision

Definition at line 29 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERFACE_MMIO

#define EFI_ACPI_MPAM_INTERFACE_MMIO   (0x00)

MPAM Interface types as desscribed in document[1], table 4.

Definition at line 88 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERFACE_PCC

#define EFI_ACPI_MPAM_INTERFACE_PCC   (0x0A)

Definition at line 89 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_AFFINITY_NOT_VALID

#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_NOT_VALID   (0x0)

MPAM MSC affinity valid

Definition at line 51 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_AFFINITY_TYPE_MASK

#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_TYPE_MASK   (0x8)

Definition at line 68 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_AFFINITY_TYPE_SHIFT

#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_TYPE_SHIFT   (3)

Definition at line 59 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID

#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID   (0x1)

Definition at line 52 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID_MASK

#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID_MASK   (0x10)

Definition at line 69 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID_SHIFT

#define EFI_ACPI_MPAM_INTERRUPT_AFFINITY_VALID_SHIFT   (4)

Definition at line 60 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_EDGE_TRIGGERED

#define EFI_ACPI_MPAM_INTERRUPT_EDGE_TRIGGERED   (0x1)

Definition at line 35 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_LEVEL_TRIGGERED

#define EFI_ACPI_MPAM_INTERRUPT_LEVEL_TRIGGERED   (0x0)

MPAM Interrupt mode

Definition at line 34 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_MODE_MASK

#define EFI_ACPI_MPAM_INTERRUPT_MODE_MASK   (0x1)

MPAM Interrupt flag - bit masks

Definition at line 66 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_MODE_SHIFT

#define EFI_ACPI_MPAM_INTERRUPT_MODE_SHIFT   (0)

MPAM Interrupt flag - bit positions

Definition at line 57 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_PROCESSOR_AFFINITY

#define EFI_ACPI_MPAM_INTERRUPT_PROCESSOR_AFFINITY   (0x0)

MPAM Interrupt affinity type

Definition at line 45 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_PROCESSOR_CONTAINER_AFFINITY

#define EFI_ACPI_MPAM_INTERRUPT_PROCESSOR_CONTAINER_AFFINITY   (0x1)

Definition at line 46 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_RESERVED_MASK

#define EFI_ACPI_MPAM_INTERRUPT_RESERVED_MASK   (0xFFFFFFE0)

Definition at line 70 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_RESERVED_SHIFT

#define EFI_ACPI_MPAM_INTERRUPT_RESERVED_SHIFT   (5)

Definition at line 61 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_TYPE_MASK

#define EFI_ACPI_MPAM_INTERRUPT_TYPE_MASK   (0x3)

Definition at line 67 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_TYPE_SHIFT

#define EFI_ACPI_MPAM_INTERRUPT_TYPE_SHIFT   (1)

Definition at line 58 of file Mpam.h.

◆ EFI_ACPI_MPAM_INTERRUPT_WIRED

#define EFI_ACPI_MPAM_INTERRUPT_WIRED   (0x0)

MPAM Interrupt type

Definition at line 40 of file Mpam.h.

◆ EFI_ACPI_MPAM_LINK_TYPE_NUMA

#define EFI_ACPI_MPAM_LINK_TYPE_NUMA   (0x00)

MPAM Link types as described in document [1], table 19.

Definition at line 95 of file Mpam.h.

◆ EFI_ACPI_MPAM_LINK_TYPE_PROC

#define EFI_ACPI_MPAM_LINK_TYPE_PROC   (0x01)

Definition at line 96 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_ACPI_DEVICE

#define EFI_ACPI_MPAM_LOCATION_ACPI_DEVICE   (0x4)

Definition at line 80 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_INTERCONNECT

#define EFI_ACPI_MPAM_LOCATION_INTERCONNECT   (0x5)

Definition at line 81 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_MEMORY

#define EFI_ACPI_MPAM_LOCATION_MEMORY   (0x1)

Definition at line 77 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_MEMORY_CACHE

#define EFI_ACPI_MPAM_LOCATION_MEMORY_CACHE   (0x3)

Definition at line 79 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_PROCESSOR_CACHE

#define EFI_ACPI_MPAM_LOCATION_PROCESSOR_CACHE   (0x0)

MPAM Location types as described in document [1], table 11.

Definition at line 76 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_SMMU

#define EFI_ACPI_MPAM_LOCATION_SMMU   (0x2)

Definition at line 78 of file Mpam.h.

◆ EFI_ACPI_MPAM_LOCATION_UNKNOWN

#define EFI_ACPI_MPAM_LOCATION_UNKNOWN   (0xFF)

Definition at line 82 of file Mpam.h.