UEFI time services, GetTime(), SetTime(), GetWakeupTime(), SetWakeupTime() are also supported by other non-IA64 architecutre with UEFI BIOS, e.g. x86. This patch changed RTC_DRV_EFI configuration to depend on EFI but not just IA64. It checks efi_enabled flag and efi-rtc driver should enabled. Cc: Matt Fleming <matt.fleming@xxxxxxxxx> Cc: H. Peter Anvin <hpa@xxxxxxxxx> Cc: Matthew Garrett <matthew.garrett@xxxxxxxxxx> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxxxxx> Cc: Jan Beulich <JBeulich@xxxxxxxx> Signed-off-by: Lee, Chun-Yi <jlee@xxxxxxxx> --- arch/x86/platform/efi/efi.c | 20 ++++++++++++++++++++ drivers/rtc/Kconfig | 2 +- 2 files changed, 21 insertions(+), 1 deletions(-) diff --git a/arch/x86/platform/efi/efi.c b/arch/x86/platform/efi/efi.c index ad44391..f08d28b 100644 --- a/arch/x86/platform/efi/efi.c +++ b/arch/x86/platform/efi/efi.c @@ -41,6 +41,9 @@ #include <linux/io.h> #include <linux/reboot.h> #include <linux/bcd.h> +#if (defined CONFIG_RTC_DRV_EFI || defined CONFIG_RTC_DRV_EFI_MODULE) +#include <linux/platform_device.h> +#endif #include <asm/setup.h> #include <asm/efi.h> @@ -961,6 +964,23 @@ void __init efi_enter_virtual_mode(void) kfree(new_memmap); } +#if (defined CONFIG_RTC_DRV_EFI || defined CONFIG_RTC_DRV_EFI_MODULE) +static struct platform_device rtc_efi_dev = { + .name = "rtc-efi", + .id = -1, +}; + +static int __init rtc_init(void) +{ + if (efi_enabled && platform_device_register(&rtc_efi_dev) < 0) + pr_err("unable to register rtc-efi device...\n"); + + /* not necessarily an error */ + return 0; +} +arch_initcall(rtc_init); +#endif + /* * Convenience functions to obtain memory types and attributes */ diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig index d0cea02..7796f0a 100644 --- a/drivers/rtc/Kconfig +++ b/drivers/rtc/Kconfig @@ -621,7 +621,7 @@ config RTC_DRV_DA9055 config RTC_DRV_EFI tristate "EFI RTC" - depends on IA64 + depends on EFI help If you say yes here you will get support for the EFI Real Time Clock. -- 1.6.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html