mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-20 19:44:23 +00:00
feat(spe): add support for FEAT_SPEv1p2
Allow access to PMSNEVFR_EL1 register at NS-EL1 or NS-EL2 when FEAT_SPEv1p2 is implemented. Change-Id: I44b1de93526dbe9c11fd061d876371a6c0e6fa9c Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
This commit is contained in:
parent
94ac06ed5c
commit
f20eb893a0
2 changed files with 10 additions and 2 deletions
|
@ -113,6 +113,9 @@ subsections:
|
||||||
- title: Self-hosted Trace Extensions (FEAT_TRF)
|
- title: Self-hosted Trace Extensions (FEAT_TRF)
|
||||||
scope: trf
|
scope: trf
|
||||||
|
|
||||||
|
- title: Statistical profiling Extension (FEAT_SPE)
|
||||||
|
scope: spe
|
||||||
|
|
||||||
- title: Platforms
|
- title: Platforms
|
||||||
|
|
||||||
subsections:
|
subsections:
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
|
* Copyright (c) 2017-2022, Arm Limited and Contributors. All rights reserved.
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: BSD-3-Clause
|
* SPDX-License-Identifier: BSD-3-Clause
|
||||||
*/
|
*/
|
||||||
|
@ -54,9 +54,14 @@ void spe_enable(bool el2_unused)
|
||||||
* MDCR_EL2.NSPB (ARM v8.2): SPE enabled in Non-secure state
|
* MDCR_EL2.NSPB (ARM v8.2): SPE enabled in Non-secure state
|
||||||
* and disabled in secure state. Accesses to SPE registers at
|
* and disabled in secure state. Accesses to SPE registers at
|
||||||
* S-EL1 generate trap exceptions to EL3.
|
* S-EL1 generate trap exceptions to EL3.
|
||||||
|
*
|
||||||
|
* MDCR_EL3.EnPMSN (ARM v8.7): Do not trap access to PMSNEVFR_EL1
|
||||||
|
* register at NS-EL1 or NS-EL2 to EL3 if FEAT_SPEv1p2 is implemented.
|
||||||
|
* Setting this bit to 1 doesn't have any effect on it when
|
||||||
|
* FEAT_SPEv1p2 not implemented.
|
||||||
*/
|
*/
|
||||||
v = read_mdcr_el3();
|
v = read_mdcr_el3();
|
||||||
v |= MDCR_NSPB(MDCR_NSPB_EL1);
|
v |= MDCR_NSPB(MDCR_NSPB_EL1) | MDCR_EnPMSN_BIT;
|
||||||
write_mdcr_el3(v);
|
write_mdcr_el3(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue