Lines Matching refs:to

14 operations on the :term:`SPE` side and provides a set of APIs to the upper
16 The :term:`HAL` aims to cover the platform different aspects whereas common
20 it may not be possible to generalize implementations because lots of information
21 is only known to platforms.
22 It is more efficient to define a :term:`HAL` API for those architectural
27 :term:`TF-M` :term:`HAL` tries to reference :term:`TBSA-M` recommendations in
33 :term:`TF-M` :term:`HAL` is designed to simplify the integration efforts on
36 :term:`TF-M` :term:`HAL` is designed to make it easy to use the hardware and
37 develop the :term:`SPM` and :term:`RoT Service` which need to access the
40 :term:`TF-M` :term:`HAL` is designed to make the structure clearer and let the
53 by the :term:`PSA-FF-M` and :term:`TBSA-M`, and provides APIs to :term:`SPM`
54 to check the permissions of memory access.
62 for Dual-core topology. For more information about it, please refer to
69 - The debug mechanisms give the external entity the corresponding right to
71 permitted access to those assets. Currently, :term:`TF-M` only needs the
73 be enhanced in the future. Please refer to the :doc:`Debug authentication
80 As :term:`TF-M` runs on resource-constrained devices, the :term:`HAL` tries to
85 Instead, the :term:`HAL` abstracts higher-level interfaces to reserve the
88 The :term:`TF-M` :term:`HAL` should be easy to deprecate APIs and provide
92 :term:`TF-M` relies on the :term:`HAL` APIs to be implemented correctly and
94 :term:`TFM` can provide assertions to detect common programming errors but
106 :term:`HAL` APIs. Please refer to `Status Codes`_ for detailed definitions.
115 :term:`HAL` APIs. The platform vendors can use them directly but need to
127 This is a status code to be used as the return type of :term:`HAL` APIs.
151 Status code to indicate general success.
155 Status code to indicate an error that does not correspond to any defined failure
160 Status code to indicate that the module is not initialed.
164 Status code to indicate that the input is invalid.
168 Status code to indicate that the requested operation or a parameter is not
173 Status code to indicate that the requested action cannot be performed in the
178 Status code to indicate that the current number has got the max value.
182 Status code to indicate that the memory check failed.
209 The initializations could include but not limited to:
238 When ``CONFIG_TFM_HALT_ON_CORE_PANIC`` is disabled this function is called to reset
267 When ``CONFIG_TFM_HALT_ON_CORE_PANIC`` is enabled this function is called to halt the
284 The :term:`PSA-FF-M` defines three isolation levels and a memory access rule to
285 provide diverse levels of securitiy. The isolation API provides the functions to
300 - Partition boundaries: Keeps switching from one to another when the system
311 - The activation HAL interface activates the partition boundary to secure
312 the execution for the partition to be switched. The target partition's
313 information and boundary are given to the activation HAL to accomplish
328 This could help the activation HAL to extract the protection settings
329 quickly from this encoded value, or even write to hardware registers
333 hardware description data. This could help the activation HAL to reference
338 an example, assigning PRoT and ARoT domain boundaries to respective partitions
340 same domain does not need to change the activated boundary.
347 The memory access attributes are encoded as bit fields, you can logic OR them to
419 - The boundary to protect the SPM execution. For example, the PSA RoT
423 Refer to the :term:`PSA-FF-M` for the definitions of the isolation boundaries.
428 - ``TFM_HAL_ERROR_GENERIC`` - Failed to set up the static boundaries.
444 boundary is used in subsequent calls to `tfm_hal_activate_boundary()`_ when
455 - ``TFM_HAL_ERROR_GENERIC`` - Failed to bind the handle.
469 This API requires the platform to activate the boundary to ensure the given
476 - ``p_ldinf`` - The load information of the partition that is going to be run.
483 - ``TFM_HAL_ERROR_GENERIC`` - failed to set upthe isolation boundary.
499 access types in boundary. The boundary belongs to a partition which
508 - ``access_type`` - The memory access types to be checked between given memory
521 If the implementation chooses to encode a pointer as the boundary,
522 a platform-specific pointer validation needs to be considered before
542 This API is called by Secure Partition to output logs.
546 - ``str`` - The string to output.
570 This API is called by :term:`SPM` to output logs.
574 - ``str`` - The string to output.
618 - ``irq_num`` - the interrupt to be enabled with a number
624 - ``TFM_HAL_ERROR_GENERIC`` - failed to enable the interrupt.
642 - ``irq_num`` - the interrupt to be disabled with a number
648 - ``TFM_HAL_ERROR_GENERIC`` - failed to disable the interrupt.
666 - ``irq_num`` - the interrupt to be disabled with a number
672 - ``TFM_HAL_ERROR_GENERIC`` - failed to clear the pending interrupt.
698 - Setting the priority. The value must between 0 to 0x80 exclusively.
706 - ``p_pt`` - pointer to Partition runtime struct of the owner Partition
707 - ``p_ildi`` - pointer to ``irq_load_info_t`` struct of the interrupt
711 Please refer to the
744 Defines the identifier of the CMSIS Flash ARM_DRIVER_FLASH object to use for
751 unit of data that can be individually programmed to flash). It must be equal to
772 Defines the identifier of the CMSIS Flash ARM_DRIVER_FLASH object to use for
779 unit of data that can be individually programmed to flash). It must be equal to
819 and EraseSector() as well as GetInfo() to access flash device properties such
826 Struct containing information required from the platform at runtime to configure
839 - ``flash_area_addr`` - Location of the block of flash to use for ITS
840 - ``flash_area_size`` - Number of bytes of flash to use for ITS
845 Struct containing information required from the platform at runtime to configure
858 - ``flash_area_addr`` - Location of the block of flash to use for PS
859 - ``flash_area_size`` - Number of bytes of flash to use for PS