]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
PCI: Add CONFIG_MMU dependency
authorArnd Bergmann <arnd@arndb.de>
Wed, 23 Apr 2025 20:16:32 +0000 (22:16 +0200)
committerBjorn Helgaas <bhelgaas@google.com>
Wed, 23 Apr 2025 20:40:30 +0000 (15:40 -0500)
It turns out that there are no platforms that have PCI but don't have an
MMU, so adding a Kconfig dependency on CONFIG_PCI simplifies build testing
kernels for those platforms a lot, and avoids a lot of inadvertent build
regressions.

Add a dependency for CONFIG_PCI and remove all the ones for PCI specific
device drivers that are currently marked not having it.

There are a few platforms that have an optional MMU, but they usually
cannot have PCI at all. The one exception is Coldfire MCF54xx, but this is
mainly for historic reasons, and anyone using those chips should really use
the MMU these days.

Link: https://lore.kernel.org/lkml/a41f1b20-a76c-43d8-8c36-f12744327a54@app.fastmail.com/
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> # SCSI
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Link: https://patch.msgid.link/20250423202215.3315550-1-arnd@kernel.org
21 files changed:
drivers/accel/qaic/Kconfig
drivers/firewire/Kconfig
drivers/gpu/drm/Kconfig
drivers/gpu/drm/amd/amdgpu/Kconfig
drivers/gpu/drm/ast/Kconfig
drivers/gpu/drm/gma500/Kconfig
drivers/gpu/drm/hisilicon/hibmc/Kconfig
drivers/gpu/drm/loongson/Kconfig
drivers/gpu/drm/mgag200/Kconfig
drivers/gpu/drm/nouveau/Kconfig
drivers/gpu/drm/qxl/Kconfig
drivers/gpu/drm/radeon/Kconfig
drivers/gpu/drm/tiny/Kconfig
drivers/gpu/drm/vmwgfx/Kconfig
drivers/gpu/drm/xe/Kconfig
drivers/net/ethernet/broadcom/Kconfig
drivers/pci/Kconfig
drivers/pci/pci.c
drivers/scsi/bnx2fc/Kconfig
drivers/scsi/bnx2i/Kconfig
drivers/vfio/pci/Kconfig

index a9f866230058179a5b1c39309d6a1a3a875916b3..5e405a19c1573a3fa11f1f32e1a9e5b9f34e533c 100644 (file)
@@ -8,7 +8,6 @@ config DRM_ACCEL_QAIC
        depends on DRM_ACCEL
        depends on PCI && HAS_IOMEM
        depends on MHI_BUS
-       depends on MMU
        select CRC32
        help
          Enables driver for Qualcomm's Cloud AI accelerator PCIe cards that are
index 905c82e26ce74f381c8f8e846fe9f695802bdeff..a5f5e250223a1850143ff770336f759112d22bca 100644 (file)
@@ -83,7 +83,7 @@ config FIREWIRE_KUNIT_SELF_ID_SEQUENCE_HELPER_TEST
 
 config FIREWIRE_OHCI
        tristate "OHCI-1394 controllers"
-       depends on PCI && FIREWIRE && MMU
+       depends on PCI && FIREWIRE
        help
          Enable this driver if you have a FireWire controller based
          on the OHCI specification.  For all practical purposes, this
index 2cba2b6ebe1c1193090daa25c9303cf693d18d82..6e95d204597e7598248e0dbafde0613735b9dfec 100644 (file)
@@ -462,7 +462,7 @@ source "drivers/gpu/drm/imagination/Kconfig"
 
 config DRM_HYPERV
        tristate "DRM Support for Hyper-V synthetic video device"
-       depends on DRM && PCI && MMU && HYPERV
+       depends on DRM && PCI && HYPERV
        select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
        select DRM_GEM_SHMEM_HELPER
index 1a11cab741aca4483673f8e7794b4d3022d269e6..058e3b3ad5203eb6115642d6dc2ce506f4948b66 100644 (file)
@@ -2,7 +2,7 @@
 
 config DRM_AMDGPU
        tristate "AMD GPU"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        depends on !UML
        select FW_LOADER
        select DRM_CLIENT
@@ -68,7 +68,6 @@ config DRM_AMDGPU_CIK
 config DRM_AMDGPU_USERPTR
        bool "Always enable userptr write support"
        depends on DRM_AMDGPU
-       depends on MMU
        select HMM_MIRROR
        select MMU_NOTIFIER
        help
index da0663542e8a45caca565f0af2f93df82678cc91..242fbccdf8443234f40d791d473b636364ae4d43 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_AST
        tristate "AST server chips"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        select DRM_CLIENT_SELECTION
        select DRM_GEM_SHMEM_HELPER
        select DRM_KMS_HELPER
index aa2ea128aa2fc74ef72cadf6150bd3c1c34b6c21..a2acaa699dd58a0741c08e1f4d6ce73789c35558 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_GMA500
        tristate "Intel GMA500/600/3600/3650 KMS Framebuffer"
-       depends on DRM && PCI && X86 && MMU && HAS_IOPORT
+       depends on DRM && PCI && X86 && HAS_IOPORT
        select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
        select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION
index 98d77d74999d5a32ea5fb59ab963606652b97256..d1f3f5793f340714aee8d2ac5a1dd9d470694597 100644 (file)
@@ -2,7 +2,6 @@
 config DRM_HISI_HIBMC
        tristate "DRM Support for Hisilicon Hibmc"
        depends on DRM && PCI
-       depends on MMU
        select DRM_CLIENT_SELECTION
        select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_HELPER
index 552edfec7afb785d9e6164c7900cd563dc8d7bfa..d739d51cf54c07bad4bba3dc94257d7e7480d818 100644 (file)
@@ -2,7 +2,7 @@
 
 config DRM_LOONGSON
        tristate "DRM support for Loongson Graphics"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        depends on LOONGARCH || MIPS || COMPILE_TEST
        select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
index 412dcbea0e2daff1670b54ac406788187b1e1ace..a962ae564a75273b05468813fdecaffad8d7621a 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_MGAG200
        tristate "Matrox G200"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        select DRM_CLIENT_SELECTION
        select DRM_GEM_SHMEM_HELPER
        select DRM_KMS_HELPER
index 7b3e979c51ecfbee6db2563b4375bc71be53d849..d1587639ebb04f904d57bcc09933d1e3662594d3 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_NOUVEAU
        tristate "Nouveau (NVIDIA) cards"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        select IOMMU_API
        select FW_LOADER
        select FW_CACHE if PM_SLEEP
@@ -94,7 +94,6 @@ config DRM_NOUVEAU_SVM
        bool "(EXPERIMENTAL) Enable SVM (Shared Virtual Memory) support"
        depends on DEVICE_PRIVATE
        depends on DRM_NOUVEAU
-       depends on MMU
        depends on STAGING
        select HMM_MIRROR
        select MMU_NOTIFIER
index 69427eb8bed203f8efce6361bd1441a06ab40d99..d8f24bcae34b41cfad60b36ae0bdb802d8da1cd2 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_QXL
        tristate "QXL virtual GPU"
-       depends on DRM && PCI && MMU && HAS_IOPORT
+       depends on DRM && PCI && HAS_IOPORT
        select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
        select DRM_TTM
index f51bace9555d6f5a6aa511caa0ed7fd193a094dd..c479f0c0dd5c476ca18c476b8fdea3e14d068985 100644 (file)
@@ -2,7 +2,7 @@
 
 config DRM_RADEON
        tristate "ATI Radeon"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        depends on AGP || !AGP
        select FW_LOADER
        select DRM_CLIENT_SELECTION
index 54c84c9801c19282bec90f06d7a77951732ffca5..6ca12fe7f57a5087779064cb94136d82a6f83302 100644 (file)
@@ -37,7 +37,7 @@ config DRM_BOCHS
 
 config DRM_CIRRUS_QEMU
        tristate "Cirrus driver for QEMU emulated device"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        select DRM_CLIENT_SELECTION
        select DRM_KMS_HELPER
        select DRM_GEM_SHMEM_HELPER
index 6c3c2922ae8bb85442da2d57464d25efd4376f4b..aab646b91ca9f10784ff64dc9b02152a61714df7 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 config DRM_VMWGFX
        tristate "DRM driver for VMware Virtual GPU"
-       depends on DRM && PCI && MMU
+       depends on DRM && PCI
        depends on (X86 && HYPERVISOR_GUEST) || ARM64
        select DRM_CLIENT_SELECTION
        select DRM_TTM
index 5c2f459a2925a4e0777ce5a1ee964ba6a79de30d..2dec62737ff64ea1a104c0cff7fdf03a6b24606a 100644 (file)
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_XE
        tristate "Intel Xe Graphics"
-       depends on DRM && PCI && MMU && (m || (y && KUNIT=y))
+       depends on DRM && PCI && (m || (y && KUNIT=y))
        select INTERVAL_TREE
        # we need shmfs for the swappable backing store, and in particular
        # the shmem_readpage() which depends upon tmpfs
index eeec8bf17cf4581bfc68eeebcbb62492f3d6f176..aa43984a05cf05a239995527eba6bf40b9b9b642 100644 (file)
@@ -96,7 +96,6 @@ config BNX2
 config CNIC
        tristate "QLogic CNIC support"
        depends on PCI && (IPV6 || IPV6=n)
-       depends on MMU
        select BNX2
        select UIO
        help
index da28295b4aacdb6e2e4b3a3d361c1543d9a5f551..9c0e4aaf4e8cb7fecd9f80ac6289b8d854ce03aa 100644 (file)
@@ -21,6 +21,7 @@ config GENERIC_PCI_IOMAP
 menuconfig PCI
        bool "PCI support"
        depends on HAVE_PCI
+       depends on MMU
        help
          This option enables support for the PCI local bus, including
          support for PCI-X and the foundations for PCI Express support.
index 4d7c9f64ea24ec754a135a2585c99489cfa641a9..60a20a0ac41f99dcc3d446392a051a4e76feebd8 100644 (file)
@@ -4257,7 +4257,7 @@ unsigned long __weak pci_address_to_pio(phys_addr_t address)
 #ifndef pci_remap_iospace
 int pci_remap_iospace(const struct resource *res, phys_addr_t phys_addr)
 {
-#if defined(PCI_IOBASE) && defined(CONFIG_MMU)
+#if defined(PCI_IOBASE)
        unsigned long vaddr = (unsigned long)PCI_IOBASE + res->start;
 
        if (!(res->flags & IORESOURCE_IO))
@@ -4290,7 +4290,7 @@ EXPORT_SYMBOL(pci_remap_iospace);
  */
 void pci_unmap_iospace(struct resource *res)
 {
-#if defined(PCI_IOBASE) && defined(CONFIG_MMU)
+#if defined(PCI_IOBASE)
        unsigned long vaddr = (unsigned long)PCI_IOBASE + res->start;
 
        vunmap_range(vaddr, vaddr + resource_size(res));
index ecdc0f0f4f4e60ab968e47f6da59858409694346..3cf7e08df8093cbefb4e9ac5e1a9c8200fd0c7a2 100644 (file)
@@ -5,7 +5,6 @@ config SCSI_BNX2X_FCOE
        depends on (IPV6 || IPV6=n)
        depends on LIBFC
        depends on LIBFCOE
-       depends on MMU
        select NETDEVICES
        select ETHERNET
        select NET_VENDOR_BROADCOM
index 0cc06c2ce0b86d077bdbdac2166594145de3064f..75ace2302fed652cf026dfd5ed45aad9cb1a5bfe 100644 (file)
@@ -4,7 +4,6 @@ config SCSI_BNX2_ISCSI
        depends on NET
        depends on PCI
        depends on (IPV6 || IPV6=n)
-       depends on MMU
        select SCSI_ISCSI_ATTRS
        select NETDEVICES
        select ETHERNET
index c3bcb6911c538286f7985f9c5e938d587fc04b56..2b0172f54665202cbbb09977f15e217cbe10132a 100644 (file)
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier: GPL-2.0-only
 menu "VFIO support for PCI devices"
-       depends on PCI && MMU
+       depends on PCI
 
 config VFIO_PCI_CORE
        tristate