From: Ingo Molnar Date: Sun, 5 Jan 2014 11:34:29 +0000 (+0100) Subject: Merge tag 'v3.13-rc7' into x86/efi-kexec to resolve conflicts X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ef0b8b9a521c65201bfca9747ee1bf374296133c;p=linux-beck.git Merge tag 'v3.13-rc7' into x86/efi-kexec to resolve conflicts Conflicts: arch/x86/platform/efi/efi.c drivers/firmware/efi/Kconfig Signed-off-by: Ingo Molnar --- ef0b8b9a521c65201bfca9747ee1bf374296133c diff --cc arch/x86/platform/efi/efi.c index 7ed3ecfde98a,cceb813044ef..d62ec87a2b26 --- a/arch/x86/platform/efi/efi.c +++ b/arch/x86/platform/efi/efi.c @@@ -764,19 -684,15 +764,12 @@@ void __init efi_init(void return; set_bit(EFI_RUNTIME_SERVICES, &x86_efi_facility); } -- if (efi_memmap_init()) return; set_bit(EFI_MEMMAP, &x86_efi_facility); - #ifdef CONFIG_X86_32 - if (efi_is_native()) { - x86_platform.get_wallclock = efi_get_time; - x86_platform.set_wallclock = efi_set_rtc_mmss; - } - #endif -#if EFI_DEBUG print_efi_memmap(); -#endif } void __init efi_late_init(void) diff --cc drivers/firmware/efi/Kconfig index 730f5f2e8b7f,6aecbc86ec94..1e75f48b61f8 --- a/drivers/firmware/efi/Kconfig +++ b/drivers/firmware/efi/Kconfig @@@ -36,18 -36,7 +36,18 @@@ config EFI_VARS_PSTORE_DEFAULT_DISABL backend for pstore by default. This setting can be overridden using the efivars module's pstore_disable parameter. - config UEFI_CPER - def_bool n - +config EFI_RUNTIME_MAP + bool "Export efi runtime maps to sysfs" + depends on X86 && EFI && KEXEC + default y + help + Export efi runtime memory maps to /sys/firmware/efi/runtime-map. + That memory map is used for example by kexec to set up efi virtual + mapping the 2nd kernel, but can also be used for debugging purposes. + + See also Documentation/ABI/testing/sysfs-firmware-efi-runtime-map. + endmenu + + config UEFI_CPER + bool diff --cc include/linux/efi.h index e64540746c63,11ce6784a196..0a819e7a60c9 --- a/include/linux/efi.h +++ b/include/linux/efi.h @@@ -870,19 -868,8 +872,21 @@@ void efivar_run_worker(void) #if defined(CONFIG_EFI_VARS) || defined(CONFIG_EFI_VARS_MODULE) int efivars_sysfs_init(void); + #define EFIVARS_DATA_SIZE_MAX 1024 + #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 */