MSMON_CFG_MON_SEL, MPAM Monitor Instance Selection Register
The MSMON_CFG_MON_SEL characteristics are:
Purpose
Selects a monitor instance to access through the MSMON configuration and counter registers. MSMON_CFG_MON_SEL_s selects a Secure monitor instance to access via the Secure MPAM feature page. MSMON_CFG_MON_SEL_ns selects a Non-secure monitor instance to access via the Non-secure MPAM feature page.
Different performance monitoring features within a MSC could have different numbers of monitor instances. See the NUM_MON field in the corresponding ID register. This means that a monitor out-of-bounds error might be signaled when an MSMON_CFG register is accessed because the value in MSMON_CFG_MON_SEL.MON_SEL is too large for the particular monitoring feature.
To configure a monitor, set MON_SEL in this register to the index of the monitor instance to configure, then write to the MSMON_CFG_x register to set the configuration of the monitor. At a later time, read the monitor register (for example MSMON_MBWU) to get the value of the monitor.
Configuration
The power domain of MSMON_CFG_MON_SEL is IMPLEMENTATION DEFINED.
This register is present only when MPAMF_IDR.HAS_MSMON == 1, or (MPAMF_IDR.HAS_IMPL_IDR == 1 and MPAMF_IDR.EXT == 0) or (MPAMF_IDR.HAS_IMPL_IDR == 1, MPAMF_IDR.EXT == 1 and MPAMF_IDR.NO_IMPL_MSMON == 0). Otherwise, direct accesses to MSMON_CFG_MON_SEL are RES0.
Attributes
MSMON_CFG_MON_SEL is a 32-bit register.
Field descriptions
The MSMON_CFG_MON_SEL bit assignments are:
Bits [31:28]
Reserved, RES0.
RIS, bits [27:24]
When (FEAT_MPAMv0p1 is implemented or FEAT_MPAMv1p1 is implemented), MPAMF_IDR.EXT == 1 and MPAMF_IDR.HAS_RIS == 1:
When (FEAT_MPAMv0p1 is implemented or FEAT_MPAMv1p1 is implemented), MPAMF_IDR.EXT == 1 and MPAMF_IDR.HAS_RIS == 1:
Resource Instance Selector. RIS selects one resource to configure through MSMON_CFG registers.
Otherwise:
Otherwise:
Reserved, RES0.
Bits [23:16]
Reserved, RES0.
MON_SEL, bits [15:0]
Selects the monitor instance to configure or read.
Reads and writes to other MSMON registers are indexed by MON_SEL and by the NS bit used to access MSMON_CFG_MON_SEL to access the configuration for a single monitor.
Accessing the MSMON_CFG_MON_SEL
This register is within the MPAM feature page memory frames. In a system that supports Secure and Non-secure memory maps, there must be both Secure and Non-secure MPAM feature pages.
MSMON_CFG_MON_SEL_s must be accessible from the Secure MPAM feature page. MSMON_CFG_MON_SEL_ns must be accessible from the Non-secure MPAM feature page.
MSMON_CFG_MON_SEL_s and MSMON_CFG_MON_SEL_ns must be separate registers. The Secure instance (MSMON_CFG_MON_SEL_s) accesses the monitor instance selector used for Secure PARTIDs, and the Non-secure instance (MSMON_CFG_MON_SEL_ns) accesses the monitor instance selector used for Non-secure PARTIDs.
MSMON_CFG_MON_SEL can be accessed through the memory-mapped interfaces:
Component | Frame | Offset | Instance |
---|---|---|---|
MPAM | MPAMF_BASE_s | 0x0800 | MSMON_CFG_MON_SEL_s |
Accesses on this interface are RW.
Component | Frame | Offset | Instance |
---|---|---|---|
MPAM | MPAMF_BASE_ns | 0x0800 | MSMON_CFG_MON_SEL_ns |
Accesses on this interface are RW.