]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
m68k: coldfire: select PCI_IOMAP for PCI
authorArnd Bergmann <arnd@arndb.de>
Mon, 24 Mar 2025 06:53:47 +0000 (07:53 +0100)
committerArnd Bergmann <arnd@arndb.de>
Mon, 24 Mar 2025 14:41:07 +0000 (15:41 +0100)
After I dropped CONFIG_GENERIC_IOMAP, some PCI drivers started failing
to link when CONFIG_MMU is disabled:

ERROR: modpost: "pci_iounmap" [drivers/video/fbdev/i740fb.ko] undefined!
ERROR: modpost: "pci_iounmap" [drivers/video/fbdev/vt8623fb.ko] undefined!
ERROR: modpost: "pci_iomap_wc" [drivers/video/fbdev/vt8623fb.ko] undefined!
ERROR: modpost: "pci_iomap" [drivers/video/fbdev/vt8623fb.ko] undefined!
ERROR: modpost: "pci_iounmap" [drivers/video/fbdev/s3fb.ko] undefined!
...

It turns out that there were two mistakes in my patch: on !MMU I forgot
to enable CONFIG_GENERIC_PCI_IOMAP, and for Coldfire with MMU enabled,
teh GENERIC_IOMAP was left in place but incorrectly configured.

Fixes: 9d48cc07d0d7 ("m68k/nommu: stop using GENERIC_IOMAP")
Reported-by: Greg Ungerer <gerg@linux-m68k.org>
Acked-by: Greg Ungerer <gerg@linux-m68k.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/m68k/Kconfig

index b50c275fa94d009e98fae4c20f21e0ed26cb863d..eb5bb6d36899fea7843d49b844dad04381acd74c 100644 (file)
@@ -18,12 +18,13 @@ config M68K
        select DMA_DIRECT_REMAP if M68K_NONCOHERENT_DMA && !COLDFIRE
        select GENERIC_ATOMIC64
        select GENERIC_CPU_DEVICES
-       select GENERIC_IOMAP if HAS_IOPORT && MMU
+       select GENERIC_IOMAP if HAS_IOPORT && MMU && !COLDFIRE
        select GENERIC_IRQ_SHOW
        select GENERIC_LIB_ASHLDI3
        select GENERIC_LIB_ASHRDI3
        select GENERIC_LIB_LSHRDI3
        select GENERIC_LIB_MULDI3
+       select GENERIC_PCI_IOMAP if PCI
        select HAS_IOPORT if PCI || ISA || ATARI_ROM_ISA
        select HAVE_ARCH_LIBGCC_H
        select HAVE_ARCH_SECCOMP