Lines Matching +full:idle +full:- +full:states
1 // SPDX-License-Identifier: GPL-2.0-only
3 * ARM/ARM64 generic CPU idle driver.
24 * arm_enter_idle_state - Programs CPU to enter the specified state
37 * Pass idle state index to arm_cpuidle_suspend which in turn in arm_enter_idle_state()
38 * will call the CPU ops suspend protocol with idle index as a in arm_enter_idle_state()
52 * handler for idle state index 0.
54 .states[0] = {
65 { .compatible = "arm,idle-state",
74 * framework. It relies on core code to parse the idle states
84 return -ENOMEM; in arm_idle_init_cpu()
86 drv->cpumask = (struct cpumask *)cpumask_of(cpu); in arm_idle_init_cpu()
89 * Initialize idle states data, starting at index 1. This in arm_idle_init_cpu()
90 * driver is DT only, if no DT idle states are detected (ret in arm_idle_init_cpu()
92 * there is no reason to initialize the idle driver if only in arm_idle_init_cpu()
97 ret = ret ? : -ENODEV; in arm_idle_init_cpu()
103 * idle states suspend back-end specific data in arm_idle_init_cpu()
109 * reported failure is a HW misconfiguration/breakage (-ENXIO). in arm_idle_init_cpu()
111 * Some platforms do not support idle operations in arm_idle_init_cpu()
112 * (arm_cpuidle_init() returning -EOPNOTSUPP), we should in arm_idle_init_cpu()
117 if (ret != -EOPNOTSUPP) in arm_idle_init_cpu()
118 pr_err("CPU %d failed to init idle CPU ops\n", cpu); in arm_idle_init_cpu()
119 ret = ret == -ENXIO ? 0 : ret; in arm_idle_init_cpu()
135 * arm_idle_init - Initializes arm cpuidle driver
156 while (--cpu >= 0) { in arm_idle_init()