mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 17:44:19 +00:00

Move pmf support to vendor-specific EL3 Monitor Service Calls. Remove pmf call count as it's not supported in vendor-specific el3 as per SMCCC Documentation 1.5: https://developer.arm.com/documentation/den0028/latest Add a deprecation notice to inform PMF is moved from arm-sip range to vendor-specific EL3 range. PMF support from arm-sip range will be removed and will not available after TF-A 2.12 release. Change-Id: Ie1e14aa601d4fc3db352cd5621d842017a18e9ec Signed-off-by: Govindraj Raja <govindraj.raja@arm.com>
57 lines
3 KiB
ReStructuredText
57 lines
3 KiB
ReStructuredText
Vendor Specific EL3 Monitor Service Calls
|
|
=========================================
|
|
|
|
This document enumerates and describes the Vendor Specific EL3 Monitor Service
|
|
Calls.
|
|
|
|
These are Service Calls defined by the vendor of the EL3 Monitor.
|
|
They are accessed via ``SMC`` ("SMC calls") instruction executed from Exception
|
|
Levels below EL3. SMC calls for Vendor Specific EL3 Monitor Services:
|
|
|
|
- Follow `SMC Calling Convention`_;
|
|
- Use SMC function IDs that fall in the vendor-specific EL3 range, which are
|
|
|
|
+---------------------------+--------------------------------------------------+
|
|
| SMC Function Identifier | Service Type |
|
|
+===========================+==================================================+
|
|
| 0x87000000 - 0x8700FFFF | SMC32: Vendor Specific EL3 Monitor Service Calls |
|
|
+---------------------------+--------------------------------------------------+
|
|
| 0xC7000000 - 0xC700FFFF | SMC64: Vendor Specific EL3 Monitor Service Calls |
|
|
+---------------------------+--------------------------------------------------+
|
|
|
|
Vendor-specific EL3 monitor services are as follows:
|
|
|
|
+-----------------------------------+-----------------------+---------------------------------------------+
|
|
| SMC Function Identifier | Service Type | FID's Usage |
|
|
+===================================+=======================+=============================================+
|
|
| 0x87000010 - 0x8700001F (SMC32) | DebugFS Interface | | 0 - 11 are in use. |
|
|
+-----------------------------------+ | | 12 - 15 are reserved for future expansion.|
|
|
| 0xC7000010 - 0xC700001F (SMC64) | | |
|
|
+-----------------------------------+-----------------------+---------------------------------------------+
|
|
| 0x87000020 - 0x8700002F (SMC32) | Performance | | 0 is in use. |
|
|
+-----------------------------------+ Measurement Framework | | 1 - 15 are reserved for future expansion. |
|
|
| 0xC7000020 - 0xC700002F (SMC64) | (PMF) | |
|
|
+-----------------------------------+-----------------------+---------------------------------------------+
|
|
|
|
Source definitions for vendor-specific EL3 Monitor Service Calls are located in
|
|
the ``ven_el3_svc.h`` header file.
|
|
|
|
|
|
Performance Measurement Framework (PMF)
|
|
---------------------------------------
|
|
|
|
The :ref:`Performance Measurement Framework <firmware_design_pmf>`
|
|
allows callers to retrieve timestamps captured at various paths in TF-A
|
|
execution.
|
|
|
|
DebugFS interface
|
|
-----------------
|
|
|
|
The optional DebugFS interface is accessed through Vendor specific EL3 service. Refer
|
|
to :ref:`DebugFS interface` documentation for further details and usage.
|
|
|
|
--------------
|
|
|
|
*Copyright (c) 2024, Arm Limited and Contributors. All rights reserved.*
|
|
|
|
.. _SMC Calling Convention: https://developer.arm.com/docs/den0028/latest
|