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