blob: a772fa6cf7d9d819ad85b89605b5b23388ded0c1 [file] [log] [blame]
Szymon Starzycki3d86b012013-07-15 15:17:07 -07001#ifndef _SYS_KEXEC_H
2#define _SYS_KEXEC_H
3
Elliott Hughesbfc89922013-11-25 11:44:19 -08004#include <linux/kexec.h>
Thiébaud Weksteen358f7412020-10-26 13:42:59 +01005#include <sys/cdefs.h>
Szymon Starzycki3d86b012013-07-15 15:17:07 -07006#include <sys/syscall.h>
Thiébaud Weksteen358f7412020-10-26 13:42:59 +01007#include <unistd.h>
Szymon Starzycki3d86b012013-07-15 15:17:07 -07008#include "kexec.h"
9
10#define KEXEC_SEGMENT_MAX 16
11
12#define KEXEC_TYPE_DEFAULT 0
Thiébaud Weksteen358f7412020-10-26 13:42:59 +010013#define KEXEC_TYPE_CRASH 1
Szymon Starzycki3d86b012013-07-15 15:17:07 -070014
15/*
16 * Prototypes
17 */
18
19static inline long kexec_load(unsigned int entry, unsigned long nr_segments,
Thiébaud Weksteen358f7412020-10-26 13:42:59 +010020 struct kexec_segment* segment, unsigned long flags) {
21 return syscall(__NR_kexec_load, entry, nr_segments, segment, flags);
Szymon Starzycki3d86b012013-07-15 15:17:07 -070022}
23
24#endif /* _SYS_KEXEC_H */