xref: /aosp_15_r20/system/extras/kexec_tools/kexec.h (revision 288bf5226967eb3dac5cce6c939ccc2a7f2b4fe5)
1*288bf522SAndroid Build Coastguard Worker #ifndef _SYS_KEXEC_H
2*288bf522SAndroid Build Coastguard Worker #define _SYS_KEXEC_H
3*288bf522SAndroid Build Coastguard Worker 
4*288bf522SAndroid Build Coastguard Worker #include <linux/kexec.h>
5*288bf522SAndroid Build Coastguard Worker #include <sys/cdefs.h>
6*288bf522SAndroid Build Coastguard Worker #include <sys/syscall.h>
7*288bf522SAndroid Build Coastguard Worker #include <unistd.h>
8*288bf522SAndroid Build Coastguard Worker #include "kexec.h"
9*288bf522SAndroid Build Coastguard Worker 
10*288bf522SAndroid Build Coastguard Worker #define KEXEC_SEGMENT_MAX 16
11*288bf522SAndroid Build Coastguard Worker 
12*288bf522SAndroid Build Coastguard Worker #define KEXEC_TYPE_DEFAULT 0
13*288bf522SAndroid Build Coastguard Worker #define KEXEC_TYPE_CRASH 1
14*288bf522SAndroid Build Coastguard Worker 
15*288bf522SAndroid Build Coastguard Worker /*
16*288bf522SAndroid Build Coastguard Worker  * Prototypes
17*288bf522SAndroid Build Coastguard Worker  */
18*288bf522SAndroid Build Coastguard Worker 
kexec_load(unsigned int entry,unsigned long nr_segments,struct kexec_segment * segment,unsigned long flags)19*288bf522SAndroid Build Coastguard Worker static inline long kexec_load(unsigned int entry, unsigned long nr_segments,
20*288bf522SAndroid Build Coastguard Worker                               struct kexec_segment* segment, unsigned long flags) {
21*288bf522SAndroid Build Coastguard Worker     return syscall(__NR_kexec_load, entry, nr_segments, segment, flags);
22*288bf522SAndroid Build Coastguard Worker }
23*288bf522SAndroid Build Coastguard Worker 
24*288bf522SAndroid Build Coastguard Worker #endif /* _SYS_KEXEC_H */
25