1 // © 2021 Qualcomm Innovation Center, Inc. All rights reserved.
2 //
3 // SPDX-License-Identifier: BSD-3-Clause
4 
5 // Idle thread and related APIs.
6 
7 // Get the current CPU's idle thread. Must only be called in a cpulocal
8 // critical section.
9 thread_t *
10 idle_thread(void) REQUIRE_PREEMPT_DISABLED;
11 
12 // Get the specified CPU's idle thread.
13 thread_t *
14 idle_thread_for(cpu_index_t cpu_index);
15 
16 // True when running in the current CPU's idle thread.
17 bool
18 idle_is_current(void) REQUIRE_PREEMPT_DISABLED;
19 
20 bool
21 idle_yield(void) REQUIRE_PREEMPT_DISABLED;
22 
23 // Handle a wakeup event received during idle.
24 idle_state_t
25 idle_wakeup(void) REQUIRE_PREEMPT_DISABLED;
26