[RFC PATCH 0/3] Remove unused EFI runtime APIs

Ard Biesheuvel ardb+git at google.com
Sun Jul 13 23:08:44 PDT 2025


From: Ard Biesheuvel <ardb at kernel.org>

Using EFI runtime services to program the RTC to wake up the system is
supported in theory, but rarely works in practice. Fortunately, this
functionality is rarely [if ever] used to begin with so we can just drop
it. (Note that the EFI rtc driver is not used by x86, which programs the
CMOS rtc directly)

The same applies to GetNextHighMonoCount(), which, if implemented,
usually relies on SetVariable() under the hood *, which is often not
supported at runtime by non-x86 platforms. But it has no known users
either so let's drop support for it as well.

This means we need to drop the slightly pointless tests for it too.

* EDK2 based EFI implementations usually have a MTC variable carrying
  the monotonic counter variable, which is therefore not truly
  monotonic, given that SetVariable() will happily overwrite it. 

Cc: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
Cc: Feng Tang <feng.tang at linux.alibaba.com>
Cc: Alexandre Belloni <alexandre.belloni at bootlin.com>
Cc: Juergen Gross <jgross at suse.com>
Cc: Stefano Stabellini <sstabellini at kernel.org>
Cc: Oleksandr Tyshchenko <oleksandr_tyshchenko at epam.com> 
Cc: Sunil V L <sunilvl at ventanamicro.com>
Cc: Bibo Mao <maobibo at loongson.cn>
Cc: linux-rtc at vger.kernel.org
Cc: linux-efi at vger.kernel.org
Cc: xen-devel at lists.xenproject.org
Cc: x86 at kernel.org
Cc: linux-riscv at lists.infradead.org
Cc: loongarch at lists.linux.dev

Ard Biesheuvel (3):
  efi-rtc: Remove wakeup functionality
  efi/test: Don't bother pseudo-testing unused EFI services
  efi: Remove support for pointless, unused EFI services

 arch/x86/platform/efi/efi_64.c          |  22 ----
 drivers/firmware/efi/runtime-wrappers.c |  68 ------------
 drivers/firmware/efi/test/efi_test.c    | 108 +-------------------
 drivers/rtc/rtc-efi.c                   |  76 +-------------
 drivers/xen/efi.c                       |  56 ----------
 include/linux/efi.h                     |   6 --
 6 files changed, 4 insertions(+), 332 deletions(-)

-- 
2.50.0.727.gbf7dc18ff4-goog




More information about the linux-riscv mailing list