xref: /kvm-unit-tests/lib/arm/asm/psci.h (revision c865f654ffe4c5955038aaf74f702ba62f3eb014)
1 #ifndef _ASMARM_PSCI_H_
2 #define _ASMARM_PSCI_H_
3 #include <libcflat.h>
4 #include <linux/psci.h>
5 
6 typedef int (*psci_invoke_fn)(unsigned int function_id, unsigned long arg0,
7 			      unsigned long arg1, unsigned long arg2);
8 extern psci_invoke_fn psci_invoke;
9 extern int psci_invoke_hvc(unsigned int function_id, unsigned long arg0,
10 			   unsigned long arg1, unsigned long arg2);
11 extern int psci_invoke_smc(unsigned int function_id, unsigned long arg0,
12 			   unsigned long arg1, unsigned long arg2);
13 extern void psci_set_conduit(void);
14 extern int psci_cpu_on(unsigned long cpuid, unsigned long entry_point);
15 extern void psci_system_reset(void);
16 extern int cpu_psci_cpu_boot(unsigned int cpu);
17 extern void cpu_psci_cpu_die(void);
18 extern void psci_system_off(void);
19 
20 #endif /* _ASMARM_PSCI_H_ */
21