From bfd2ce2a5a61f16f2f8c98f4fbdcf47a758275ce Mon Sep 17 00:00:00 2001 From: "Stephen J. Kiernan" Date: Wed, 10 Apr 2024 17:44:59 -0400 Subject: [PATCH] efidev: Allow for optionally including efidev and efirtc into the kernel Require both "efirt" and "efidev" in order to build in efidev Require both "efirt" and "efirtc" in order to build in efirtc Update FIRECRACKER, GENERIC, and NOTES for amd64 Update NOTES and std.arm for arm64 Reviewed by: imp Obtained from: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D44745 --- sys/amd64/conf/FIRECRACKER | 4 ++++ sys/amd64/conf/GENERIC | 4 ++++ sys/amd64/conf/NOTES | 6 ++++++ sys/arm64/conf/NOTES | 4 +++- sys/arm64/conf/std.arm64 | 4 ++++ sys/conf/files | 4 ++-- 6 files changed, 23 insertions(+), 3 deletions(-) diff --git a/sys/amd64/conf/FIRECRACKER b/sys/amd64/conf/FIRECRACKER index 590a3059bea..b8ea17ee4a7 100644 --- a/sys/amd64/conf/FIRECRACKER +++ b/sys/amd64/conf/FIRECRACKER @@ -195,3 +195,7 @@ device pci options XENHVM # Xen HVM kernel infrastructure device xenpci # Xen HVM Hypervisor services driver device xentimer # Xen x86 PV timer device + +# EFI devices +device efidev # EFI pseudo-device +device efirtc # EFI RTC diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC index cfdfb2c89d4..f11601891ef 100644 --- a/sys/amd64/conf/GENERIC +++ b/sys/amd64/conf/GENERIC @@ -394,3 +394,7 @@ device uinput # install /dev/uinput cdev options HID_DEBUG # enable debug msgs device hid # Generic HID support options IICHID_SAMPLING # Workaround missing GPIO INTR support + +# EFI devices +device efidev # EFI pseudo-device +device efirtc # EFI RTC diff --git a/sys/amd64/conf/NOTES b/sys/amd64/conf/NOTES index 39ecfb529be..426db398a4a 100644 --- a/sys/amd64/conf/NOTES +++ b/sys/amd64/conf/NOTES @@ -594,6 +594,12 @@ options NKPT=31 # EFI Runtime Services support options EFIRT +# EFI pseudo-device +device efidev + +# EFI RTC +device efirtc + # # HID-over-I2C support # diff --git a/sys/arm64/conf/NOTES b/sys/arm64/conf/NOTES index 128fb80b95d..d58bc5b82f8 100644 --- a/sys/arm64/conf/NOTES +++ b/sys/arm64/conf/NOTES @@ -193,8 +193,9 @@ options EVDEV_SUPPORT # evdev support in legacy drivers device aw_cir # Pseudo devices. -options EFIRT # EFI Runtime Services device clk +device efidev # EFI pseudo-device +device efirtc # EFI RTC device phy device hwreset device nvmem @@ -212,6 +213,7 @@ device xdma # xDMA framework for SoC on-chip dma controllers # Chip-specific errata options THUNDERX_PASS_1_1_ERRATA +options EFIRT # EFI Runtime Services options FDT device acpi diff --git a/sys/arm64/conf/std.arm64 b/sys/arm64/conf/std.arm64 index eb4a0238ecd..1b6b0e8b181 100644 --- a/sys/arm64/conf/std.arm64 +++ b/sys/arm64/conf/std.arm64 @@ -106,3 +106,7 @@ options SMP # Symmetric MultiProcessor Kernel # More info in ntpd documentation: http://www.eecis.udel.edu/~ntp options PPS_SYNC + +# EFI devices +device efidev # EFI pseudo-device +device efirtc # EFI RTC diff --git a/sys/conf/files b/sys/conf/files index 8c62e8e7bcc..0594392ad55 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -1598,9 +1598,9 @@ dev/dwc/if_dwc.c optional dwc fdt dev/dwc/if_dwc_if.m optional dwc fdt dev/dwc/dwc1000_core.c optional dwc fdt dev/dwc/dwc1000_dma.c optional dwc fdt -dev/efidev/efidev.c optional efirt +dev/efidev/efidev.c optional efirt efidev dev/efidev/efirt.c optional efirt -dev/efidev/efirtc.c optional efirt +dev/efidev/efirtc.c optional efirt efirtc dev/e1000/if_em.c optional em \ compile-with "${NORMAL_C} -I$S/dev/e1000" dev/e1000/em_txrx.c optional em \