git: 04ea5e9f84e2 - main - MINIMAL: Grow minimal to support ata, scsi and nvme

From: Warner Losh <imp_at_FreeBSD.org>
Date: Fri, 03 May 2024 15:09:05 UTC
The branch main has been updated by imp:

URL: https://cgit.FreeBSD.org/src/commit/?id=04ea5e9f84e2a62e874f7964fc94d10f454c7846

commit 04ea5e9f84e2a62e874f7964fc94d10f454c7846
Author:     Warner Losh <imp@FreeBSD.org>
AuthorDate: 2024-05-03 15:08:03 +0000
Commit:     Warner Losh <imp@FreeBSD.org>
CommitDate: 2024-05-03 15:08:03 +0000

    MINIMAL: Grow minimal to support ata, scsi and nvme
    
    Until the boot loader automatically loads these things (including the
    CAM dependency), we need to have them in the minimal kernel since they
    are needed to boot. These aren't strictly required to be in the kernel,
    since modules work, but are high enough demand items that until we sort
    out boot loader automation, I'm adding them here. These devices are also
    common in vm environments. The delta is relatively small in size. Once
    the boot loader automation arrives, these and a lot of other things can
    be trimmed. It's less than ideal, but is a good middle ground for the
    moment.
    
    Sponsored by:           Netflix
    Reviewed by:            kevans, emaste
    Differential Revision:  https://reviews.freebsd.org/D45012
---
 sys/amd64/conf/MINIMAL | 12 ++++++++++++
 sys/i386/conf/MINIMAL  | 12 ++++++++++++
 2 files changed, 24 insertions(+)

diff --git a/sys/amd64/conf/MINIMAL b/sys/amd64/conf/MINIMAL
index 3447cbc366fb..191b88daca14 100644
--- a/sys/amd64/conf/MINIMAL
+++ b/sys/amd64/conf/MINIMAL
@@ -149,3 +149,15 @@ device		xentimer		# Xen x86 PV timer device
 options 	EVDEV_SUPPORT		# evdev support in legacy drivers
 device		evdev			# input event device support
 device		uinput			# install /dev/uinput cdev
+
+# NVM Express (NVMe) support
+device		nvme			# base NVMe driver
+
+# ATA controllers
+device		ahci			# AHCI-compatible SATA controllers
+
+# CAM
+device		scbus			# SCSI bus (required for ATA/SCSI)
+device		da			# Direct Access (disks)
+device		cd			# CD
+device		pass			# Passthrough device (direct ATA/SCSI access)
diff --git a/sys/i386/conf/MINIMAL b/sys/i386/conf/MINIMAL
index c70fd27a5c69..73277c7a3cee 100644
--- a/sys/i386/conf/MINIMAL
+++ b/sys/i386/conf/MINIMAL
@@ -157,3 +157,15 @@ device		xentimer		# Xen x86 PV timer device
 options 	EVDEV_SUPPORT		# evdev support in legacy drivers
 device		evdev			# input event device support
 device		uinput			# install /dev/uinput cdev
+
+# NVM Express (NVMe) support
+device		nvme			# base NVMe driver
+
+# ATA controllers
+device		ahci			# AHCI-compatible SATA controllers
+
+# CAM
+device		scbus			# SCSI bus (required for ATA/SCSI)
+device		da			# Direct Access (disks)
+device		cd			# CD
+device		pass			# Passthrough device (direct ATA/SCSI access)