Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PCI: Only build PCI syscalls on architectures that want them

The PCI syscalls are built on every architecture except X86, but only
a few have ever hooked them up. Use a new Kconfig symbol to save a
couple of kB on the architectures that have never used the syscalls.
Tested on x86 and ia64 only.

Signed-off-by: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

Matthew Wilcox and committed by
Greg Kroah-Hartman
36e23590 5463d9f0

+26 -11
+3
arch/alpha/Kconfig
··· 327 327 bool 328 328 default y 329 329 330 + config PCI_SYSCALL 331 + def_bool PCI 332 + 330 333 config ALPHA_CORE_AGP 331 334 bool 332 335 depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL
+3
arch/arm/Kconfig
··· 531 531 information about which PCI hardware does work under Linux and which 532 532 doesn't. 533 533 534 + config PCI_SYSCALL 535 + def_bool PCI 536 + 534 537 # Select the host bridge type 535 538 config PCI_HOST_VIA82C505 536 539 bool
+4 -2
arch/ia64/Kconfig
··· 520 520 here unless you are using a simulator without PCI support. 521 521 522 522 config PCI_DOMAINS 523 - bool 524 - default PCI 523 + def_bool PCI 524 + 525 + config PCI_SYSCALL 526 + def_bool PCI 525 527 526 528 source "drivers/pci/pcie/Kconfig" 527 529
+4 -2
arch/powerpc/Kconfig
··· 698 698 infrastructure code to support PCI bus devices. 699 699 700 700 config PCI_DOMAINS 701 - bool 702 - default PCI 701 + def_bool PCI 702 + 703 + config PCI_SYSCALL 704 + def_bool PCI 703 705 704 706 config PCI_QSPAN 705 707 bool "QSpan PCI"
+4 -2
arch/ppc/Kconfig
··· 1237 1237 infrastructure code to support PCI bus devices. 1238 1238 1239 1239 config PCI_DOMAINS 1240 - bool 1241 - default PCI 1240 + def_bool PCI 1241 + 1242 + config PCI_SYSCALL 1243 + def_bool PCI 1242 1244 1243 1245 config MPC83xx_PCI2 1244 1246 bool "Support for 2nd PCI host controller"
+3
arch/sparc/Kconfig
··· 210 210 CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC. 211 211 All of these platforms are extremely obscure, so say N if unsure. 212 212 213 + config PCI_SYSCALL 214 + def_bool PCI 215 + 213 216 source "drivers/pci/Kconfig" 214 217 215 218 endif
+4 -2
arch/sparc64/Kconfig
··· 320 320 doesn't. 321 321 322 322 config PCI_DOMAINS 323 - bool 324 - default PCI 323 + def_bool PCI 324 + 325 + config PCI_SYSCALL 326 + def_bool PCI 325 327 326 328 source "drivers/pci/Kconfig" 327 329
+1 -3
drivers/pci/Makefile
··· 41 41 # Cardbus & CompactPCI use setup-bus 42 42 obj-$(CONFIG_HOTPLUG) += setup-bus.o 43 43 44 - ifndef CONFIG_X86 45 - obj-y += syscall.o 46 - endif 44 + obj-$(CONFIG_PCI_SYSCALL) += syscall.o 47 45 48 46 ifeq ($(CONFIG_PCI_DEBUG),y) 49 47 EXTRA_CFLAGS += -DDEBUG