.. | .. |
---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-only */ |
---|
1 | 2 | /* |
---|
2 | 3 | * kexec for arm64 |
---|
3 | 4 | * |
---|
4 | 5 | * Copyright (C) Linaro. |
---|
5 | 6 | * Copyright (C) Huawei Futurewei Technologies. |
---|
6 | | - * |
---|
7 | | - * This program is free software; you can redistribute it and/or modify |
---|
8 | | - * it under the terms of the GNU General Public License version 2 as |
---|
9 | | - * published by the Free Software Foundation. |
---|
10 | 7 | */ |
---|
11 | 8 | |
---|
12 | 9 | #ifndef _ARM64_KEXEC_H |
---|
.. | .. |
---|
93 | 90 | static inline void crash_post_resume(void) {} |
---|
94 | 91 | #endif |
---|
95 | 92 | |
---|
| 93 | +#ifdef CONFIG_KEXEC_FILE |
---|
| 94 | +#define ARCH_HAS_KIMAGE_ARCH |
---|
| 95 | + |
---|
| 96 | +struct kimage_arch { |
---|
| 97 | + void *dtb; |
---|
| 98 | + unsigned long dtb_mem; |
---|
| 99 | + /* Core ELF header buffer */ |
---|
| 100 | + void *elf_headers; |
---|
| 101 | + unsigned long elf_headers_mem; |
---|
| 102 | + unsigned long elf_headers_sz; |
---|
| 103 | +}; |
---|
| 104 | + |
---|
| 105 | +extern const struct kexec_file_ops kexec_image_ops; |
---|
| 106 | + |
---|
| 107 | +struct kimage; |
---|
| 108 | + |
---|
| 109 | +extern int arch_kimage_file_post_load_cleanup(struct kimage *image); |
---|
| 110 | +extern int load_other_segments(struct kimage *image, |
---|
| 111 | + unsigned long kernel_load_addr, unsigned long kernel_size, |
---|
| 112 | + char *initrd, unsigned long initrd_len, |
---|
| 113 | + char *cmdline); |
---|
| 114 | +#endif |
---|
| 115 | + |
---|
96 | 116 | #endif /* __ASSEMBLY__ */ |
---|
97 | 117 | |
---|
98 | 118 | #endif |
---|