| /rk3399_ARM-atf/bl31/ |
| H A D | ehf.c | 54 static unsigned int pri_to_idx(unsigned int priority) in pri_to_idx() argument 58 idx = EHF_PRI_TO_IDX(priority, exception_data.pri_bits); in pri_to_idx() 99 void ehf_activate_priority(unsigned int priority) in ehf_activate_priority() argument 111 if (priority >= run_pri) { in ehf_activate_priority() 113 run_pri, priority); in ehf_activate_priority() 123 idx = pri_to_idx(priority); in ehf_activate_priority() 127 priority, IDX_TO_PRI(cur_pri_idx)); in ehf_activate_priority() 139 old_mask = plat_ic_set_priority_mask(priority); in ehf_activate_priority() 140 if (priority >= old_mask) { in ehf_activate_priority() 142 priority, old_mask); in ehf_activate_priority() [all …]
|
| /rk3399_ARM-atf/docs/components/ |
| H A D | exception-handling.rst | 90 is based on a priority scheme. This priority scheme is closely tied to how the 94 The platform is required to `partition`__ the Secure priority space into 95 priority levels as applicable for the Secure software stack. It then assigns the 96 dispatchers to one or more priority levels. The dispatchers then register 97 handlers for the priority levels at runtime. A dispatcher can register handlers 98 for more than one priority level. 100 .. __: `Partitioning priority levels`_ 107 A priority level is *active* when a handler at that priority level is currently 110 priority of the acknowledged interrupt is used to match its registered handler. 111 The priority level is likewise implicitly deactivated when the interrupt [all …]
|
| H A D | platform-interrupt-controller-API.rst | 17 This API should return the priority of the interrupt the PE is currently 22 is read to determine the priority of the interrupt. 108 Function: void plat_ic_set_interrupt_priority(unsigned int id, unsigned int priority); [optional] 117 This API should set the priority of the interrupt specified by first parameter 118 ``id`` to the value set by the second parameter ``priority``. 121 writes to GIC *Priority Register* set interrupt priority. 279 This API should set the priority mask (first parameter) in the interrupt 280 controller such that only interrupts of higher priority than the supplied one 281 may be signalled to the PE. The API should return the current priority value 299 performed when priority mask is restored to it's older value. This API returns [all …]
|
| H A D | sdei.rst | 84 - Event priority: ``SDEI_MAPF_CRITICAL`` or ``SDEI_MAPF_NORMAL``, as described 136 - ``SDEI_MAPF_NORMAL``: Marks the event as having *Normal* priority. This is 137 the default priority. 139 - ``SDEI_MAPF_CRITICAL``: Marks the event as having *Critical* priority. 181 - Install priority descriptors for Normal and Critical SDEI interrupts. 268 - The priority of the event (either Critical or Normal, as configured by the 269 platform at build-time) shouldn't cause priority inversion. This means: 271 - If it's of Normal priority, neither Normal nor Critical priority dispatch 274 - If it's of a Critical priority, no Critical priority dispatch must be 285 priority so as not to cause priority level inversion within Exception [all …]
|
| H A D | ras.rst | 83 * However, if the asynchronous EA is masked at the target exception level, or if its priority 356 means that the platform must partition a :ref:`priority level <Partitioning 357 priority levels>` for handling RAS exceptions. The platform must then define 358 the macro ``PLAT_RAS_PRI`` to the priority level used for RAS exceptions. 359 Platforms would typically want to allocate the highest secure priority for 364 documentation. I.e., for interrupts, the priority management is implicit; but
|
| /rk3399_ARM-atf/include/bl31/ |
| H A D | ehf.h | 28 #define EHF_PRI_DESC(plat_bits, priority) \ argument 29 [EHF_PRI_TO_IDX(priority, plat_bits)] = { \ 84 void ehf_activate_priority(unsigned int priority); 85 void ehf_deactivate_priority(unsigned int priority);
|
| /rk3399_ARM-atf/plat/common/ |
| H A D | plat_gicv2.c | 198 void plat_ic_set_interrupt_priority(unsigned int id, unsigned int priority) in plat_ic_set_interrupt_priority() argument 200 gicv2_set_interrupt_priority(id, priority); in plat_ic_set_interrupt_priority()
|
| H A D | plat_gicv3.c | 235 void plat_ic_set_interrupt_priority(unsigned int id, unsigned int priority) in plat_ic_set_interrupt_priority() argument 237 gicv3_set_interrupt_priority(id, plat_my_core_pos(), priority); in plat_ic_set_interrupt_priority()
|
| /rk3399_ARM-atf/services/std_svc/sdei/ |
| H A D | sdei_private.h | 30 # error Platform must define SDEI critical priority value 34 # error Platform must define SDEI normal priority value
|
| /rk3399_ARM-atf/lib/extensions/ras/ |
| H A D | ras_common.c | 19 # error Platform must define RAS priority value
|
| /rk3399_ARM-atf/include/drivers/arm/ |
| H A D | gicv2.h | 190 void gicv2_set_interrupt_priority(unsigned int id, unsigned int priority);
|
| H A D | gicv3.h | 582 unsigned int priority);
|
| /rk3399_ARM-atf/drivers/arm/gic/v2/ |
| H A D | gicv2_main.c | 380 void gicv2_set_interrupt_priority(unsigned int id, unsigned int priority) in gicv2_set_interrupt_priority() argument 386 gicd_set_ipriorityr(driver_data->gicd_base, id, priority); in gicv2_set_interrupt_priority()
|
| /rk3399_ARM-atf/fdts/ |
| H A D | fvp-base-gicv23-interrupts.dtsi | 48 * 2. Interrupt priority
|
| /rk3399_ARM-atf/docs/security_advisories/ |
| H A D | security-advisory-tfv-11.rst | 31 priority SDEI event. The interrupt can be a private peripheral interrupt
|
| /rk3399_ARM-atf/drivers/arm/gic/v3/ |
| H A D | gicv3_main.c | 1048 unsigned int priority) in gicv3_set_interrupt_priority() argument 1065 gicr_set_ipriorityr(gicr_base, id, priority); in gicv3_set_interrupt_priority() 1069 gicd_set_ipriorityr(gicd_base, id, priority); in gicv3_set_interrupt_priority()
|
| /rk3399_ARM-atf/include/plat/common/ |
| H A D | platform.h | 156 void plat_ic_set_interrupt_priority(unsigned int id, unsigned int priority);
|
| /rk3399_ARM-atf/docs/design/ |
| H A D | interrupt-framework-design.rst | 256 enable the secure interrupts, ensure that their priority is always higher than 731 another higher priority Secure-EL1 interrupt or a EL3 interrupt. The SPD 824 ``yielding`` SMC processing or by a higher priority EL3 interrupt during 943 that means that a higher priority interrupt has preempted it. Invoke
|
| H A D | firmware-design.rst | 1382 (priority, group, configuration). Each element of the array shall be populated 1387 - 8-bit interrupt priority,
|
| /rk3399_ARM-atf/docs/ |
| H A D | porting-guide.rst | 2268 - Configure the priority mask register to allow interrupts of all priorities 2772 This macro must be defined to the EL3 exception priority level associated with 2774 (therefore of lower priority) than ``PLAT_SDEI_CRITICAL_PRI``. 2779 This macro must be defined to the EL3 exception priority level associated with 2781 (therefore of higher priority) than ``PLAT_SDEI_NORMAL_PRI``. 2784 priorities. Among the |SDEI| exceptions, Critical |SDEI| priority must 2785 be higher than Normal |SDEI| priority. 3503 This API returns the type of the highest priority pending interrupt at the 3536 This API returns the id of the highest priority pending interrupt at the 3586 priority pending interrupt from pending to active in the interrupt controller.
|
| H A D | change-log.md | 5071 …- add RAS_FFH_SUPPORT check for RAS EHF priority ([1c01284](https://review.trustedfirmware.org/plu… 5621 …- correct ehf priority for SPM_MM ([fb2fd55](https://review.trustedfirmware.org/plugins/gitiles/TF… 7357 …- implement workaround to forward highest priority interrupt ([e1b15b0](https://review.trustedfirm… 11505 - gic: Remove 'lowest priority' constants 11508 should define these if required, or instead determine the correct priority 11570 non-secure world, and may have higher priority than secure world interrupts.
|
| /rk3399_ARM-atf/docs/getting_started/ |
| H A D | build-options.rst | 919 ``EL3_PAYLOAD_BASE``. If both are defined, ``EL3_PAYLOAD_BASE`` has priority
|