The branch main has been updated by ngie:

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

commit c47cefba831240a1b3de375f18134b93cf998f5c
Author:     Enji Cooper <[email protected]>
AuthorDate: 2026-03-03 04:49:54 +0000
Commit:     Enji Cooper <[email protected]>
CommitDate: 2026-03-03 04:50:03 +0000

    Only build USB-related modules if MK_USB != no
    
    This change moves the thunderbolt module and other USB modules under a
    MK_USB != no conditional to ensure that users not desiring USB support
    can easily build systems without USB-specific drivers using this knob.
    
    MFC after:      1 week
    Reviewed By:    imp
    Differential Revision: https://reviews.freebsd.org/D55576
---
 sys/conf/kern.opts.mk |  5 +++++
 sys/conf/kmod.mk      |  8 ++++++--
 sys/modules/Makefile  | 16 ++++++++++------
 3 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/sys/conf/kern.opts.mk b/sys/conf/kern.opts.mk
index 81b117492916..f26a44eb61f5 100644
--- a/sys/conf/kern.opts.mk
+++ b/sys/conf/kern.opts.mk
@@ -47,6 +47,7 @@ __DEFAULT_YES_OPTIONS = \
     SOURCELESS_UCODE \
     SPLIT_KERNEL_DEBUG \
     TESTS \
+    USB \
     USB_GADGET_EXAMPLES \
     ZFS
 
@@ -207,6 +208,10 @@ MK_KERNEL_SYMBOLS:=        no
 MK_DTRACE:=    no
 .endif
 
+.if ${MK_USB} == "no"
+MK_USB_GADGET_EXAMPLES:= no
+.endif
+
 # Some modules only compile successfully if option FDT is set, due to #ifdef 
FDT
 # wrapped around declarations.  Module makefiles can optionally compile such
 # things using .if !empty(OPT_FDT)
diff --git a/sys/conf/kmod.mk b/sys/conf/kmod.mk
index 17358428a023..4f1509592483 100644
--- a/sys/conf/kmod.mk
+++ b/sys/conf/kmod.mk
@@ -103,10 +103,14 @@ LINUXKPI_GENSRCS+= \
        pci_iov_if.h \
        pcib_if.h \
        vnode_if.h \
-       usb_if.h \
-       opt_usb.h \
        opt_stack.h
 
+.if ${MK_USB} != "no"
+LINUXKPI_GENSRCS+= \
+       usb_if.h \
+       opt_usb.h
+.endif
+
 LINUXKPI_INCLUDES+= \
        -I${SYSDIR}/compat/linuxkpi/common/include \
        -I${SYSDIR}/compat/linuxkpi/dummy/include \
diff --git a/sys/modules/Makefile b/sys/modules/Makefile
index 49a15588e9a5..a4100c31ef26 100644
--- a/sys/modules/Makefile
+++ b/sys/modules/Makefile
@@ -356,7 +356,7 @@ SUBDIR=     \
        ${_rtw89} \
        rtwn \
        rtwn_pci \
-       rtwn_usb \
+       ${_rtwn_usb} \
        ${_rtwnfw} \
        ${_s3} \
        ${_safe} \
@@ -411,7 +411,7 @@ SUBDIR=     \
        ${_ufshci} \
        uinput \
        unionfs \
-       usb \
+       ${_usb} \
        ${_vesa} \
        ${_vf_i2c} \
        virtio \
@@ -710,6 +710,14 @@ SUBDIR+=   ktest
 SUBDIR+=       tests
 .endif
 
+.if ${MK_USB} != "no" || defined(ALL_MODULES)
+_rtwn_usb=     rtwn_usb
+_usb=          usb
+. if ${MACHINE_CPUARCH} == "amd64"
+_thunderbolt=  thunderbolt
+. endif
+.endif
+
 .if ${MK_ZFS} != "no" || defined(ALL_MODULES)
 SUBDIR+=       zfs
 .endif
@@ -938,10 +946,6 @@ _bcm283x_pwm=      bcm283x_pwm
 _neta=         neta
 .endif
 
-.if ${MACHINE_CPUARCH} == "amd64"
-_thunderbolt=  thunderbolt
-.endif
-
 .if !(${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 110000)
 # LLVM 10 crashes when building if_malo_pci.c, fixed in LLVM11:
 # https://bugs.llvm.org/show_bug.cgi?id=44351

Reply via email to