y or n per optional driver (virtio-gpu, stdvga, e1000, rtl8139, native r8169, AC'97, AHCI, NVMe), all y except the native r8169, overridable with make DRV_X=n. Only drivers nothing else calls can be optional; the registry #ifdefs them and the Makefile leaves their objects out. Built with every one off (links, none of their symbols present), with r8169 on, and by default. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EVRhxi9zpdW2uDUN4FVcao
45 lines
2.1 KiB
Text
45 lines
2.1 KiB
Text
# Which drivers are compiled into the kernel.
|
|
#
|
|
# y compiled in, and enabled: it is offered every device it can drive
|
|
# n not compiled in: the code is not linked and the kernel never knows it
|
|
#
|
|
# Everything is y unless it says otherwise. Change a line, or override one for
|
|
# a single build:
|
|
#
|
|
# make DRV_E1000=n DRV_NVME=n
|
|
#
|
|
# A changed value rebuilds only kernel/drivers/registry.o and the link.
|
|
#
|
|
# These are the drivers that can be left out cleanly: nothing else in the kernel
|
|
# calls them, they are only offered a device by the registry
|
|
# (kernel/drivers/registry.c). The others cannot be, because the rest of the
|
|
# kernel calls into them directly, and are not listed:
|
|
#
|
|
# vga_fb the boot framebuffer: the console and the crash screen draw on it
|
|
# xhci, usb core, usb hid / storage / hub
|
|
# the keyboard and the root disk can arrive over USB, bio.c and
|
|
# the hotplug thread call in, and so does the I2C-HID touchpad
|
|
# PS/2, IDE, the 16550 UART
|
|
# fixed-address legacy devices (kernel/dev/)
|
|
#
|
|
# Linux's own drivers, run in a process by ldlsd, are not here: they are files in
|
|
# the image (make ldls-r8169), not code in the kernel.
|
|
|
|
# --- display --------------------------------------------------------------
|
|
DRV_VGA_PCI = y # the stdvga/Bochs card (the framebuffer driver stays regardless)
|
|
DRV_VIRTIO_GPU = y # QEMU's virtio-gpu: mode setting and an explicit flush
|
|
|
|
# --- network ----------------------------------------------------------------
|
|
DRV_E1000 = y # Intel 8254x and 8257x
|
|
DRV_RTL8139 = y # Realtek 8139 (the one Realtek part QEMU emulates)
|
|
# The native RTL8168/8111 driver. Off by default because the laptop's NIC is
|
|
# driven by Linux's r8169 under LDLS (etc/schinit/ldls-r8169.job), and a driver
|
|
# here would claim the device first. Turn it on for a machine without that job.
|
|
DRV_R8169 = n
|
|
|
|
# --- storage ----------------------------------------------------------------
|
|
DRV_AHCI = y # SATA
|
|
DRV_NVME = y # NVMe SSDs
|
|
|
|
# --- audio ------------------------------------------------------------------
|
|
DRV_AC97 = y # Intel AC'97 (QEMU's and old boards')
|