1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef _LINUX_PURGATORY_H |
3 | #define _LINUX_PURGATORY_H |
4 | |
5 | #include <linux/types.h> |
6 | #include <crypto/sha2.h> |
7 | #include <uapi/linux/kexec.h> |
8 | |
9 | struct kexec_sha_region { |
10 | unsigned long start; |
11 | unsigned long len; |
12 | }; |
13 | |
14 | /* |
15 | * These forward declarations serve two purposes: |
16 | * |
17 | * 1) Make sparse happy when checking arch/purgatory |
18 | * 2) Document that these are required to be global so the symbol |
19 | * lookup in kexec works |
20 | */ |
21 | extern struct kexec_sha_region purgatory_sha_regions[KEXEC_SEGMENT_MAX]; |
22 | extern u8 purgatory_sha256_digest[SHA256_DIGEST_SIZE]; |
23 | |
24 | #endif |
25 | |