Elliott Hughes | 180edef | 2023-11-02 00:08:05 +0000 | [diff] [blame] | 1 | /* |
| 2 | * This file is auto-generated. Modifications will be lost. |
| 3 | * |
| 4 | * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ |
| 5 | * for more information. |
| 6 | */ |
Ben Cheng | 655a7c0 | 2013-10-16 16:09:24 -0700 | [diff] [blame] | 7 | #ifndef _UAPILINUX_KEXEC_H |
| 8 | #define _UAPILINUX_KEXEC_H |
| 9 | #include <linux/types.h> |
| 10 | #define KEXEC_ON_CRASH 0x00000001 |
Ben Cheng | 655a7c0 | 2013-10-16 16:09:24 -0700 | [diff] [blame] | 11 | #define KEXEC_PRESERVE_CONTEXT 0x00000002 |
Christopher Ferris | 67d1e5e | 2023-10-31 13:36:37 -0700 | [diff] [blame] | 12 | #define KEXEC_UPDATE_ELFCOREHDR 0x00000004 |
Ben Cheng | 655a7c0 | 2013-10-16 16:09:24 -0700 | [diff] [blame] | 13 | #define KEXEC_ARCH_MASK 0xffff0000 |
Christopher Ferris | 82d7504 | 2015-01-26 10:57:07 -0800 | [diff] [blame] | 14 | #define KEXEC_FILE_UNLOAD 0x00000001 |
| 15 | #define KEXEC_FILE_ON_CRASH 0x00000002 |
Christopher Ferris | 82d7504 | 2015-01-26 10:57:07 -0800 | [diff] [blame] | 16 | #define KEXEC_FILE_NO_INITRAMFS 0x00000004 |
Tao Bao | d7db594 | 2015-01-28 10:07:51 -0800 | [diff] [blame] | 17 | #define KEXEC_ARCH_DEFAULT (0 << 16) |
| 18 | #define KEXEC_ARCH_386 (3 << 16) |
| 19 | #define KEXEC_ARCH_68K (4 << 16) |
Christopher Ferris | 9584fa4 | 2019-12-09 15:36:13 -0800 | [diff] [blame] | 20 | #define KEXEC_ARCH_PARISC (15 << 16) |
Ben Cheng | 655a7c0 | 2013-10-16 16:09:24 -0700 | [diff] [blame] | 21 | #define KEXEC_ARCH_X86_64 (62 << 16) |
| 22 | #define KEXEC_ARCH_PPC (20 << 16) |
| 23 | #define KEXEC_ARCH_PPC64 (21 << 16) |
Christopher Ferris | 38062f9 | 2014-07-09 15:33:25 -0700 | [diff] [blame] | 24 | #define KEXEC_ARCH_IA_64 (50 << 16) |
Ben Cheng | 655a7c0 | 2013-10-16 16:09:24 -0700 | [diff] [blame] | 25 | #define KEXEC_ARCH_ARM (40 << 16) |
| 26 | #define KEXEC_ARCH_S390 (22 << 16) |
| 27 | #define KEXEC_ARCH_SH (42 << 16) |
Christopher Ferris | 38062f9 | 2014-07-09 15:33:25 -0700 | [diff] [blame] | 28 | #define KEXEC_ARCH_MIPS_LE (10 << 16) |
Tao Bao | d7db594 | 2015-01-28 10:07:51 -0800 | [diff] [blame] | 29 | #define KEXEC_ARCH_MIPS (8 << 16) |
Christopher Ferris | 49f525c | 2016-12-12 14:55:36 -0800 | [diff] [blame] | 30 | #define KEXEC_ARCH_AARCH64 (183 << 16) |
Christopher Ferris | fcc3b4f | 2021-07-01 01:30:21 +0000 | [diff] [blame] | 31 | #define KEXEC_ARCH_RISCV (243 << 16) |
Christopher Ferris | 80ae69d | 2022-08-02 16:32:21 -0700 | [diff] [blame] | 32 | #define KEXEC_ARCH_LOONGARCH (258 << 16) |
Ben Cheng | 655a7c0 | 2013-10-16 16:09:24 -0700 | [diff] [blame] | 33 | #define KEXEC_SEGMENT_MAX 16 |
| 34 | struct kexec_segment { |
Christopher Ferris | 49f525c | 2016-12-12 14:55:36 -0800 | [diff] [blame] | 35 | const void * buf; |
Christopher Ferris | 10a76e6 | 2022-06-08 13:31:52 -0700 | [diff] [blame] | 36 | __kernel_size_t bufsz; |
Tao Bao | d7db594 | 2015-01-28 10:07:51 -0800 | [diff] [blame] | 37 | const void * mem; |
Christopher Ferris | 10a76e6 | 2022-06-08 13:31:52 -0700 | [diff] [blame] | 38 | __kernel_size_t memsz; |
Christopher Ferris | 49f525c | 2016-12-12 14:55:36 -0800 | [diff] [blame] | 39 | }; |
Nick Kralevich | a67e4de | 2013-01-14 11:28:26 -0800 | [diff] [blame] | 40 | #endif |