Commit d8bf01d8 authored by James Morse's avatar James Morse Committed by Catalin Marinas
Browse files

arm64: kconfig: Add Kconfig entry for MPAM



The bulk of the MPAM driver lives outside the arch code because it
largely manages MMIO devices that generate interrupts. The driver
needs a Kconfig symbol to enable it. As MPAM is only found on arm64
platforms, the arm64 tree is the most natural home for the Kconfig
option.

This Kconfig option will later be used by the arch code to enable
or disable the MPAM context-switch code, and to register properties
of CPUs with the MPAM driver.

Signed-off-by: default avatarJames Morse <james.morse@arm.com>
Reviewed-by: default avatarJonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: default avatarBen Horgan <ben.horgan@arm.com>
Reviewed-by: default avatarFenghua Yu <fenghuay@nvidia.com>
Reviewed-by: default avatarGavin Shan <gshan@redhat.com>
Reviewed-by: default avatarShaopeng Tan <tan.shaopeng@jp.fujitsu.com>
Tested-by: default avatarFenghua Yu <fenghuay@nvidia.com>
Tested-by: default avatarShaopeng Tan <tan.shaopeng@jp.fujitsu.com>
Tested-by: default avatarPeter Newman <peternewman@google.com>
Tested-by: default avatarCarl Worth <carl@os.amperecomputing.com>
Tested-by: default avatarGavin Shan <gshan@redhat.com>
Tested-by: default avatarZeng Heng <zengheng4@huawei.com>
Tested-by: default avatarHanjun Guo <guohanjun@huawei.com>
CC: Dave Martin <dave.martin@arm.com>
Signed-off-by: default avatarBen Horgan <ben.horgan@arm.com>
Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent a39a723a
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -2023,6 +2023,29 @@ config ARM64_TLB_RANGE
	  ARMv8.4-TLBI provides TLBI invalidation instruction that apply to a
	  range of input addresses.

config ARM64_MPAM
	bool "Enable support for MPAM"
	help
	  Memory System Resource Partitioning and Monitoring (MPAM) is an
	  optional extension to the Arm architecture that allows each
	  transaction issued to the memory system to be labelled with a
	  Partition identifier (PARTID) and Performance Monitoring Group
	  identifier (PMG).

	  Memory system components, such as the caches, can be configured with
	  policies to control how much of various physical resources (such as
	  memory bandwidth or cache memory) the transactions labelled with each
	  PARTID can consume.  Depending on the capabilities of the hardware,
	  the PARTID and PMG can also be used as filtering criteria to measure
	  the memory system resource consumption of different parts of a
	  workload.

	  Use of this extension requires CPU support, support in the
	  Memory System Components (MSC), and a description from firmware
	  of where the MSCs are in the address space.

	  MPAM is exposed to user-space via the resctrl pseudo filesystem.

endmenu # "ARMv8.4 architectural features"

menu "ARMv8.5 architectural features"