From: Alexandre Belloni <alexandre.belloni@bootlin.com>
To: Ard Biesheuvel <ardb@kernel.org>
Cc: linux-efi@vger.kernel.org, Leif Lindholm <leif@nuviainc.com>,
Peter Jones <pjones@redhat.com>,
Heinrich Schuchardt <xypron.glpk@gmx.de>,
Jeff Brasen <jbrasen@nvidia.com>,
Atish Patra <Atish.Patra@wdc.com>,
x86@kernel.org, Alessandro Zummo <a.zummo@towertech.it>,
linux-rtc@vger.kernel.org
Subject: Re: [PATCH 4/9] efi: register EFI rtc platform device only when available
Date: Wed, 19 Feb 2020 23:11:37 +0100 [thread overview]
Message-ID: <20200219221016.GL3390@piout.net> (raw)
In-Reply-To: <20200219171907.11894-5-ardb@kernel.org>
On 19/02/2020 18:19:02+0100, Ard Biesheuvel wrote:
> Drop the separate driver that registers the EFI rtc on all EFI
> systems that have runtime services available, and instead, move
> the registration into the core EFI code, and make it conditional
> on whether the actual time related services are available.
>
> Cc: Alessandro Zummo <a.zummo@towertech.it>
> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Cc: linux-rtc@vger.kernel.org
> Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
> ---
> drivers/firmware/efi/efi.c | 3 ++
> drivers/rtc/Makefile | 4 ---
> drivers/rtc/rtc-efi-platform.c | 35 --------------------
> 3 files changed, 3 insertions(+), 39 deletions(-)
>
> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
> index abf4c02e0201..69a585106d30 100644
> --- a/drivers/firmware/efi/efi.c
> +++ b/drivers/firmware/efi/efi.c
> @@ -321,6 +321,9 @@ static int __init efisubsys_init(void)
> }
> }
>
> + if (efi_rt_services_supported(EFI_RT_SUPPORTED_TIME_SERVICES))
> + platform_device_register_simple("rtc-efi", 0, NULL, 0);
> +
> /* We register the efi directory at /sys/firmware/efi */
> efi_kobj = kobject_create_and_add("efi", firmware_kobj);
> if (!efi_kobj) {
> diff --git a/drivers/rtc/Makefile b/drivers/rtc/Makefile
> index 4ac8f19fb631..24c7dfa1bd7d 100644
> --- a/drivers/rtc/Makefile
> +++ b/drivers/rtc/Makefile
> @@ -12,10 +12,6 @@ obj-$(CONFIG_RTC_CLASS) += rtc-core.o
> obj-$(CONFIG_RTC_MC146818_LIB) += rtc-mc146818-lib.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_NVMEM) += nvmem.o
> rtc-core-$(CONFIG_RTC_INTF_DEV) += dev.o
> rtc-core-$(CONFIG_RTC_INTF_PROC) += proc.o
> diff --git a/drivers/rtc/rtc-efi-platform.c b/drivers/rtc/rtc-efi-platform.c
> deleted file mode 100644
> index 6c037dc4e3dc..000000000000
> --- a/drivers/rtc/rtc-efi-platform.c
> +++ /dev/null
> @@ -1,35 +0,0 @@
> -// SPDX-License-Identifier: GPL-2.0
> -/*
> - * Moved from arch/ia64/kernel/time.c
> - *
> - * Copyright (C) 1998-2003 Hewlett-Packard Co
> - * Stephane Eranian <eranian@hpl.hp.com>
> - * David Mosberger <davidm@hpl.hp.com>
> - * Copyright (C) 1999 Don Dugger <don.dugger@intel.com>
> - * Copyright (C) 1999-2000 VA Linux Systems
> - * Copyright (C) 1999-2000 Walt Drummond <drummond@valinux.com>
> - */
> -
> -#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> -
> -#include <linux/init.h>
> -#include <linux/kernel.h>
> -#include <linux/module.h>
> -#include <linux/efi.h>
> -#include <linux/platform_device.h>
> -
> -static struct platform_device rtc_efi_dev = {
> - .name = "rtc-efi",
> - .id = -1,
> -};
> -
> -static int __init rtc_init(void)
> -{
> - if (efi_enabled(EFI_RUNTIME_SERVICES))
> - 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);
> --
> 2.17.1
>
--
Alexandre Belloni, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
next prev parent reply other threads:[~2020-02-19 22:11 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-19 17:18 [PATCH 0/9] efi: implement support for EFI RT properties table Ard Biesheuvel
2020-02-19 17:18 ` [PATCH 1/9] efi: store mask of supported runtime services in struct efi Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 2/9] efi: add support for EFI_RT_PROPERTIES table Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 3/9] efi: use more granular check for availability for variable services Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 4/9] efi: register EFI rtc platform device only when available Ard Biesheuvel
2020-02-19 22:11 ` Alexandre Belloni [this message]
2020-02-19 17:19 ` [PATCH 5/9] infiniband: hfi1: use EFI GetVariable " Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 6/9] scsi: iscsi: " Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 7/9] efi: use EFI ResetSystem " Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 8/9] x86/ima: use EFI GetVariable " Ard Biesheuvel
2020-02-19 17:19 ` [PATCH 9/9] integrity: check properly whether EFI GetVariable() is available Ard Biesheuvel
2020-02-19 20:46 ` Serge E. Hallyn
2020-02-19 21:00 ` Ard Biesheuvel
2020-02-20 3:19 ` Serge E. Hallyn
2020-02-19 18:58 ` [PATCH 0/9] efi: implement support for EFI RT properties table Heinrich Schuchardt
2020-02-19 19:17 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200219221016.GL3390@piout.net \
--to=alexandre.belloni@bootlin.com \
--cc=Atish.Patra@wdc.com \
--cc=a.zummo@towertech.it \
--cc=ardb@kernel.org \
--cc=jbrasen@nvidia.com \
--cc=leif@nuviainc.com \
--cc=linux-efi@vger.kernel.org \
--cc=linux-rtc@vger.kernel.org \
--cc=pjones@redhat.com \
--cc=x86@kernel.org \
--cc=xypron.glpk@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).