Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752821AbaFWV3N (ORCPT ); Mon, 23 Jun 2014 17:29:13 -0400 Received: from mx1.redhat.com ([209.132.183.28]:63436 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751212AbaFWV3L (ORCPT ); Mon, 23 Jun 2014 17:29:11 -0400 Message-ID: <1403558870.755.60.camel@deneb.redhat.com> Subject: Re: [PATCH] rtc: ia64: allow other architectures to use EFI RTC From: Mark Salter To: Alessandro Zummo Cc: Tony Luck , Fenghua Yu , linux-ia64@vger.kernel.org, rtc-linux@googlegroups.com, linux-kernel@vger.kernel.org Date: Mon, 23 Jun 2014 17:27:50 -0400 In-Reply-To: <1402685430-32591-1-git-send-email-msalter@redhat.com> References: <1402685430-32591-1-git-send-email-msalter@redhat.com> Organization: Red Hat, Inc Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Ping. On Fri, 2014-06-13 at 14:50 -0400, Mark Salter wrote: > Currently, the rtc-efi driver is restricted to ia64 only. > Newer architectures with EFI support may want to also use > that driver. This patch moves the platform device setup > from ia64 into drivers/rtc and allow any architecture with > CONFIG_EFI=y to use the rtc-efi driver. > > Signed-off-by: Mark Salter > --- > arch/ia64/kernel/time.c | 15 --------------- > drivers/rtc/Kconfig | 2 +- > drivers/rtc/Makefile | 4 ++++ > drivers/rtc/rtc-efi-platform.c | 30 ++++++++++++++++++++++++++++++ > 4 files changed, 35 insertions(+), 16 deletions(-) > create mode 100644 drivers/rtc/rtc-efi-platform.c > > diff --git a/arch/ia64/kernel/time.c b/arch/ia64/kernel/time.c > index 71c52bc..a149c67 100644 > --- a/arch/ia64/kernel/time.c > +++ b/arch/ia64/kernel/time.c > @@ -384,21 +384,6 @@ static struct irqaction timer_irqaction = { > .name = "timer" > }; > > -static struct platform_device rtc_efi_dev = { > - .name = "rtc-efi", > - .id = -1, > -}; > - > -static int __init rtc_init(void) > -{ > - if (platform_device_register(&rtc_efi_dev) < 0) > - printk(KERN_ERR "unable to register rtc device...\n"); > - > - /* not necessarily an error */ > - return 0; > -} > -module_init(rtc_init); > - > void read_persistent_clock(struct timespec *ts) > { > efi_gettimeofday(ts); > diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig > index 0754f5c..4478a59 100644 > --- a/drivers/rtc/Kconfig > +++ b/drivers/rtc/Kconfig > @@ -789,7 +789,7 @@ config RTC_DRV_DA9063 > > 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. > diff --git a/drivers/rtc/Makefile b/drivers/rtc/Makefile > index 70347d0..f1dfc36 100644 > --- a/drivers/rtc/Makefile > +++ b/drivers/rtc/Makefile > @@ -10,6 +10,10 @@ obj-$(CONFIG_RTC_SYSTOHC) += systohc.o > obj-$(CONFIG_RTC_CLASS) += rtc-core.o > rtc-core-y := class.o interface.o > > +ifdef CONFIG_RTC_DRV_EFI > +rtc-core-y += rtc-efi-platform.o > +endif > + > rtc-core-$(CONFIG_RTC_INTF_DEV) += rtc-dev.o > rtc-core-$(CONFIG_RTC_INTF_PROC) += rtc-proc.o > rtc-core-$(CONFIG_RTC_INTF_SYSFS) += rtc-sysfs.o > diff --git a/drivers/rtc/rtc-efi-platform.c b/drivers/rtc/rtc-efi-platform.c > new file mode 100644 > index 0000000..1a7f890 > --- /dev/null > +++ b/drivers/rtc/rtc-efi-platform.c > @@ -0,0 +1,30 @@ > +/* > + * Moved from arch/ia64/kernel/time.c > + * > + * Copyright (C) 1998-2003 Hewlett-Packard Co > + * Stephane Eranian > + * David Mosberger > + * Copyright (C) 1999 Don Dugger > + * Copyright (C) 1999-2000 VA Linux Systems > + * Copyright (C) 1999-2000 Walt Drummond > + */ > +#include > +#include > +#include > +#include > +#include > + > +static struct platform_device rtc_efi_dev = { > + .name = "rtc-efi", > + .id = -1, > +}; > + > +static int __init rtc_init(void) > +{ > + if (platform_device_register(&rtc_efi_dev) < 0) > + pr_err("unable to register rtc device...\n"); > + > + /* not necessarily an error */ > + return 0; > +} > +module_init(rtc_init); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/