diff options
author | 2013-12-20 18:02:18 +0800 | |
---|---|---|
committer | 2013-12-21 15:29:36 +0000 | |
commit | 926172d46038d7610b6b8d84e40db727cefb482d (patch) | |
tree | 8963aaa9fccd0a4ee0d59717b4de8e8cdfebbe62 /include/linux/efi.h | |
parent | efi: Export more EFI table variables to sysfs (diff) | |
download | linux-926172d46038d7610b6b8d84e40db727cefb482d.tar.gz linux-926172d46038d7610b6b8d84e40db727cefb482d.tar.bz2 linux-926172d46038d7610b6b8d84e40db727cefb482d.zip |
efi: Export EFI runtime memory mapping to sysfs
kexec kernel will need exactly same mapping for EFI runtime memory
ranges. Thus here export the runtime ranges mapping to sysfs,
kexec-tools will assemble them and pass to 2nd kernel via setup_data.
Introducing a new directory /sys/firmware/efi/runtime-map just like
/sys/firmware/memmap. Containing below attribute in each file of that
directory:
attribute num_pages phys_addr type virt_addr
Signed-off-by: Dave Young <dyoung@redhat.com>
Tested-by: Toshi Kani <toshi.kani@hp.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'include/linux/efi.h')
-rw-r--r-- | include/linux/efi.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/linux/efi.h b/include/linux/efi.h index fb60b10b7bd9..e64540746c63 100644 --- a/include/linux/efi.h +++ b/include/linux/efi.h @@ -872,4 +872,17 @@ int efivars_sysfs_init(void); #endif /* CONFIG_EFI_VARS */ +#ifdef CONFIG_EFI_RUNTIME_MAP +int efi_runtime_map_init(struct kobject *); +void efi_runtime_map_setup(void *, int, u32); +#else +static inline int efi_runtime_map_init(struct kobject *kobj) +{ + return 0; +} + +static inline void +efi_runtime_map_setup(void *map, int nr_entries, u32 desc_size) {} +#endif + #endif /* _LINUX_EFI_H */ |