Lines Matching defs:func_id

44 #define	is_psci_0_1(what, func_id)					\
46 (func_id) == kvm_host_psci_config.function_ids_0_1.what)
48 static bool is_psci_0_1_call(u64 func_id)
50 return (is_psci_0_1(cpu_suspend, func_id) ||
51 is_psci_0_1(cpu_on, func_id) ||
52 is_psci_0_1(cpu_off, func_id) ||
53 is_psci_0_1(migrate, func_id));
56 static bool is_psci_0_2_call(u64 func_id)
59 return (PSCI_0_2_FN(0) <= func_id && func_id <= PSCI_0_2_FN(31)) ||
60 (PSCI_0_2_FN64(0) <= func_id && func_id <= PSCI_0_2_FN64(31));
107 static int psci_cpu_on(u64 func_id, struct kvm_cpu_context *host_ctxt)
140 ret = psci_call(func_id, mpidr,
151 static int psci_cpu_suspend(u64 func_id, struct kvm_cpu_context *host_ctxt)
174 return psci_call(func_id, power_state,
179 static int psci_system_suspend(u64 func_id, struct kvm_cpu_context *host_ctxt)
198 return psci_call(func_id,
224 static unsigned long psci_0_1_handler(u64 func_id, struct kvm_cpu_context *host_ctxt)
226 if (is_psci_0_1(cpu_off, func_id) || is_psci_0_1(migrate, func_id))
228 if (is_psci_0_1(cpu_on, func_id))
229 return psci_cpu_on(func_id, host_ctxt);
230 if (is_psci_0_1(cpu_suspend, func_id))
231 return psci_cpu_suspend(func_id, host_ctxt);
236 static unsigned long psci_0_2_handler(u64 func_id, struct kvm_cpu_context *host_ctxt)
238 switch (func_id) {
254 return psci_cpu_suspend(func_id, host_ctxt);
256 return psci_cpu_on(func_id, host_ctxt);
262 static unsigned long psci_1_0_handler(u64 func_id, struct kvm_cpu_context *host_ctxt)
264 switch (func_id) {
270 return psci_system_suspend(func_id, host_ctxt);
272 return psci_0_2_handler(func_id, host_ctxt);
276 bool kvm_host_psci_handler(struct kvm_cpu_context *host_ctxt, u32 func_id)
282 if (!is_psci_0_1_call(func_id))
284 ret = psci_0_1_handler(func_id, host_ctxt);
287 if (!is_psci_0_2_call(func_id))
289 ret = psci_0_2_handler(func_id, host_ctxt);
292 if (!is_psci_0_2_call(func_id))
294 ret = psci_1_0_handler(func_id, host_ctxt);