| /* |
| * Copyright (c) 2021, Arm Limited. All rights reserved. |
| * |
| * SPDX-License-Identifier: BSD-3-Clause |
| * |
| */ |
| |
| #include "cmsis.h" |
| #include "fih.h" |
| #include "psa/service.h" |
| |
| void tfm_idle_thread(void) |
| { |
| while (1) { |
| /* |
| * There could be other Partitions becoming RUNABLE after wake up. |
| * This is a dummy psa_wait to let SPM check possible scheduling. |
| * It does not expect any signals. |
| */ |
| if (psa_wait(PSA_WAIT_ANY, PSA_POLL) == 0) { |
| __WFI(); |
| } |
| } |
| |
| #ifdef TFM_FIH_PROFILE_ON |
| fih_delay(); |
| |
| while (1) { |
| /* |
| * There could be other Partitions becoming RUNABLE after wake up. |
| * This is a dummy psa_wait to let SPM check possible scheduling. |
| * It does not expect any signals. |
| */ |
| if (psa_wait(PSA_WAIT_ANY, PSA_POLL) == 0) { |
| __WFI(); |
| } |
| } |
| #endif |
| } |