All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: linux-arm-kernel

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: linux-snps-arc

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: linux-arm-kernel

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 21:45 ` Palmer Dabbelt
                     ` (4 preceding siblings ...)
  (?)
@ 2017-06-23 22:01   ` James Hogan
  -1 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: linux-arm-kernel

[-- Attachment #1: Type: text/plain, Size: 1271 bytes --]

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:01   ` James Hogan
  0 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

[-- Attachment #1: Type: text/plain, Size: 1271 bytes --]

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 21:45 ` Palmer Dabbelt
                   ` (4 preceding siblings ...)
  (?)
@ 2017-06-23 22:01 ` James Hogan
  -1 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

[-- Attachment #1: Type: text/plain, Size: 1271 bytes --]

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:01   ` James Hogan
  0 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: linux-mips, dalias, linux-sh, catalin.marinas, will.deacon,
	sparclinux, gxt, ysato, linux, hch, geert, linux-pci, mattst88,
	linux-snps-arc, cmetcalf, linux-m68k, ink, viro, bhelgaas,
	linux-arm-kernel, rth, vgupta, linux-kernel, ralf, linux-alpha,
	akpm, davem


[-- Attachment #1.1: Type: text/plain, Size: 1271 bytes --]

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:01   ` James Hogan
  0 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

[-- Attachment #1: Type: text/plain, Size: 1271 bytes --]

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:01   ` James Hogan
  0 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

[-- Attachment #1: Type: text/plain, Size: 1271 bytes --]

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:01   ` James Hogan
  0 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: linux-snps-arc

On Fri, Jun 23, 2017@02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan at imgtec.com>

Cheers
James
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-snps-arc/attachments/20170623/def3908f/attachment.sig>

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:01   ` James Hogan
  0 siblings, 0 replies; 117+ messages in thread
From: James Hogan @ 2017-06-23 22:01 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.

This comment seems to suggest PCI_GENERIC_SETUP should be added a few
lines up to preserve the alphabetical sorting.

> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP

Here too.

> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP

and here

Otherwise
Reviewed-by: James Hogan <james.hogan@imgtec.com>

Cheers
James
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170623/def3908f/attachment.sig>

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:01   ` James Hogan
                       ` (3 preceding siblings ...)
  (?)
@ 2017-06-23 22:08     ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:01   ` James Hogan
                     ` (6 preceding siblings ...)
  (?)
@ 2017-06-23 22:08   ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: linux-snps-arc

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017@02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan at imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan at imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:01   ` James Hogan
                     ` (7 preceding siblings ...)
  (?)
@ 2017-06-23 22:08   ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, 23 Jun 2017 15:01:04 PDT (-0700), james.hogan@imgtec.com wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>      select PERF_USE_VMALLOC
>>      select RTC_LIB
>>      select SYS_SUPPORTS_APM_EMULATION
>> +    select PCI_GENERIC_SETUP
>>      # Above selects are sorted alphabetically; please add new ones
>>      # according to that.  Thanks.
>
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>      select SPARSE_IRQ
>>      select SYSCTL_EXCEPTION_TRACE
>>      select THREAD_INFO_IN_TASK
>> +    select PCI_GENERIC_SETUP
>
> Here too.
>
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>      select USER_STACKTRACE_SUPPORT
>>      select USE_PMC if PERF_EVENTS
>>      select VIRT_TO_BUS
>> +    select PCI_GENERIC_SETUP
>
> and here
>
> Otherwise
> Reviewed-by: James Hogan <james.hogan@imgtec.com>

Whoops -- I guess I was just on autopilot after seeing the first one not be
alphabetized.  A fixed patch is in a threaded message.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08     ` Palmer Dabbelt
                         ` (3 preceding siblings ...)
  (?)
@ 2017-06-23 22:08       ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: linux-arm-kernel

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08       ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08       ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08       ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08       ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: linux-snps-arc

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>
Reviewed-by: James Hogan <james.hogan at imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 22:08       ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: linux-arm-kernel

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08     ` Palmer Dabbelt
                       ` (7 preceding siblings ...)
  (?)
@ 2017-06-23 22:08     ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08     ` Palmer Dabbelt
                       ` (4 preceding siblings ...)
  (?)
@ 2017-06-23 22:08     ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08     ` Palmer Dabbelt
                       ` (8 preceding siblings ...)
  (?)
@ 2017-06-23 22:08     ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0



^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08     ` Palmer Dabbelt
                       ` (6 preceding siblings ...)
  (?)
@ 2017-06-23 22:08     ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 22:08 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 21:45 ` Palmer Dabbelt
                     ` (3 preceding siblings ...)
  (?)
@ 2017-06-24  9:13   ` Russell King - ARM Linux
  -1 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:13   ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, catalin.marinas, will.deacon, geert,
	ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro, akpm,
	linux-alpha, linux-kernel, linux-snps-arc, linux-arm-kernel,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci, hch

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 21:45 ` Palmer Dabbelt
                   ` (7 preceding siblings ...)
  (?)
@ 2017-06-24  9:13 ` Russell King - ARM Linux
  -1 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, catalin.marinas, will.deacon, geert,
	ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro, akpm,
	linux-alpha, linux-kernel, linux-snps-arc, linux-arm-kernel,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci, hch

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:13   ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: linux-mips, dalias, linux-sh, catalin.marinas, will.deacon,
	sparclinux, gxt, ysato, hch, geert, linux-pci, mattst88,
	linux-snps-arc, cmetcalf, linux-m68k, ink, viro, bhelgaas,
	linux-arm-kernel, rth, vgupta, linux-kernel, ralf, linux-alpha,
	akpm, davem

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:13   ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, catalin.marinas, will.deacon, geert,
	ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro, akpm,
	linux-alpha, linux-kernel, linux-snps-arc, linux-arm-kernel,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci, hch

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:13   ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: linux-snps-arc

On Fri, Jun 23, 2017@02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel at armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:13   ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:13 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Looks fine from an ARM point of view, thanks.

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n

	bool

would be sufficient here - the default is 'n' for all options.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:01   ` James Hogan
                       ` (3 preceding siblings ...)
  (?)
@ 2017-06-24  9:14     ` Russell King - ARM Linux
  -1 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jun 23, 2017 at 11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:14     ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: James Hogan
  Cc: Palmer Dabbelt, rth, ink, mattst88, vgupta, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, Jun 23, 2017 at 11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:01   ` James Hogan
                     ` (9 preceding siblings ...)
  (?)
@ 2017-06-24  9:14   ` Russell King - ARM Linux
  -1 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: James Hogan
  Cc: Palmer Dabbelt, rth, ink, mattst88, vgupta, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, Jun 23, 2017 at 11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:14     ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: James Hogan
  Cc: linux-mips, dalias, linux-sh, catalin.marinas, will.deacon,
	sparclinux, gxt, ysato, hch, geert, linux-pci, mattst88,
	linux-snps-arc, cmetcalf, linux-m68k, ink, viro, bhelgaas,
	linux-arm-kernel, rth, vgupta, linux-kernel, ralf,
	Palmer Dabbelt, linux-alpha, akpm, davem

On Fri, Jun 23, 2017 at 11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:14     ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: James Hogan
  Cc: Palmer Dabbelt, rth, ink, mattst88, vgupta, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On Fri, Jun 23, 2017 at 11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:14     ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: linux-snps-arc

On Fri, Jun 23, 2017@11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017@02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24  9:14     ` Russell King - ARM Linux
  0 siblings, 0 replies; 117+ messages in thread
From: Russell King - ARM Linux @ 2017-06-24  9:14 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jun 23, 2017 at 11:01:04PM +0100, James Hogan wrote:
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> > diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > index 4c1a35f15838..86872246951c 100644
> > --- a/arch/arm/Kconfig
> > +++ b/arch/arm/Kconfig
> > @@ -96,6 +96,7 @@ config ARM
> >  	select PERF_USE_VMALLOC
> >  	select RTC_LIB
> >  	select SYS_SUPPORTS_APM_EMULATION
> > +	select PCI_GENERIC_SETUP
> >  	# Above selects are sorted alphabetically; please add new ones
> >  	# according to that.  Thanks.
> 
> This comment seems to suggest PCI_GENERIC_SETUP should be added a few
> lines up to preserve the alphabetical sorting.

Indeed it should.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08       ` Palmer Dabbelt
                           ` (2 preceding siblings ...)
  (?)
@ 2017-06-24 15:08         ` Richard Henderson
  -1 siblings, 0 replies; 117+ messages in thread
From: Richard Henderson @ 2017-06-24 15:08 UTC (permalink / raw)
  To: linux-arm-kernel

On 06/23/2017 03:08 PM, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt<palmer@dabbelt.com>
> Reviewed-by: James Hogan<james.hogan@imgtec.com>
> ---
>   arch/alpha/Kconfig     |  1 +

Acked-by: Richard Henderson <rth@twiddle.net>


r~

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24 15:08         ` Richard Henderson
  0 siblings, 0 replies; 117+ messages in thread
From: Richard Henderson @ 2017-06-24 15:08 UTC (permalink / raw)
  To: Palmer Dabbelt, ink, mattst88, vgupta, linux, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On 06/23/2017 03:08 PM, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt<palmer@dabbelt.com>
> Reviewed-by: James Hogan<james.hogan@imgtec.com>
> ---
>   arch/alpha/Kconfig     |  1 +

Acked-by: Richard Henderson <rth@twiddle.net>


r~

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24 15:08         ` Richard Henderson
  0 siblings, 0 replies; 117+ messages in thread
From: Richard Henderson @ 2017-06-24 15:08 UTC (permalink / raw)
  To: Palmer Dabbelt, ink, mattst88, vgupta, linux, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

On 06/23/2017 03:08 PM, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt<palmer@dabbelt.com>
> Reviewed-by: James Hogan<james.hogan@imgtec.com>
> ---
>   arch/alpha/Kconfig     |  1 +

Acked-by: Richard Henderson <rth@twiddle.net>


r~

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24 15:08         ` Richard Henderson
  0 siblings, 0 replies; 117+ messages in thread
From: Richard Henderson @ 2017-06-24 15:08 UTC (permalink / raw)
  To: linux-snps-arc

On 06/23/2017 03:08 PM, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt<palmer at dabbelt.com>
> Reviewed-by: James Hogan<james.hogan at imgtec.com>
> ---
>   arch/alpha/Kconfig     |  1 +

Acked-by: Richard Henderson <rth at twiddle.net>


r~

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-24 15:08         ` Richard Henderson
  0 siblings, 0 replies; 117+ messages in thread
From: Richard Henderson @ 2017-06-24 15:08 UTC (permalink / raw)
  To: linux-arm-kernel

On 06/23/2017 03:08 PM, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt<palmer@dabbelt.com>
> Reviewed-by: James Hogan<james.hogan@imgtec.com>
> ---
>   arch/alpha/Kconfig     |  1 +

Acked-by: Richard Henderson <rth@twiddle.net>


r~

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08       ` Palmer Dabbelt
                             ` (5 preceding siblings ...)
  (?)
@ 2017-06-26  5:39           ` kbuild test robot
  -1 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: linux-sh

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: kbuild-all, rth, ink, mattst88, vgupta, linux, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, Palmer Dabbelt

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 22:08       ` Palmer Dabbelt
                         ` (5 preceding siblings ...)
  (?)
@ 2017-06-26  5:39       ` kbuild test robot
  -1 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  Cc: kbuild-all, rth, ink, mattst88, vgupta, linux, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, Palmer Dabbelt

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: linux-mips, dalias, linux-sh, catalin.marinas, will.deacon,
	sparclinux, gxt, ysato, linux, hch, geert, linux-pci, mattst88,
	linux-snps-arc, cmetcalf, linux-m68k, ink, viro, bhelgaas,
	linux-arm-kernel, rth, vgupta, linux-kernel, ralf,
	Palmer Dabbelt, kbuild-all, linux-alpha, akpm, davem

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

[-- Attachment #3: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: kbuild-all, rth, ink, mattst88, vgupta, linux, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, Palmer Dabbelt

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: kbuild-all, rth, ink, mattst88, vgupta, linux, catalin.marinas,
	will.deacon, geert, ralf, ysato, dalias, davem, cmetcalf, gxt,
	bhelgaas, viro, akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: sparclinux

[-- Attachment #1: Type: text/plain, Size: 961 bytes --]

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 4487 bytes --]

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: linux-snps-arc

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 4487 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-snps-arc/attachments/20170626/d0028190/attachment.gz>

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  5:39           ` kbuild test robot
  0 siblings, 0 replies; 117+ messages in thread
From: kbuild test robot @ 2017-06-26  5:39 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Palmer,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc6]
[cannot apply to next-20170623]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
config: m68k-allnoconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=m68k 

All warnings (new ones prefixed by >>):

warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 4487 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20170626/d0028190/attachment.gz>

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26  5:39           ` kbuild test robot
                               ` (5 preceding siblings ...)
  (?)
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  -1 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Palmer Dabbelt, kbuild-all, Richard Henderson, Ivan Kokshaysky,
	Matt Turner, Vineet Gupta, Russell King, Catalin Marinas,
	Will Deacon, Ralf Baechle, Yoshinori Sato, Rich Felker,
	David S. Miller, cmetcalf, Guan Xuetao, Bjorn Helgaas, Al Viro,
	Andrew Morton, alpha, linux-kernel, arcml, linux-arm-kernel,
	linux-m68k, Linux MIPS Mailing List, Linux-sh list, sparclinux,
	linux-pci, Christoph Hellwig

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26  5:39           ` kbuild test robot
                             ` (7 preceding siblings ...)
  (?)
@ 2017-06-26  7:26           ` Geert Uytterhoeven
  -1 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Palmer Dabbelt, kbuild-all, Richard Henderson, Ivan Kokshaysky,
	Matt Turner, Vineet Gupta, Russell King, Catalin Marinas,
	Will Deacon, Ralf Baechle, Yoshinori Sato, Rich Felker,
	David S. Miller, cmetcalf, Guan Xuetao, Bjorn Helgaas, Al Viro,
	Andrew Morton, alpha, linux-kernel@vger.kernel.org

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Linux MIPS Mailing List, Rich Felker, Linux-sh list,
	Catalin Marinas, Will Deacon, sparclinux, Guan Xuetao,
	Yoshinori Sato, Russell King, Christoph Hellwig, linux-pci,
	Matt Turner, arcml, cmetcalf, linux-m68k, Ivan Kokshaysky,
	Al Viro, Bjorn Helgaas, linux-arm-kernel, Richard Henderson,
	Vineet Gupta, linux-kernel, Ralf Baechle, Palmer Dabbelt,
	kbuild-all, alpha, Andrew Morton, David S. Miller

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Palmer Dabbelt, kbuild-all, Richard Henderson, Ivan Kokshaysky,
	Matt Turner, Vineet Gupta, Russell King, Catalin Marinas,
	Will Deacon, Ralf Baechle, Yoshinori Sato, Rich Felker,
	David S. Miller, cmetcalf, Guan Xuetao, Bjorn Helgaas, Al Viro,
	Andrew Morton, alpha, linux-kernel, arcml, linux-arm-kernel,
	linux-m68k, Linux MIPS Mailing List, Linux-sh list, sparclinux,
	linux-pci, Christoph Hellwig

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Palmer Dabbelt, kbuild-all, Richard Henderson, Ivan Kokshaysky,
	Matt Turner, Vineet Gupta, Russell King, Catalin Marinas,
	Will Deacon, Ralf Baechle, Yoshinori Sato, Rich Felker,
	David S. Miller, cmetcalf, Guan Xuetao, Bjorn Helgaas, Al Viro,
	Andrew Morton, alpha, linux-kernel, arcml, linux-arm-kernel,
	linux-m68k, Linux MIPS Mailing List, Linux-sh list, sparclinux,
	linux-pci, Christoph Hellwig

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: linux-snps-arc

On Mon, Jun 26, 2017@7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26  7:26             ` Geert Uytterhoeven
  0 siblings, 0 replies; 117+ messages in thread
From: Geert Uytterhoeven @ 2017-06-26  7:26 UTC (permalink / raw)
  To: kbuild test robot
  Cc: Palmer Dabbelt, kbuild-all, Richard Henderson, Ivan Kokshaysky,
	Matt Turner, Vineet Gupta, Russell King, Catalin Marinas,
	Will Deacon, Ralf Baechle, Yoshinori Sato, Rich Felker,
	David S. Miller, cmetcalf, Guan Xuetao, Bjorn Helgaas, Al Viro,
	Andrew Morton, alpha, linux-kernel@vger.kernel.org

On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
> [auto build test WARNING on linus/master]
> [also build test WARNING on v4.12-rc6]
> [cannot apply to next-20170623]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
> config: m68k-allnoconfig (attached as .config)
> compiler: m68k-linux-gcc (GCC) 4.9.0
> reproduce:
>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=m68k
>
> All warnings (new ones prefixed by >>):
>
> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)

I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

Gr{oetje,eeting}s,

                        Geert

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26  7:26             ` Geert Uytterhoeven
                                 ` (2 preceding siblings ...)
  (?)
@ 2017-06-26 20:27               ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27               ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26  7:26             ` Geert Uytterhoeven
                               ` (8 preceding siblings ...)
  (?)
@ 2017-06-26 20:27             ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27               ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27               ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27               ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: linux-snps-arc

>On Mon, Jun 26, 2017@7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26  7:26             ` Geert Uytterhoeven
                               ` (9 preceding siblings ...)
  (?)
@ 2017-06-26 20:27             ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26  7:26             ` Geert Uytterhoeven
                               ` (6 preceding siblings ...)
  (?)
@ 2017-06-26 20:27             ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

>On Mon, Jun 26, 2017 at 7:39 AM, kbuild test robot <lkp@intel.com> wrote:
>> [auto build test WARNING on linus/master]
>> [also build test WARNING on v4.12-rc6]
>> [cannot apply to next-20170623]
>> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>>
>> url:    https://github.com/0day-ci/linux/commits/Palmer-Dabbelt/pci-Add-and-use-PCI_GENERIC_SETUP-Kconfig-entry/20170626-043558
>> config: m68k-allnoconfig (attached as .config)
>> compiler: m68k-linux-gcc (GCC) 4.9.0
>> reproduce:
>>         wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=m68k
>>
>> All warnings (new ones prefixed by >>):
>>
>> warning: (M68K) selects PCI_GENERIC_SETUP which has unmet direct dependencies (MMU)
>
>I can't seem to find this dependency of PCI_GENERIC_SETUP on MMU?

It looks like M68K only includes the PCI Kconfig entry when MMU is enabled.  I
moved the select around a bit and it builds the config that was failing for me.

The updated patch is threaded.


^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27               ` Palmer Dabbelt
                                   ` (2 preceding siblings ...)
  (?)
@ 2017-06-26 20:27                 ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth; +Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27                 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27               ` Palmer Dabbelt
                                 ` (3 preceding siblings ...)
  (?)
@ 2017-06-26 20:27               ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27                 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27                 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-26 20:27                 ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: linux-snps-arc

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>
Reviewed-by: James Hogan <james.hogan at imgtec.com>
Acked-by: Russell King <rmk+kernel at armlinux.org.uk>
Acked-by: Richard Henderson <rth at twiddle.net>
Acked-by: Vineet Gupta <vgupta at synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27               ` Palmer Dabbelt
                                 ` (7 preceding siblings ...)
  (?)
@ 2017-06-26 20:27               ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27               ` Palmer Dabbelt
                                 ` (6 preceding siblings ...)
  (?)
@ 2017-06-26 20:27               ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27               ` Palmer Dabbelt
                                 ` (5 preceding siblings ...)
  (?)
@ 2017-06-26 20:27               ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-26 20:27 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
Acked-by: Richard Henderson <rth@twiddle.net>
Acked-by: Vineet Gupta <vgupta@synopsys.com>   [arch/arc]
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig.bus  |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..4f910c4c37b2 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -93,6 +93,7 @@ config ARM
 	select OF_RESERVED_MEM if OF
 	select OLD_SIGACTION
 	select OLD_SIGSUSPEND3
+	select PCI_GENERIC_SETUP
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..02d4676cb00e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -110,6 +110,7 @@ config ARM64
 	select OF_EARLY_FLATTREE
 	select OF_RESERVED_MEM
 	select PCI_ECAM if ACPI
+	select PCI_GENERIC_SETUP
 	select POWER_RESET
 	select POWER_SUPPLY
 	select SPARSE_IRQ
diff --git a/arch/m68k/Kconfig.bus b/arch/m68k/Kconfig.bus
index 675b087198f6..bcab783f0487 100644
--- a/arch/m68k/Kconfig.bus
+++ b/arch/m68k/Kconfig.bus
@@ -61,6 +61,7 @@ config GENERIC_ISA_DMA
 config PCI
 	bool "PCI support"
 	depends on M54xx
+	select PCI_GENERIC_SETUP
 	help
 	  Enable the PCI bus. Support for the PCI bus hardware built into the
 	  ColdFire 547x and 548x processors.
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..451000db8c62 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -28,6 +28,7 @@ config TILE
 	select HAVE_PERF_EVENTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select MODULES_USE_ELF_RELA
+	select PCI_GENERIC_SETUP
 	select SYSCTL_EXCEPTION_TRACE
 	select SYS_HYPERVISOR
 	select USER_STACKTRACE_SUPPORT
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..72a1c4c65926 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	bool
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0



^ permalink raw reply related	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
  (?)
  (?)
@ 2017-06-27 10:16                   ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:16 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: rth, ink

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 10:16                   ` Ralf Baechle
  0 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:16 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: rth, ink

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (5 preceding siblings ...)
  (?)
@ 2017-06-27 10:16                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:16 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: rth, ink

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (4 preceding siblings ...)
  (?)
@ 2017-06-27 10:16                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:16 UTC (permalink / raw)
  To: Palmer Dabbelt; +Cc: rth, ink

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (7 preceding siblings ...)
  (?)
@ 2017-06-27 10:18                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (11 preceding siblings ...)
  (?)
@ 2017-06-27 10:18                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (6 preceding siblings ...)
  (?)
@ 2017-06-27 10:18                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (9 preceding siblings ...)
  (?)
@ 2017-06-27 10:18                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: linux-mips, linux-m68k, dalias, linux-sh, catalin.marinas,
	will.deacon, sparclinux, gxt, ysato, linux, geert, linux-pci,
	mattst88, linux-snps-arc, james.hogan, cmetcalf, ink, viro,
	bhelgaas, rth, vgupta, linux-kernel, linux-alpha, davem

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (10 preceding siblings ...)
  (?)
@ 2017-06-27 10:18                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-26 20:27                 ` Palmer Dabbelt
                                   ` (8 preceding siblings ...)
  (?)
@ 2017-06-27 10:18                 ` Ralf Baechle
  -1 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 10:16                   ` Ralf Baechle
  0 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	james.hogan, linux-alpha, linux-kernel, linux-snps-arc,
	linux-m68k, linux-mips, linux-sh, sparclinux, linux-pci

On Mon, Jun 26, 2017 at 01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 10:16                   ` Ralf Baechle
  0 siblings, 0 replies; 117+ messages in thread
From: Ralf Baechle @ 2017-06-27 10:18 UTC (permalink / raw)
  To: linux-snps-arc

On Mon, Jun 26, 2017@01:27:56PM -0700, Palmer Dabbelt wrote:

Acked-by: Ralf Baechle <ralf at linux-mips.org>

Thanks,

  Ralf

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 21:45 ` Palmer Dabbelt
                     ` (3 preceding siblings ...)
  (?)
@ 2017-06-27 23:37   ` Bjorn Helgaas
  -1 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: linux-arm-kernel

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id[64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 23:37   ` Bjorn Helgaas
  0 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, Lorenzo Pieralisi

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-23 21:45 ` Palmer Dabbelt
                   ` (9 preceding siblings ...)
  (?)
@ 2017-06-27 23:37 ` Bjorn Helgaas
  -1 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, Lorenzo Pieralisi

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 23:37   ` Bjorn Helgaas
  0 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: linux-mips, dalias, linux-sh, catalin.marinas, will.deacon,
	sparclinux, gxt, Lorenzo Pieralisi, ysato, linux, hch, geert,
	linux-pci, mattst88, linux-snps-arc, cmetcalf, linux-m68k, ink,
	viro, bhelgaas, linux-arm-kernel, rth, vgupta, linux-kernel,
	ralf, linux-alpha, akpm, davem

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 23:37   ` Bjorn Helgaas
  0 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: Palmer Dabbelt
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, Lorenzo Pieralisi

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 23:37   ` Bjorn Helgaas
  0 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: linux-snps-arc

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017@02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-27 23:37   ` Bjorn Helgaas
  0 siblings, 0 replies; 117+ messages in thread
From: Bjorn Helgaas @ 2017-06-27 23:37 UTC (permalink / raw)
  To: linux-arm-kernel

[+cc Lorenzo]

Hi Palmer,

On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
> We wanted to add RISC-V to the list of architectures that used the
> generic PCI setup-irq.o inside the Makefile and it was suggested that
> instead we define a Kconfig entry and use that.
> 
> I've done very minimal testing on this: I just checked to see that
> an aarch64 defconfig still build setup-irq.o with the patch applied.
> The intention is that this patch doesn't change the behavior of any
> build.
> 
> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>

Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
overlaps with this quite a bit, and includes this patch:

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4

which makes it so we build setup-irq.o on *all* arches.  Can you check
out the pci/enumeration branch and see whether it accomplishes what
you need?

https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

> ---
>  arch/alpha/Kconfig     |  1 +
>  arch/arc/Kconfig       |  1 +
>  arch/arm/Kconfig       |  1 +
>  arch/arm64/Kconfig     |  1 +
>  arch/m68k/Kconfig      |  1 +
>  arch/mips/Kconfig      |  1 +
>  arch/sh/Kconfig        |  1 +
>  arch/sparc/Kconfig     |  1 +
>  arch/tile/Kconfig      |  1 +
>  arch/unicore32/Kconfig |  1 +
>  drivers/pci/Kconfig    |  3 +++
>  drivers/pci/Makefile   | 11 +----------
>  12 files changed, 14 insertions(+), 10 deletions(-)
> 
> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
> index 0e49d39ea74a..30f4e711f681 100644
> --- a/arch/alpha/Kconfig
> +++ b/arch/alpha/Kconfig
> @@ -26,6 +26,7 @@ config ALPHA
>  	select ODD_RT_SIGACTION
>  	select OLD_SIGSUSPEND
>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The Alpha is a 64-bit general-purpose processor designed and
>  	  marketed by the Digital Equipment Corporation of blessed memory,
> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
> index a5459698f0ee..dd1f64858118 100644
> --- a/arch/arc/Kconfig
> +++ b/arch/arc/Kconfig
> @@ -44,6 +44,7 @@ config ARC
>  	select HAVE_GENERIC_DMA_COHERENT
>  	select HAVE_KERNEL_GZIP
>  	select HAVE_KERNEL_LZMA
> +	select PCI_GENERIC_SETUP
>  
>  config MIGHT_HAVE_PCI
>  	bool
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 4c1a35f15838..86872246951c 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -96,6 +96,7 @@ config ARM
>  	select PERF_USE_VMALLOC
>  	select RTC_LIB
>  	select SYS_SUPPORTS_APM_EMULATION
> +	select PCI_GENERIC_SETUP
>  	# Above selects are sorted alphabetically; please add new ones
>  	# according to that.  Thanks.
>  	help
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index b2024db225a9..6c684d8c8816 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -115,6 +115,7 @@ config ARM64
>  	select SPARSE_IRQ
>  	select SYSCTL_EXCEPTION_TRACE
>  	select THREAD_INFO_IN_TASK
> +	select PCI_GENERIC_SETUP
>  	help
>  	  ARM 64-bit (AArch64) Linux support.
>  
> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
> index d140206d5d29..c16214344f1c 100644
> --- a/arch/m68k/Kconfig
> +++ b/arch/m68k/Kconfig
> @@ -22,6 +22,7 @@ config M68K
>  	select MODULES_USE_ELF_RELA
>  	select OLD_SIGSUSPEND3
>  	select OLD_SIGACTION
> +	select PCI_GENERIC_SETUP
>  
>  config RWSEM_GENERIC_SPINLOCK
>  	bool
> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
> index 2828ecde133d..474a7c710686 100644
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -70,6 +70,7 @@ config MIPS
>  	select HAVE_EXIT_THREAD
>  	select HAVE_REGS_AND_STACK_ACCESS_API
>  	select HAVE_COPY_THREAD_TLS
> +	select PCI_GENERIC_SETUP
>  
>  menu "Machine selection"
>  
> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
> index ee086958b2b2..90a98ac526fb 100644
> --- a/arch/sh/Kconfig
> +++ b/arch/sh/Kconfig
> @@ -48,6 +48,7 @@ config SUPERH
>  	select HAVE_ARCH_AUDITSYSCALL
>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>  	select HAVE_NMI
> +	select PCI_GENERIC_SETUP
>  	help
>  	  The SuperH is a RISC processor targeted for use in embedded systems
>  	  and consumer electronics; it was also used in the Sega Dreamcast
> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
> index 5639c9fe5b55..24cea64104bd 100644
> --- a/arch/sparc/Kconfig
> +++ b/arch/sparc/Kconfig
> @@ -424,6 +424,7 @@ config SPARC_LEON
>  	depends on SPARC32
>  	select USB_EHCI_BIG_ENDIAN_MMIO
>  	select USB_EHCI_BIG_ENDIAN_DESC
> +	select PCI_GENERIC_SETUP
>  	---help---
>  	  If you say Y here if you are running on a SPARC-LEON processor.
>  	  The LEON processor is a synthesizable VHDL model of the
> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
> index 4583c0320059..6679af85a882 100644
> --- a/arch/tile/Kconfig
> +++ b/arch/tile/Kconfig
> @@ -33,6 +33,7 @@ config TILE
>  	select USER_STACKTRACE_SUPPORT
>  	select USE_PMC if PERF_EVENTS
>  	select VIRT_TO_BUS
> +	select PCI_GENERIC_SETUP
>  
>  config MMU
>  	def_bool y
> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
> index 0769066929c6..162a7d3def0c 100644
> --- a/arch/unicore32/Kconfig
> +++ b/arch/unicore32/Kconfig
> @@ -18,6 +18,7 @@ config UNICORE32
>  	select ARCH_WANT_FRAME_POINTERS
>  	select GENERIC_IOMAP
>  	select MODULES_USE_ELF_REL
> +	select PCI_GENERIC_SETUP
>  	help
>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>  	  including a series of low-power-consumption RISC chip
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index e0cacb7b8563..658c9f95ab3f 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -131,6 +131,9 @@ config PCI_HYPERV
>            The PCI device frontend driver allows the kernel to import arbitrary
>            PCI devices from a PCI backend to support PCI driver domains.
>  
> +config PCI_GENERIC_SETUP
> +	def_bool n
> +
>  source "drivers/pci/hotplug/Kconfig"
>  source "drivers/pci/dwc/Kconfig"
>  source "drivers/pci/host/Kconfig"
> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
> index 462c1f5f5546..26f4710c88ec 100644
> --- a/drivers/pci/Makefile
> +++ b/drivers/pci/Makefile
> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>  #
>  # Some architectures use the generic PCI setup functions
>  #
> -obj-$(CONFIG_ALPHA) += setup-irq.o
> -obj-$(CONFIG_ARC) += setup-irq.o
> -obj-$(CONFIG_ARM) += setup-irq.o
> -obj-$(CONFIG_ARM64) += setup-irq.o
> -obj-$(CONFIG_UNICORE32) += setup-irq.o
> -obj-$(CONFIG_SUPERH) += setup-irq.o
> -obj-$(CONFIG_MIPS) += setup-irq.o
> -obj-$(CONFIG_TILE) += setup-irq.o
> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
> -obj-$(CONFIG_M68K) += setup-irq.o
> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>  
>  #
>  # ACPI Related PCI FW Functions
> -- 
> 2.13.0
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
  2017-06-27 23:37   ` Bjorn Helgaas
                       ` (3 preceding siblings ...)
  (?)
@ 2017-06-28  0:14     ` Palmer Dabbelt
  -1 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-28  0:14 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 27 Jun 2017 16:37:40 PDT (-0700), helgaas@kernel.org wrote:
> [+cc Lorenzo]
>
> Hi Palmer,
>
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> We wanted to add RISC-V to the list of architectures that used the
>> generic PCI setup-irq.o inside the Makefile and it was suggested that
>> instead we define a Kconfig entry and use that.
>>
>> I've done very minimal testing on this: I just checked to see that
>> an aarch64 defconfig still build setup-irq.o with the patch applied.
>> The intention is that this patch doesn't change the behavior of any
>> build.
>>
>> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
>
> Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
> overlaps with this quite a bit, and includes this patch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id[64036feff4
>
> which makes it so we build setup-irq.o on *all* arches.  Can you check
> out the pci/enumeration branch and see whether it accomplishes what
> you need?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

Great, that's even better for me, as I don't have to go touch a bunch of
different arch code :).  We'll use that instead when it lands.

Thanks!

>
>> ---
>>  arch/alpha/Kconfig     |  1 +
>>  arch/arc/Kconfig       |  1 +
>>  arch/arm/Kconfig       |  1 +
>>  arch/arm64/Kconfig     |  1 +
>>  arch/m68k/Kconfig      |  1 +
>>  arch/mips/Kconfig      |  1 +
>>  arch/sh/Kconfig        |  1 +
>>  arch/sparc/Kconfig     |  1 +
>>  arch/tile/Kconfig      |  1 +
>>  arch/unicore32/Kconfig |  1 +
>>  drivers/pci/Kconfig    |  3 +++
>>  drivers/pci/Makefile   | 11 +----------
>>  12 files changed, 14 insertions(+), 10 deletions(-)
>>
>> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
>> index 0e49d39ea74a..30f4e711f681 100644
>> --- a/arch/alpha/Kconfig
>> +++ b/arch/alpha/Kconfig
>> @@ -26,6 +26,7 @@ config ALPHA
>>  	select ODD_RT_SIGACTION
>>  	select OLD_SIGSUSPEND
>>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The Alpha is a 64-bit general-purpose processor designed and
>>  	  marketed by the Digital Equipment Corporation of blessed memory,
>> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
>> index a5459698f0ee..dd1f64858118 100644
>> --- a/arch/arc/Kconfig
>> +++ b/arch/arc/Kconfig
>> @@ -44,6 +44,7 @@ config ARC
>>  	select HAVE_GENERIC_DMA_COHERENT
>>  	select HAVE_KERNEL_GZIP
>>  	select HAVE_KERNEL_LZMA
>> +	select PCI_GENERIC_SETUP
>>
>>  config MIGHT_HAVE_PCI
>>  	bool
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>  	select PERF_USE_VMALLOC
>>  	select RTC_LIB
>>  	select SYS_SUPPORTS_APM_EMULATION
>> +	select PCI_GENERIC_SETUP
>>  	# Above selects are sorted alphabetically; please add new ones
>>  	# according to that.  Thanks.
>>  	help
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>  	select SPARSE_IRQ
>>  	select SYSCTL_EXCEPTION_TRACE
>>  	select THREAD_INFO_IN_TASK
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  ARM 64-bit (AArch64) Linux support.
>>
>> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
>> index d140206d5d29..c16214344f1c 100644
>> --- a/arch/m68k/Kconfig
>> +++ b/arch/m68k/Kconfig
>> @@ -22,6 +22,7 @@ config M68K
>>  	select MODULES_USE_ELF_RELA
>>  	select OLD_SIGSUSPEND3
>>  	select OLD_SIGACTION
>> +	select PCI_GENERIC_SETUP
>>
>>  config RWSEM_GENERIC_SPINLOCK
>>  	bool
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 2828ecde133d..474a7c710686 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -70,6 +70,7 @@ config MIPS
>>  	select HAVE_EXIT_THREAD
>>  	select HAVE_REGS_AND_STACK_ACCESS_API
>>  	select HAVE_COPY_THREAD_TLS
>> +	select PCI_GENERIC_SETUP
>>
>>  menu "Machine selection"
>>
>> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
>> index ee086958b2b2..90a98ac526fb 100644
>> --- a/arch/sh/Kconfig
>> +++ b/arch/sh/Kconfig
>> @@ -48,6 +48,7 @@ config SUPERH
>>  	select HAVE_ARCH_AUDITSYSCALL
>>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>>  	select HAVE_NMI
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The SuperH is a RISC processor targeted for use in embedded systems
>>  	  and consumer electronics; it was also used in the Sega Dreamcast
>> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
>> index 5639c9fe5b55..24cea64104bd 100644
>> --- a/arch/sparc/Kconfig
>> +++ b/arch/sparc/Kconfig
>> @@ -424,6 +424,7 @@ config SPARC_LEON
>>  	depends on SPARC32
>>  	select USB_EHCI_BIG_ENDIAN_MMIO
>>  	select USB_EHCI_BIG_ENDIAN_DESC
>> +	select PCI_GENERIC_SETUP
>>  	---help---
>>  	  If you say Y here if you are running on a SPARC-LEON processor.
>>  	  The LEON processor is a synthesizable VHDL model of the
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>  	select USER_STACKTRACE_SUPPORT
>>  	select USE_PMC if PERF_EVENTS
>>  	select VIRT_TO_BUS
>> +	select PCI_GENERIC_SETUP
>>
>>  config MMU
>>  	def_bool y
>> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
>> index 0769066929c6..162a7d3def0c 100644
>> --- a/arch/unicore32/Kconfig
>> +++ b/arch/unicore32/Kconfig
>> @@ -18,6 +18,7 @@ config UNICORE32
>>  	select ARCH_WANT_FRAME_POINTERS
>>  	select GENERIC_IOMAP
>>  	select MODULES_USE_ELF_REL
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>>  	  including a series of low-power-consumption RISC chip
>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
>> index e0cacb7b8563..658c9f95ab3f 100644
>> --- a/drivers/pci/Kconfig
>> +++ b/drivers/pci/Kconfig
>> @@ -131,6 +131,9 @@ config PCI_HYPERV
>>            The PCI device frontend driver allows the kernel to import arbitrary
>>            PCI devices from a PCI backend to support PCI driver domains.
>>
>> +config PCI_GENERIC_SETUP
>> +	def_bool n
>> +
>>  source "drivers/pci/hotplug/Kconfig"
>>  source "drivers/pci/dwc/Kconfig"
>>  source "drivers/pci/host/Kconfig"
>> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
>> index 462c1f5f5546..26f4710c88ec 100644
>> --- a/drivers/pci/Makefile
>> +++ b/drivers/pci/Makefile
>> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>>  #
>>  # Some architectures use the generic PCI setup functions
>>  #
>> -obj-$(CONFIG_ALPHA) += setup-irq.o
>> -obj-$(CONFIG_ARC) += setup-irq.o
>> -obj-$(CONFIG_ARM) += setup-irq.o
>> -obj-$(CONFIG_ARM64) += setup-irq.o
>> -obj-$(CONFIG_UNICORE32) += setup-irq.o
>> -obj-$(CONFIG_SUPERH) += setup-irq.o
>> -obj-$(CONFIG_MIPS) += setup-irq.o
>> -obj-$(CONFIG_TILE) += setup-irq.o
>> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
>> -obj-$(CONFIG_M68K) += setup-irq.o
>> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>>
>>  #
>>  # ACPI Related PCI FW Functions
>> --
>> 2.13.0
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-28  0:14     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-28  0:14 UTC (permalink / raw)
  To: helgaas
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, lorenzo.pieralisi

On Tue, 27 Jun 2017 16:37:40 PDT (-0700), helgaas@kernel.org wrote:
> [+cc Lorenzo]
>
> Hi Palmer,
>
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> We wanted to add RISC-V to the list of architectures that used the
>> generic PCI setup-irq.o inside the Makefile and it was suggested that
>> instead we define a Kconfig entry and use that.
>>
>> I've done very minimal testing on this: I just checked to see that
>> an aarch64 defconfig still build setup-irq.o with the patch applied.
>> The intention is that this patch doesn't change the behavior of any
>> build.
>>
>> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
>
> Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
> overlaps with this quite a bit, and includes this patch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4
>
> which makes it so we build setup-irq.o on *all* arches.  Can you check
> out the pci/enumeration branch and see whether it accomplishes what
> you need?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

Great, that's even better for me, as I don't have to go touch a bunch of
different arch code :).  We'll use that instead when it lands.

Thanks!

>
>> ---
>>  arch/alpha/Kconfig     |  1 +
>>  arch/arc/Kconfig       |  1 +
>>  arch/arm/Kconfig       |  1 +
>>  arch/arm64/Kconfig     |  1 +
>>  arch/m68k/Kconfig      |  1 +
>>  arch/mips/Kconfig      |  1 +
>>  arch/sh/Kconfig        |  1 +
>>  arch/sparc/Kconfig     |  1 +
>>  arch/tile/Kconfig      |  1 +
>>  arch/unicore32/Kconfig |  1 +
>>  drivers/pci/Kconfig    |  3 +++
>>  drivers/pci/Makefile   | 11 +----------
>>  12 files changed, 14 insertions(+), 10 deletions(-)
>>
>> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
>> index 0e49d39ea74a..30f4e711f681 100644
>> --- a/arch/alpha/Kconfig
>> +++ b/arch/alpha/Kconfig
>> @@ -26,6 +26,7 @@ config ALPHA
>>  	select ODD_RT_SIGACTION
>>  	select OLD_SIGSUSPEND
>>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The Alpha is a 64-bit general-purpose processor designed and
>>  	  marketed by the Digital Equipment Corporation of blessed memory,
>> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
>> index a5459698f0ee..dd1f64858118 100644
>> --- a/arch/arc/Kconfig
>> +++ b/arch/arc/Kconfig
>> @@ -44,6 +44,7 @@ config ARC
>>  	select HAVE_GENERIC_DMA_COHERENT
>>  	select HAVE_KERNEL_GZIP
>>  	select HAVE_KERNEL_LZMA
>> +	select PCI_GENERIC_SETUP
>>
>>  config MIGHT_HAVE_PCI
>>  	bool
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>  	select PERF_USE_VMALLOC
>>  	select RTC_LIB
>>  	select SYS_SUPPORTS_APM_EMULATION
>> +	select PCI_GENERIC_SETUP
>>  	# Above selects are sorted alphabetically; please add new ones
>>  	# according to that.  Thanks.
>>  	help
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>  	select SPARSE_IRQ
>>  	select SYSCTL_EXCEPTION_TRACE
>>  	select THREAD_INFO_IN_TASK
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  ARM 64-bit (AArch64) Linux support.
>>
>> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
>> index d140206d5d29..c16214344f1c 100644
>> --- a/arch/m68k/Kconfig
>> +++ b/arch/m68k/Kconfig
>> @@ -22,6 +22,7 @@ config M68K
>>  	select MODULES_USE_ELF_RELA
>>  	select OLD_SIGSUSPEND3
>>  	select OLD_SIGACTION
>> +	select PCI_GENERIC_SETUP
>>
>>  config RWSEM_GENERIC_SPINLOCK
>>  	bool
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 2828ecde133d..474a7c710686 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -70,6 +70,7 @@ config MIPS
>>  	select HAVE_EXIT_THREAD
>>  	select HAVE_REGS_AND_STACK_ACCESS_API
>>  	select HAVE_COPY_THREAD_TLS
>> +	select PCI_GENERIC_SETUP
>>
>>  menu "Machine selection"
>>
>> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
>> index ee086958b2b2..90a98ac526fb 100644
>> --- a/arch/sh/Kconfig
>> +++ b/arch/sh/Kconfig
>> @@ -48,6 +48,7 @@ config SUPERH
>>  	select HAVE_ARCH_AUDITSYSCALL
>>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>>  	select HAVE_NMI
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The SuperH is a RISC processor targeted for use in embedded systems
>>  	  and consumer electronics; it was also used in the Sega Dreamcast
>> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
>> index 5639c9fe5b55..24cea64104bd 100644
>> --- a/arch/sparc/Kconfig
>> +++ b/arch/sparc/Kconfig
>> @@ -424,6 +424,7 @@ config SPARC_LEON
>>  	depends on SPARC32
>>  	select USB_EHCI_BIG_ENDIAN_MMIO
>>  	select USB_EHCI_BIG_ENDIAN_DESC
>> +	select PCI_GENERIC_SETUP
>>  	---help---
>>  	  If you say Y here if you are running on a SPARC-LEON processor.
>>  	  The LEON processor is a synthesizable VHDL model of the
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>  	select USER_STACKTRACE_SUPPORT
>>  	select USE_PMC if PERF_EVENTS
>>  	select VIRT_TO_BUS
>> +	select PCI_GENERIC_SETUP
>>
>>  config MMU
>>  	def_bool y
>> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
>> index 0769066929c6..162a7d3def0c 100644
>> --- a/arch/unicore32/Kconfig
>> +++ b/arch/unicore32/Kconfig
>> @@ -18,6 +18,7 @@ config UNICORE32
>>  	select ARCH_WANT_FRAME_POINTERS
>>  	select GENERIC_IOMAP
>>  	select MODULES_USE_ELF_REL
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>>  	  including a series of low-power-consumption RISC chip
>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
>> index e0cacb7b8563..658c9f95ab3f 100644
>> --- a/drivers/pci/Kconfig
>> +++ b/drivers/pci/Kconfig
>> @@ -131,6 +131,9 @@ config PCI_HYPERV
>>            The PCI device frontend driver allows the kernel to import arbitrary
>>            PCI devices from a PCI backend to support PCI driver domains.
>>
>> +config PCI_GENERIC_SETUP
>> +	def_bool n
>> +
>>  source "drivers/pci/hotplug/Kconfig"
>>  source "drivers/pci/dwc/Kconfig"
>>  source "drivers/pci/host/Kconfig"
>> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
>> index 462c1f5f5546..26f4710c88ec 100644
>> --- a/drivers/pci/Makefile
>> +++ b/drivers/pci/Makefile
>> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>>  #
>>  # Some architectures use the generic PCI setup functions
>>  #
>> -obj-$(CONFIG_ALPHA) += setup-irq.o
>> -obj-$(CONFIG_ARC) += setup-irq.o
>> -obj-$(CONFIG_ARM) += setup-irq.o
>> -obj-$(CONFIG_ARM64) += setup-irq.o
>> -obj-$(CONFIG_UNICORE32) += setup-irq.o
>> -obj-$(CONFIG_SUPERH) += setup-irq.o
>> -obj-$(CONFIG_MIPS) += setup-irq.o
>> -obj-$(CONFIG_TILE) += setup-irq.o
>> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
>> -obj-$(CONFIG_M68K) += setup-irq.o
>> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>>
>>  #
>>  # ACPI Related PCI FW Functions
>> --
>> 2.13.0
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-28  0:14     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-28  0:14 UTC (permalink / raw)
  To: helgaas
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, lorenzo.pieralisi

On Tue, 27 Jun 2017 16:37:40 PDT (-0700), helgaas@kernel.org wrote:
> [+cc Lorenzo]
>
> Hi Palmer,
>
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> We wanted to add RISC-V to the list of architectures that used the
>> generic PCI setup-irq.o inside the Makefile and it was suggested that
>> instead we define a Kconfig entry and use that.
>>
>> I've done very minimal testing on this: I just checked to see that
>> an aarch64 defconfig still build setup-irq.o with the patch applied.
>> The intention is that this patch doesn't change the behavior of any
>> build.
>>
>> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
>
> Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
> overlaps with this quite a bit, and includes this patch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4
>
> which makes it so we build setup-irq.o on *all* arches.  Can you check
> out the pci/enumeration branch and see whether it accomplishes what
> you need?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

Great, that's even better for me, as I don't have to go touch a bunch of
different arch code :).  We'll use that instead when it lands.

Thanks!

>
>> ---
>>  arch/alpha/Kconfig     |  1 +
>>  arch/arc/Kconfig       |  1 +
>>  arch/arm/Kconfig       |  1 +
>>  arch/arm64/Kconfig     |  1 +
>>  arch/m68k/Kconfig      |  1 +
>>  arch/mips/Kconfig      |  1 +
>>  arch/sh/Kconfig        |  1 +
>>  arch/sparc/Kconfig     |  1 +
>>  arch/tile/Kconfig      |  1 +
>>  arch/unicore32/Kconfig |  1 +
>>  drivers/pci/Kconfig    |  3 +++
>>  drivers/pci/Makefile   | 11 +----------
>>  12 files changed, 14 insertions(+), 10 deletions(-)
>>
>> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
>> index 0e49d39ea74a..30f4e711f681 100644
>> --- a/arch/alpha/Kconfig
>> +++ b/arch/alpha/Kconfig
>> @@ -26,6 +26,7 @@ config ALPHA
>>  	select ODD_RT_SIGACTION
>>  	select OLD_SIGSUSPEND
>>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The Alpha is a 64-bit general-purpose processor designed and
>>  	  marketed by the Digital Equipment Corporation of blessed memory,
>> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
>> index a5459698f0ee..dd1f64858118 100644
>> --- a/arch/arc/Kconfig
>> +++ b/arch/arc/Kconfig
>> @@ -44,6 +44,7 @@ config ARC
>>  	select HAVE_GENERIC_DMA_COHERENT
>>  	select HAVE_KERNEL_GZIP
>>  	select HAVE_KERNEL_LZMA
>> +	select PCI_GENERIC_SETUP
>>
>>  config MIGHT_HAVE_PCI
>>  	bool
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>  	select PERF_USE_VMALLOC
>>  	select RTC_LIB
>>  	select SYS_SUPPORTS_APM_EMULATION
>> +	select PCI_GENERIC_SETUP
>>  	# Above selects are sorted alphabetically; please add new ones
>>  	# according to that.  Thanks.
>>  	help
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>  	select SPARSE_IRQ
>>  	select SYSCTL_EXCEPTION_TRACE
>>  	select THREAD_INFO_IN_TASK
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  ARM 64-bit (AArch64) Linux support.
>>
>> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
>> index d140206d5d29..c16214344f1c 100644
>> --- a/arch/m68k/Kconfig
>> +++ b/arch/m68k/Kconfig
>> @@ -22,6 +22,7 @@ config M68K
>>  	select MODULES_USE_ELF_RELA
>>  	select OLD_SIGSUSPEND3
>>  	select OLD_SIGACTION
>> +	select PCI_GENERIC_SETUP
>>
>>  config RWSEM_GENERIC_SPINLOCK
>>  	bool
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 2828ecde133d..474a7c710686 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -70,6 +70,7 @@ config MIPS
>>  	select HAVE_EXIT_THREAD
>>  	select HAVE_REGS_AND_STACK_ACCESS_API
>>  	select HAVE_COPY_THREAD_TLS
>> +	select PCI_GENERIC_SETUP
>>
>>  menu "Machine selection"
>>
>> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
>> index ee086958b2b2..90a98ac526fb 100644
>> --- a/arch/sh/Kconfig
>> +++ b/arch/sh/Kconfig
>> @@ -48,6 +48,7 @@ config SUPERH
>>  	select HAVE_ARCH_AUDITSYSCALL
>>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>>  	select HAVE_NMI
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The SuperH is a RISC processor targeted for use in embedded systems
>>  	  and consumer electronics; it was also used in the Sega Dreamcast
>> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
>> index 5639c9fe5b55..24cea64104bd 100644
>> --- a/arch/sparc/Kconfig
>> +++ b/arch/sparc/Kconfig
>> @@ -424,6 +424,7 @@ config SPARC_LEON
>>  	depends on SPARC32
>>  	select USB_EHCI_BIG_ENDIAN_MMIO
>>  	select USB_EHCI_BIG_ENDIAN_DESC
>> +	select PCI_GENERIC_SETUP
>>  	---help---
>>  	  If you say Y here if you are running on a SPARC-LEON processor.
>>  	  The LEON processor is a synthesizable VHDL model of the
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>  	select USER_STACKTRACE_SUPPORT
>>  	select USE_PMC if PERF_EVENTS
>>  	select VIRT_TO_BUS
>> +	select PCI_GENERIC_SETUP
>>
>>  config MMU
>>  	def_bool y
>> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
>> index 0769066929c6..162a7d3def0c 100644
>> --- a/arch/unicore32/Kconfig
>> +++ b/arch/unicore32/Kconfig
>> @@ -18,6 +18,7 @@ config UNICORE32
>>  	select ARCH_WANT_FRAME_POINTERS
>>  	select GENERIC_IOMAP
>>  	select MODULES_USE_ELF_REL
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>>  	  including a series of low-power-consumption RISC chip
>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
>> index e0cacb7b8563..658c9f95ab3f 100644
>> --- a/drivers/pci/Kconfig
>> +++ b/drivers/pci/Kconfig
>> @@ -131,6 +131,9 @@ config PCI_HYPERV
>>            The PCI device frontend driver allows the kernel to import arbitrary
>>            PCI devices from a PCI backend to support PCI driver domains.
>>
>> +config PCI_GENERIC_SETUP
>> +	def_bool n
>> +
>>  source "drivers/pci/hotplug/Kconfig"
>>  source "drivers/pci/dwc/Kconfig"
>>  source "drivers/pci/host/Kconfig"
>> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
>> index 462c1f5f5546..26f4710c88ec 100644
>> --- a/drivers/pci/Makefile
>> +++ b/drivers/pci/Makefile
>> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>>  #
>>  # Some architectures use the generic PCI setup functions
>>  #
>> -obj-$(CONFIG_ALPHA) += setup-irq.o
>> -obj-$(CONFIG_ARC) += setup-irq.o
>> -obj-$(CONFIG_ARM) += setup-irq.o
>> -obj-$(CONFIG_ARM64) += setup-irq.o
>> -obj-$(CONFIG_UNICORE32) += setup-irq.o
>> -obj-$(CONFIG_SUPERH) += setup-irq.o
>> -obj-$(CONFIG_MIPS) += setup-irq.o
>> -obj-$(CONFIG_TILE) += setup-irq.o
>> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
>> -obj-$(CONFIG_M68K) += setup-irq.o
>> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>>
>>  #
>>  # ACPI Related PCI FW Functions
>> --
>> 2.13.0
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-28  0:14     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-28  0:14 UTC (permalink / raw)
  To: helgaas
  Cc: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch, lorenzo.pieralisi

On Tue, 27 Jun 2017 16:37:40 PDT (-0700), helgaas@kernel.org wrote:
> [+cc Lorenzo]
>
> Hi Palmer,
>
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> We wanted to add RISC-V to the list of architectures that used the
>> generic PCI setup-irq.o inside the Makefile and it was suggested that
>> instead we define a Kconfig entry and use that.
>>
>> I've done very minimal testing on this: I just checked to see that
>> an aarch64 defconfig still build setup-irq.o with the patch applied.
>> The intention is that this patch doesn't change the behavior of any
>> build.
>>
>> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
>
> Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
> overlaps with this quite a bit, and includes this patch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4
>
> which makes it so we build setup-irq.o on *all* arches.  Can you check
> out the pci/enumeration branch and see whether it accomplishes what
> you need?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

Great, that's even better for me, as I don't have to go touch a bunch of
different arch code :).  We'll use that instead when it lands.

Thanks!

>
>> ---
>>  arch/alpha/Kconfig     |  1 +
>>  arch/arc/Kconfig       |  1 +
>>  arch/arm/Kconfig       |  1 +
>>  arch/arm64/Kconfig     |  1 +
>>  arch/m68k/Kconfig      |  1 +
>>  arch/mips/Kconfig      |  1 +
>>  arch/sh/Kconfig        |  1 +
>>  arch/sparc/Kconfig     |  1 +
>>  arch/tile/Kconfig      |  1 +
>>  arch/unicore32/Kconfig |  1 +
>>  drivers/pci/Kconfig    |  3 +++
>>  drivers/pci/Makefile   | 11 +----------
>>  12 files changed, 14 insertions(+), 10 deletions(-)
>>
>> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
>> index 0e49d39ea74a..30f4e711f681 100644
>> --- a/arch/alpha/Kconfig
>> +++ b/arch/alpha/Kconfig
>> @@ -26,6 +26,7 @@ config ALPHA
>>  	select ODD_RT_SIGACTION
>>  	select OLD_SIGSUSPEND
>>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The Alpha is a 64-bit general-purpose processor designed and
>>  	  marketed by the Digital Equipment Corporation of blessed memory,
>> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
>> index a5459698f0ee..dd1f64858118 100644
>> --- a/arch/arc/Kconfig
>> +++ b/arch/arc/Kconfig
>> @@ -44,6 +44,7 @@ config ARC
>>  	select HAVE_GENERIC_DMA_COHERENT
>>  	select HAVE_KERNEL_GZIP
>>  	select HAVE_KERNEL_LZMA
>> +	select PCI_GENERIC_SETUP
>>
>>  config MIGHT_HAVE_PCI
>>  	bool
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>  	select PERF_USE_VMALLOC
>>  	select RTC_LIB
>>  	select SYS_SUPPORTS_APM_EMULATION
>> +	select PCI_GENERIC_SETUP
>>  	# Above selects are sorted alphabetically; please add new ones
>>  	# according to that.  Thanks.
>>  	help
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>  	select SPARSE_IRQ
>>  	select SYSCTL_EXCEPTION_TRACE
>>  	select THREAD_INFO_IN_TASK
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  ARM 64-bit (AArch64) Linux support.
>>
>> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
>> index d140206d5d29..c16214344f1c 100644
>> --- a/arch/m68k/Kconfig
>> +++ b/arch/m68k/Kconfig
>> @@ -22,6 +22,7 @@ config M68K
>>  	select MODULES_USE_ELF_RELA
>>  	select OLD_SIGSUSPEND3
>>  	select OLD_SIGACTION
>> +	select PCI_GENERIC_SETUP
>>
>>  config RWSEM_GENERIC_SPINLOCK
>>  	bool
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 2828ecde133d..474a7c710686 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -70,6 +70,7 @@ config MIPS
>>  	select HAVE_EXIT_THREAD
>>  	select HAVE_REGS_AND_STACK_ACCESS_API
>>  	select HAVE_COPY_THREAD_TLS
>> +	select PCI_GENERIC_SETUP
>>
>>  menu "Machine selection"
>>
>> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
>> index ee086958b2b2..90a98ac526fb 100644
>> --- a/arch/sh/Kconfig
>> +++ b/arch/sh/Kconfig
>> @@ -48,6 +48,7 @@ config SUPERH
>>  	select HAVE_ARCH_AUDITSYSCALL
>>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>>  	select HAVE_NMI
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The SuperH is a RISC processor targeted for use in embedded systems
>>  	  and consumer electronics; it was also used in the Sega Dreamcast
>> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
>> index 5639c9fe5b55..24cea64104bd 100644
>> --- a/arch/sparc/Kconfig
>> +++ b/arch/sparc/Kconfig
>> @@ -424,6 +424,7 @@ config SPARC_LEON
>>  	depends on SPARC32
>>  	select USB_EHCI_BIG_ENDIAN_MMIO
>>  	select USB_EHCI_BIG_ENDIAN_DESC
>> +	select PCI_GENERIC_SETUP
>>  	---help---
>>  	  If you say Y here if you are running on a SPARC-LEON processor.
>>  	  The LEON processor is a synthesizable VHDL model of the
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>  	select USER_STACKTRACE_SUPPORT
>>  	select USE_PMC if PERF_EVENTS
>>  	select VIRT_TO_BUS
>> +	select PCI_GENERIC_SETUP
>>
>>  config MMU
>>  	def_bool y
>> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
>> index 0769066929c6..162a7d3def0c 100644
>> --- a/arch/unicore32/Kconfig
>> +++ b/arch/unicore32/Kconfig
>> @@ -18,6 +18,7 @@ config UNICORE32
>>  	select ARCH_WANT_FRAME_POINTERS
>>  	select GENERIC_IOMAP
>>  	select MODULES_USE_ELF_REL
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>>  	  including a series of low-power-consumption RISC chip
>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
>> index e0cacb7b8563..658c9f95ab3f 100644
>> --- a/drivers/pci/Kconfig
>> +++ b/drivers/pci/Kconfig
>> @@ -131,6 +131,9 @@ config PCI_HYPERV
>>            The PCI device frontend driver allows the kernel to import arbitrary
>>            PCI devices from a PCI backend to support PCI driver domains.
>>
>> +config PCI_GENERIC_SETUP
>> +	def_bool n
>> +
>>  source "drivers/pci/hotplug/Kconfig"
>>  source "drivers/pci/dwc/Kconfig"
>>  source "drivers/pci/host/Kconfig"
>> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
>> index 462c1f5f5546..26f4710c88ec 100644
>> --- a/drivers/pci/Makefile
>> +++ b/drivers/pci/Makefile
>> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>>  #
>>  # Some architectures use the generic PCI setup functions
>>  #
>> -obj-$(CONFIG_ALPHA) += setup-irq.o
>> -obj-$(CONFIG_ARC) += setup-irq.o
>> -obj-$(CONFIG_ARM) += setup-irq.o
>> -obj-$(CONFIG_ARM64) += setup-irq.o
>> -obj-$(CONFIG_UNICORE32) += setup-irq.o
>> -obj-$(CONFIG_SUPERH) += setup-irq.o
>> -obj-$(CONFIG_MIPS) += setup-irq.o
>> -obj-$(CONFIG_TILE) += setup-irq.o
>> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
>> -obj-$(CONFIG_M68K) += setup-irq.o
>> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>>
>>  #
>>  # ACPI Related PCI FW Functions
>> --
>> 2.13.0
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-28  0:14     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-28  0:14 UTC (permalink / raw)
  To: linux-snps-arc

On Tue, 27 Jun 2017 16:37:40 PDT (-0700), helgaas@kernel.org wrote:
> [+cc Lorenzo]
>
> Hi Palmer,
>
> On Fri, Jun 23, 2017@02:45:38PM -0700, Palmer Dabbelt wrote:
>> We wanted to add RISC-V to the list of architectures that used the
>> generic PCI setup-irq.o inside the Makefile and it was suggested that
>> instead we define a Kconfig entry and use that.
>>
>> I've done very minimal testing on this: I just checked to see that
>> an aarch64 defconfig still build setup-irq.o with the patch applied.
>> The intention is that this patch doesn't change the behavior of any
>> build.
>>
>> Signed-off-by: Palmer Dabbelt <palmer at dabbelt.com>
>
> Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
> overlaps with this quite a bit, and includes this patch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4
>
> which makes it so we build setup-irq.o on *all* arches.  Can you check
> out the pci/enumeration branch and see whether it accomplishes what
> you need?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

Great, that's even better for me, as I don't have to go touch a bunch of
different arch code :).  We'll use that instead when it lands.

Thanks!

>
>> ---
>>  arch/alpha/Kconfig     |  1 +
>>  arch/arc/Kconfig       |  1 +
>>  arch/arm/Kconfig       |  1 +
>>  arch/arm64/Kconfig     |  1 +
>>  arch/m68k/Kconfig      |  1 +
>>  arch/mips/Kconfig      |  1 +
>>  arch/sh/Kconfig        |  1 +
>>  arch/sparc/Kconfig     |  1 +
>>  arch/tile/Kconfig      |  1 +
>>  arch/unicore32/Kconfig |  1 +
>>  drivers/pci/Kconfig    |  3 +++
>>  drivers/pci/Makefile   | 11 +----------
>>  12 files changed, 14 insertions(+), 10 deletions(-)
>>
>> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
>> index 0e49d39ea74a..30f4e711f681 100644
>> --- a/arch/alpha/Kconfig
>> +++ b/arch/alpha/Kconfig
>> @@ -26,6 +26,7 @@ config ALPHA
>>  	select ODD_RT_SIGACTION
>>  	select OLD_SIGSUSPEND
>>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The Alpha is a 64-bit general-purpose processor designed and
>>  	  marketed by the Digital Equipment Corporation of blessed memory,
>> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
>> index a5459698f0ee..dd1f64858118 100644
>> --- a/arch/arc/Kconfig
>> +++ b/arch/arc/Kconfig
>> @@ -44,6 +44,7 @@ config ARC
>>  	select HAVE_GENERIC_DMA_COHERENT
>>  	select HAVE_KERNEL_GZIP
>>  	select HAVE_KERNEL_LZMA
>> +	select PCI_GENERIC_SETUP
>>
>>  config MIGHT_HAVE_PCI
>>  	bool
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>  	select PERF_USE_VMALLOC
>>  	select RTC_LIB
>>  	select SYS_SUPPORTS_APM_EMULATION
>> +	select PCI_GENERIC_SETUP
>>  	# Above selects are sorted alphabetically; please add new ones
>>  	# according to that.  Thanks.
>>  	help
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>  	select SPARSE_IRQ
>>  	select SYSCTL_EXCEPTION_TRACE
>>  	select THREAD_INFO_IN_TASK
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  ARM 64-bit (AArch64) Linux support.
>>
>> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
>> index d140206d5d29..c16214344f1c 100644
>> --- a/arch/m68k/Kconfig
>> +++ b/arch/m68k/Kconfig
>> @@ -22,6 +22,7 @@ config M68K
>>  	select MODULES_USE_ELF_RELA
>>  	select OLD_SIGSUSPEND3
>>  	select OLD_SIGACTION
>> +	select PCI_GENERIC_SETUP
>>
>>  config RWSEM_GENERIC_SPINLOCK
>>  	bool
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 2828ecde133d..474a7c710686 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -70,6 +70,7 @@ config MIPS
>>  	select HAVE_EXIT_THREAD
>>  	select HAVE_REGS_AND_STACK_ACCESS_API
>>  	select HAVE_COPY_THREAD_TLS
>> +	select PCI_GENERIC_SETUP
>>
>>  menu "Machine selection"
>>
>> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
>> index ee086958b2b2..90a98ac526fb 100644
>> --- a/arch/sh/Kconfig
>> +++ b/arch/sh/Kconfig
>> @@ -48,6 +48,7 @@ config SUPERH
>>  	select HAVE_ARCH_AUDITSYSCALL
>>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>>  	select HAVE_NMI
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The SuperH is a RISC processor targeted for use in embedded systems
>>  	  and consumer electronics; it was also used in the Sega Dreamcast
>> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
>> index 5639c9fe5b55..24cea64104bd 100644
>> --- a/arch/sparc/Kconfig
>> +++ b/arch/sparc/Kconfig
>> @@ -424,6 +424,7 @@ config SPARC_LEON
>>  	depends on SPARC32
>>  	select USB_EHCI_BIG_ENDIAN_MMIO
>>  	select USB_EHCI_BIG_ENDIAN_DESC
>> +	select PCI_GENERIC_SETUP
>>  	---help---
>>  	  If you say Y here if you are running on a SPARC-LEON processor.
>>  	  The LEON processor is a synthesizable VHDL model of the
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>  	select USER_STACKTRACE_SUPPORT
>>  	select USE_PMC if PERF_EVENTS
>>  	select VIRT_TO_BUS
>> +	select PCI_GENERIC_SETUP
>>
>>  config MMU
>>  	def_bool y
>> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
>> index 0769066929c6..162a7d3def0c 100644
>> --- a/arch/unicore32/Kconfig
>> +++ b/arch/unicore32/Kconfig
>> @@ -18,6 +18,7 @@ config UNICORE32
>>  	select ARCH_WANT_FRAME_POINTERS
>>  	select GENERIC_IOMAP
>>  	select MODULES_USE_ELF_REL
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>>  	  including a series of low-power-consumption RISC chip
>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
>> index e0cacb7b8563..658c9f95ab3f 100644
>> --- a/drivers/pci/Kconfig
>> +++ b/drivers/pci/Kconfig
>> @@ -131,6 +131,9 @@ config PCI_HYPERV
>>            The PCI device frontend driver allows the kernel to import arbitrary
>>            PCI devices from a PCI backend to support PCI driver domains.
>>
>> +config PCI_GENERIC_SETUP
>> +	def_bool n
>> +
>>  source "drivers/pci/hotplug/Kconfig"
>>  source "drivers/pci/dwc/Kconfig"
>>  source "drivers/pci/host/Kconfig"
>> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
>> index 462c1f5f5546..26f4710c88ec 100644
>> --- a/drivers/pci/Makefile
>> +++ b/drivers/pci/Makefile
>> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>>  #
>>  # Some architectures use the generic PCI setup functions
>>  #
>> -obj-$(CONFIG_ALPHA) += setup-irq.o
>> -obj-$(CONFIG_ARC) += setup-irq.o
>> -obj-$(CONFIG_ARM) += setup-irq.o
>> -obj-$(CONFIG_ARM64) += setup-irq.o
>> -obj-$(CONFIG_UNICORE32) += setup-irq.o
>> -obj-$(CONFIG_SUPERH) += setup-irq.o
>> -obj-$(CONFIG_MIPS) += setup-irq.o
>> -obj-$(CONFIG_TILE) += setup-irq.o
>> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
>> -obj-$(CONFIG_M68K) += setup-irq.o
>> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>>
>>  #
>>  # ACPI Related PCI FW Functions
>> --
>> 2.13.0
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-28  0:14     ` Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-28  0:14 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 27 Jun 2017 16:37:40 PDT (-0700), helgaas at kernel.org wrote:
> [+cc Lorenzo]
>
> Hi Palmer,
>
> On Fri, Jun 23, 2017 at 02:45:38PM -0700, Palmer Dabbelt wrote:
>> We wanted to add RISC-V to the list of architectures that used the
>> generic PCI setup-irq.o inside the Makefile and it was suggested that
>> instead we define a Kconfig entry and use that.
>>
>> I've done very minimal testing on this: I just checked to see that
>> an aarch64 defconfig still build setup-irq.o with the patch applied.
>> The intention is that this patch doesn't change the behavior of any
>> build.
>>
>> Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
>
> Lorenzo Pieralisi's "ARM/ARM64: remove pci_fixup_irqs() usage" series
> overlaps with this quite a bit, and includes this patch:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=pci/enumeration&id=5b64036feff4
>
> which makes it so we build setup-irq.o on *all* arches.  Can you check
> out the pci/enumeration branch and see whether it accomplishes what
> you need?
>
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/enumeration

Great, that's even better for me, as I don't have to go touch a bunch of
different arch code :).  We'll use that instead when it lands.

Thanks!

>
>> ---
>>  arch/alpha/Kconfig     |  1 +
>>  arch/arc/Kconfig       |  1 +
>>  arch/arm/Kconfig       |  1 +
>>  arch/arm64/Kconfig     |  1 +
>>  arch/m68k/Kconfig      |  1 +
>>  arch/mips/Kconfig      |  1 +
>>  arch/sh/Kconfig        |  1 +
>>  arch/sparc/Kconfig     |  1 +
>>  arch/tile/Kconfig      |  1 +
>>  arch/unicore32/Kconfig |  1 +
>>  drivers/pci/Kconfig    |  3 +++
>>  drivers/pci/Makefile   | 11 +----------
>>  12 files changed, 14 insertions(+), 10 deletions(-)
>>
>> diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
>> index 0e49d39ea74a..30f4e711f681 100644
>> --- a/arch/alpha/Kconfig
>> +++ b/arch/alpha/Kconfig
>> @@ -26,6 +26,7 @@ config ALPHA
>>  	select ODD_RT_SIGACTION
>>  	select OLD_SIGSUSPEND
>>  	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The Alpha is a 64-bit general-purpose processor designed and
>>  	  marketed by the Digital Equipment Corporation of blessed memory,
>> diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
>> index a5459698f0ee..dd1f64858118 100644
>> --- a/arch/arc/Kconfig
>> +++ b/arch/arc/Kconfig
>> @@ -44,6 +44,7 @@ config ARC
>>  	select HAVE_GENERIC_DMA_COHERENT
>>  	select HAVE_KERNEL_GZIP
>>  	select HAVE_KERNEL_LZMA
>> +	select PCI_GENERIC_SETUP
>>
>>  config MIGHT_HAVE_PCI
>>  	bool
>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>> index 4c1a35f15838..86872246951c 100644
>> --- a/arch/arm/Kconfig
>> +++ b/arch/arm/Kconfig
>> @@ -96,6 +96,7 @@ config ARM
>>  	select PERF_USE_VMALLOC
>>  	select RTC_LIB
>>  	select SYS_SUPPORTS_APM_EMULATION
>> +	select PCI_GENERIC_SETUP
>>  	# Above selects are sorted alphabetically; please add new ones
>>  	# according to that.  Thanks.
>>  	help
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index b2024db225a9..6c684d8c8816 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -115,6 +115,7 @@ config ARM64
>>  	select SPARSE_IRQ
>>  	select SYSCTL_EXCEPTION_TRACE
>>  	select THREAD_INFO_IN_TASK
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  ARM 64-bit (AArch64) Linux support.
>>
>> diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
>> index d140206d5d29..c16214344f1c 100644
>> --- a/arch/m68k/Kconfig
>> +++ b/arch/m68k/Kconfig
>> @@ -22,6 +22,7 @@ config M68K
>>  	select MODULES_USE_ELF_RELA
>>  	select OLD_SIGSUSPEND3
>>  	select OLD_SIGACTION
>> +	select PCI_GENERIC_SETUP
>>
>>  config RWSEM_GENERIC_SPINLOCK
>>  	bool
>> diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
>> index 2828ecde133d..474a7c710686 100644
>> --- a/arch/mips/Kconfig
>> +++ b/arch/mips/Kconfig
>> @@ -70,6 +70,7 @@ config MIPS
>>  	select HAVE_EXIT_THREAD
>>  	select HAVE_REGS_AND_STACK_ACCESS_API
>>  	select HAVE_COPY_THREAD_TLS
>> +	select PCI_GENERIC_SETUP
>>
>>  menu "Machine selection"
>>
>> diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
>> index ee086958b2b2..90a98ac526fb 100644
>> --- a/arch/sh/Kconfig
>> +++ b/arch/sh/Kconfig
>> @@ -48,6 +48,7 @@ config SUPERH
>>  	select HAVE_ARCH_AUDITSYSCALL
>>  	select HAVE_FUTEX_CMPXCHG if FUTEX
>>  	select HAVE_NMI
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  The SuperH is a RISC processor targeted for use in embedded systems
>>  	  and consumer electronics; it was also used in the Sega Dreamcast
>> diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
>> index 5639c9fe5b55..24cea64104bd 100644
>> --- a/arch/sparc/Kconfig
>> +++ b/arch/sparc/Kconfig
>> @@ -424,6 +424,7 @@ config SPARC_LEON
>>  	depends on SPARC32
>>  	select USB_EHCI_BIG_ENDIAN_MMIO
>>  	select USB_EHCI_BIG_ENDIAN_DESC
>> +	select PCI_GENERIC_SETUP
>>  	---help---
>>  	  If you say Y here if you are running on a SPARC-LEON processor.
>>  	  The LEON processor is a synthesizable VHDL model of the
>> diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
>> index 4583c0320059..6679af85a882 100644
>> --- a/arch/tile/Kconfig
>> +++ b/arch/tile/Kconfig
>> @@ -33,6 +33,7 @@ config TILE
>>  	select USER_STACKTRACE_SUPPORT
>>  	select USE_PMC if PERF_EVENTS
>>  	select VIRT_TO_BUS
>> +	select PCI_GENERIC_SETUP
>>
>>  config MMU
>>  	def_bool y
>> diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
>> index 0769066929c6..162a7d3def0c 100644
>> --- a/arch/unicore32/Kconfig
>> +++ b/arch/unicore32/Kconfig
>> @@ -18,6 +18,7 @@ config UNICORE32
>>  	select ARCH_WANT_FRAME_POINTERS
>>  	select GENERIC_IOMAP
>>  	select MODULES_USE_ELF_REL
>> +	select PCI_GENERIC_SETUP
>>  	help
>>  	  UniCore-32 is 32-bit Instruction Set Architecture,
>>  	  including a series of low-power-consumption RISC chip
>> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
>> index e0cacb7b8563..658c9f95ab3f 100644
>> --- a/drivers/pci/Kconfig
>> +++ b/drivers/pci/Kconfig
>> @@ -131,6 +131,9 @@ config PCI_HYPERV
>>            The PCI device frontend driver allows the kernel to import arbitrary
>>            PCI devices from a PCI backend to support PCI driver domains.
>>
>> +config PCI_GENERIC_SETUP
>> +	def_bool n
>> +
>>  source "drivers/pci/hotplug/Kconfig"
>>  source "drivers/pci/dwc/Kconfig"
>>  source "drivers/pci/host/Kconfig"
>> diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
>> index 462c1f5f5546..26f4710c88ec 100644
>> --- a/drivers/pci/Makefile
>> +++ b/drivers/pci/Makefile
>> @@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
>>  #
>>  # Some architectures use the generic PCI setup functions
>>  #
>> -obj-$(CONFIG_ALPHA) += setup-irq.o
>> -obj-$(CONFIG_ARC) += setup-irq.o
>> -obj-$(CONFIG_ARM) += setup-irq.o
>> -obj-$(CONFIG_ARM64) += setup-irq.o
>> -obj-$(CONFIG_UNICORE32) += setup-irq.o
>> -obj-$(CONFIG_SUPERH) += setup-irq.o
>> -obj-$(CONFIG_MIPS) += setup-irq.o
>> -obj-$(CONFIG_TILE) += setup-irq.o
>> -obj-$(CONFIG_SPARC_LEON) += setup-irq.o
>> -obj-$(CONFIG_M68K) += setup-irq.o
>> +obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
>>
>>  #
>>  # ACPI Related PCI FW Functions
>> --
>> 2.13.0
>>
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0


^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0

^ permalink raw reply related	[flat|nested] 117+ messages in thread

* [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
@ 2017-06-23 21:45 Palmer Dabbelt
  0 siblings, 0 replies; 117+ messages in thread
From: Palmer Dabbelt @ 2017-06-23 21:45 UTC (permalink / raw)
  To: rth, ink, mattst88, vgupta, linux, catalin.marinas, will.deacon,
	geert, ralf, ysato, dalias, davem, cmetcalf, gxt, bhelgaas, viro,
	akpm, linux-alpha, linux-kernel, linux-snps-arc,
	linux-arm-kernel, linux-m68k, linux-mips, linux-sh, sparclinux,
	linux-pci, hch
  Cc: Palmer Dabbelt

We wanted to add RISC-V to the list of architectures that used the
generic PCI setup-irq.o inside the Makefile and it was suggested that
instead we define a Kconfig entry and use that.

I've done very minimal testing on this: I just checked to see that
an aarch64 defconfig still build setup-irq.o with the patch applied.
The intention is that this patch doesn't change the behavior of any
build.

Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com>
---
 arch/alpha/Kconfig     |  1 +
 arch/arc/Kconfig       |  1 +
 arch/arm/Kconfig       |  1 +
 arch/arm64/Kconfig     |  1 +
 arch/m68k/Kconfig      |  1 +
 arch/mips/Kconfig      |  1 +
 arch/sh/Kconfig        |  1 +
 arch/sparc/Kconfig     |  1 +
 arch/tile/Kconfig      |  1 +
 arch/unicore32/Kconfig |  1 +
 drivers/pci/Kconfig    |  3 +++
 drivers/pci/Makefile   | 11 +----------
 12 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 0e49d39ea74a..30f4e711f681 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -26,6 +26,7 @@ config ALPHA
 	select ODD_RT_SIGACTION
 	select OLD_SIGSUSPEND
 	select CPU_NO_EFFICIENT_FFS if !ALPHA_EV67
+	select PCI_GENERIC_SETUP
 	help
 	  The Alpha is a 64-bit general-purpose processor designed and
 	  marketed by the Digital Equipment Corporation of blessed memory,
diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
index a5459698f0ee..dd1f64858118 100644
--- a/arch/arc/Kconfig
+++ b/arch/arc/Kconfig
@@ -44,6 +44,7 @@ config ARC
 	select HAVE_GENERIC_DMA_COHERENT
 	select HAVE_KERNEL_GZIP
 	select HAVE_KERNEL_LZMA
+	select PCI_GENERIC_SETUP
 
 config MIGHT_HAVE_PCI
 	bool
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 4c1a35f15838..86872246951c 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -96,6 +96,7 @@ config ARM
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select SYS_SUPPORTS_APM_EMULATION
+	select PCI_GENERIC_SETUP
 	# Above selects are sorted alphabetically; please add new ones
 	# according to that.  Thanks.
 	help
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b2024db225a9..6c684d8c8816 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -115,6 +115,7 @@ config ARM64
 	select SPARSE_IRQ
 	select SYSCTL_EXCEPTION_TRACE
 	select THREAD_INFO_IN_TASK
+	select PCI_GENERIC_SETUP
 	help
 	  ARM 64-bit (AArch64) Linux support.
 
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index d140206d5d29..c16214344f1c 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -22,6 +22,7 @@ config M68K
 	select MODULES_USE_ELF_RELA
 	select OLD_SIGSUSPEND3
 	select OLD_SIGACTION
+	select PCI_GENERIC_SETUP
 
 config RWSEM_GENERIC_SPINLOCK
 	bool
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 2828ecde133d..474a7c710686 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -70,6 +70,7 @@ config MIPS
 	select HAVE_EXIT_THREAD
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_COPY_THREAD_TLS
+	select PCI_GENERIC_SETUP
 
 menu "Machine selection"
 
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index ee086958b2b2..90a98ac526fb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -48,6 +48,7 @@ config SUPERH
 	select HAVE_ARCH_AUDITSYSCALL
 	select HAVE_FUTEX_CMPXCHG if FUTEX
 	select HAVE_NMI
+	select PCI_GENERIC_SETUP
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 5639c9fe5b55..24cea64104bd 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -424,6 +424,7 @@ config SPARC_LEON
 	depends on SPARC32
 	select USB_EHCI_BIG_ENDIAN_MMIO
 	select USB_EHCI_BIG_ENDIAN_DESC
+	select PCI_GENERIC_SETUP
 	---help---
 	  If you say Y here if you are running on a SPARC-LEON processor.
 	  The LEON processor is a synthesizable VHDL model of the
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 4583c0320059..6679af85a882 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -33,6 +33,7 @@ config TILE
 	select USER_STACKTRACE_SUPPORT
 	select USE_PMC if PERF_EVENTS
 	select VIRT_TO_BUS
+	select PCI_GENERIC_SETUP
 
 config MMU
 	def_bool y
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 0769066929c6..162a7d3def0c 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -18,6 +18,7 @@ config UNICORE32
 	select ARCH_WANT_FRAME_POINTERS
 	select GENERIC_IOMAP
 	select MODULES_USE_ELF_REL
+	select PCI_GENERIC_SETUP
 	help
 	  UniCore-32 is 32-bit Instruction Set Architecture,
 	  including a series of low-power-consumption RISC chip
diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index e0cacb7b8563..658c9f95ab3f 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -131,6 +131,9 @@ config PCI_HYPERV
           The PCI device frontend driver allows the kernel to import arbitrary
           PCI devices from a PCI backend to support PCI driver domains.
 
+config PCI_GENERIC_SETUP
+	def_bool n
+
 source "drivers/pci/hotplug/Kconfig"
 source "drivers/pci/dwc/Kconfig"
 source "drivers/pci/host/Kconfig"
diff --git a/drivers/pci/Makefile b/drivers/pci/Makefile
index 462c1f5f5546..26f4710c88ec 100644
--- a/drivers/pci/Makefile
+++ b/drivers/pci/Makefile
@@ -31,16 +31,7 @@ obj-$(CONFIG_PCI_IOV) += iov.o
 #
 # Some architectures use the generic PCI setup functions
 #
-obj-$(CONFIG_ALPHA) += setup-irq.o
-obj-$(CONFIG_ARC) += setup-irq.o
-obj-$(CONFIG_ARM) += setup-irq.o
-obj-$(CONFIG_ARM64) += setup-irq.o
-obj-$(CONFIG_UNICORE32) += setup-irq.o
-obj-$(CONFIG_SUPERH) += setup-irq.o
-obj-$(CONFIG_MIPS) += setup-irq.o
-obj-$(CONFIG_TILE) += setup-irq.o
-obj-$(CONFIG_SPARC_LEON) += setup-irq.o
-obj-$(CONFIG_M68K) += setup-irq.o
+obj-$(CONFIG_PCI_GENERIC_SETUP) += setup-irq.o
 
 #
 # ACPI Related PCI FW Functions
-- 
2.13.0



^ permalink raw reply related	[flat|nested] 117+ messages in thread

end of thread, other threads:[~2017-06-28  0:14 UTC | newest]

Thread overview: 117+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-23 21:45 [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry Palmer Dabbelt
2017-06-23 21:45 ` Palmer Dabbelt
2017-06-23 21:45 ` Palmer Dabbelt
2017-06-23 21:45 ` Palmer Dabbelt
2017-06-23 21:45 ` Palmer Dabbelt
2017-06-23 21:45 ` Palmer Dabbelt
2017-06-23 22:01 ` James Hogan
2017-06-23 22:01 ` James Hogan
2017-06-23 22:01   ` James Hogan
2017-06-23 22:01   ` James Hogan
2017-06-23 22:01   ` James Hogan
2017-06-23 22:01   ` James Hogan
2017-06-23 22:01   ` James Hogan
2017-06-23 22:01   ` James Hogan
2017-06-23 22:08   ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08       ` Palmer Dabbelt
2017-06-23 22:08       ` Palmer Dabbelt
2017-06-23 22:08       ` Palmer Dabbelt
2017-06-23 22:08       ` Palmer Dabbelt
2017-06-23 22:08       ` Palmer Dabbelt
2017-06-24 15:08       ` Richard Henderson
2017-06-24 15:08         ` Richard Henderson
2017-06-24 15:08         ` Richard Henderson
2017-06-24 15:08         ` Richard Henderson
2017-06-24 15:08         ` Richard Henderson
2017-06-26  5:39         ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  5:39           ` kbuild test robot
2017-06-26  7:26           ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26  7:26             ` Geert Uytterhoeven
2017-06-26 20:27             ` Palmer Dabbelt
2017-06-26 20:27             ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27                 ` Palmer Dabbelt
2017-06-26 20:27                 ` Palmer Dabbelt
2017-06-26 20:27                 ` Palmer Dabbelt
2017-06-26 20:27                 ` Palmer Dabbelt
2017-06-27 10:16                 ` Ralf Baechle
2017-06-27 10:18                   ` Ralf Baechle
2017-06-27 10:18                   ` Ralf Baechle
2017-06-27 10:16                   ` Ralf Baechle
2017-06-27 10:16                 ` Ralf Baechle
2017-06-27 10:16                 ` Ralf Baechle
2017-06-27 10:18                 ` Ralf Baechle
2017-06-27 10:18                 ` Ralf Baechle
2017-06-27 10:18                 ` Ralf Baechle
2017-06-27 10:18                 ` Ralf Baechle
2017-06-27 10:18                 ` Ralf Baechle
2017-06-27 10:18                 ` Ralf Baechle
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27               ` Palmer Dabbelt
2017-06-26 20:27             ` Palmer Dabbelt
2017-06-26 20:27             ` Palmer Dabbelt
2017-06-26  7:26           ` Geert Uytterhoeven
2017-06-26  5:39       ` kbuild test robot
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-23 22:08   ` Palmer Dabbelt
2017-06-23 22:08   ` Palmer Dabbelt
2017-06-24  9:14   ` Russell King - ARM Linux
2017-06-24  9:14     ` Russell King - ARM Linux
2017-06-24  9:14     ` Russell King - ARM Linux
2017-06-24  9:14     ` Russell King - ARM Linux
2017-06-24  9:14     ` Russell King - ARM Linux
2017-06-24  9:14     ` Russell King - ARM Linux
2017-06-24  9:14   ` Russell King - ARM Linux
2017-06-24  9:13 ` Russell King - ARM Linux
2017-06-24  9:13   ` Russell King - ARM Linux
2017-06-24  9:13   ` Russell King - ARM Linux
2017-06-24  9:13   ` Russell King - ARM Linux
2017-06-24  9:13   ` Russell King - ARM Linux
2017-06-24  9:13   ` Russell King - ARM Linux
2017-06-24  9:13 ` Russell King - ARM Linux
2017-06-27 23:37 ` Bjorn Helgaas
2017-06-27 23:37   ` Bjorn Helgaas
2017-06-27 23:37   ` Bjorn Helgaas
2017-06-27 23:37   ` Bjorn Helgaas
2017-06-27 23:37   ` Bjorn Helgaas
2017-06-27 23:37   ` Bjorn Helgaas
2017-06-28  0:14   ` Palmer Dabbelt
2017-06-28  0:14     ` Palmer Dabbelt
2017-06-28  0:14     ` Palmer Dabbelt
2017-06-28  0:14     ` Palmer Dabbelt
2017-06-28  0:14     ` Palmer Dabbelt
2017-06-28  0:14     ` Palmer Dabbelt
2017-06-27 23:37 ` Bjorn Helgaas
2017-06-23 21:45 Palmer Dabbelt
2017-06-23 21:45 Palmer Dabbelt
2017-06-23 21:45 Palmer Dabbelt
2017-06-23 21:45 Palmer Dabbelt
2017-06-23 21:45 Palmer Dabbelt
2017-06-23 21:45 Palmer Dabbelt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.