Govindraj Raja | de6b79d | 2024-02-23 16:50:52 -0600 | [diff] [blame] | 1 | Vendor Specific EL3 Monitor Service Calls |
| 2 | ========================================= |
| 3 | |
| 4 | This document enumerates and describes the Vendor Specific EL3 Monitor Service |
| 5 | Calls. |
| 6 | |
| 7 | These are Service Calls defined by the vendor of the EL3 Monitor. |
| 8 | They are accessed via ``SMC`` ("SMC calls") instruction executed from Exception |
| 9 | Levels below EL3. SMC calls for Vendor Specific EL3 Monitor Services: |
| 10 | |
| 11 | - Follow `SMC Calling Convention`_; |
| 12 | - Use SMC function IDs that fall in the vendor-specific EL3 range, which are |
| 13 | |
| 14 | +---------------------------+--------------------------------------------------+ |
| 15 | | SMC Function Identifier | Service Type | |
| 16 | +===========================+==================================================+ |
| 17 | | 0x87000000 - 0x8700FFFF | SMC32: Vendor Specific EL3 Monitor Service Calls | |
| 18 | +---------------------------+--------------------------------------------------+ |
| 19 | | 0xC7000000 - 0xC700FFFF | SMC64: Vendor Specific EL3 Monitor Service Calls | |
| 20 | +---------------------------+--------------------------------------------------+ |
| 21 | |
Govindraj Raja | 273b898 | 2024-03-07 15:24:19 -0600 | [diff] [blame^] | 22 | Vendor-specific EL3 monitor services are as follows: |
| 23 | |
| 24 | +-----------------------------------+-----------------------+---------------------------------------------+ |
| 25 | | SMC Function Identifier | Service Type | FID's Usage | |
| 26 | +===================================+=======================+=============================================+ |
| 27 | | 0x87000010 - 0x8700001F (SMC32) | DebugFS Interface | | 0 - 11 are in use | |
| 28 | +-----------------------------------+ | | 12 - 15 are reserved for future expansion | |
| 29 | | 0xC7000010 - 0xC700001F (SMC64) | | | |
| 30 | +-----------------------------------+-----------------------+---------------------------------------------+ |
| 31 | |
Govindraj Raja | de6b79d | 2024-02-23 16:50:52 -0600 | [diff] [blame] | 32 | Source definitions for vendor-specific EL3 Monitor Service Calls are located in |
| 33 | the ``ven_el3_svc.h`` header file. |
| 34 | |
Govindraj Raja | 273b898 | 2024-03-07 15:24:19 -0600 | [diff] [blame^] | 35 | |
| 36 | DebugFS interface |
| 37 | ----------------- |
| 38 | |
| 39 | The optional DebugFS interface is accessed through Vendor specific EL3 service. Refer |
| 40 | to :ref:`DebugFS interface` documentation for further details and usage. |
| 41 | |
Govindraj Raja | de6b79d | 2024-02-23 16:50:52 -0600 | [diff] [blame] | 42 | -------------- |
| 43 | |
| 44 | *Copyright (c) 2024, Arm Limited and Contributors. All rights reserved.* |
| 45 | |
| 46 | .. _SMC Calling Convention: https://developer.arm.com/docs/den0028/latest |