* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] <20170623214538.25967-1-palmer@dabbelt.com> @ 2017-06-23 22:01 ` James Hogan [not found] ` <20170623220104.GE31455@jhogan-linux.le.imgtec.org> ` (2 subsequent siblings) 3 siblings, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <20170623220104.GE31455@jhogan-linux.le.imgtec.org>]
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170623220104.GE31455@jhogan-linux.le.imgtec.org> @ 2017-06-23 22:08 ` Palmer Dabbelt [not found] ` <20170623220857.28774-1-palmer@dabbelt.com> 2017-06-24 9:14 ` Russell King - ARM Linux 2 siblings, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <20170623220857.28774-1-palmer@dabbelt.com>]
* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170623220857.28774-1-palmer@dabbelt.com> @ 2017-06-23 22:08 ` Palmer Dabbelt 2017-06-24 15:08 ` Richard Henderson ` (2 more replies) 0 siblings, 3 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry 2017-06-23 22:08 ` Palmer Dabbelt @ 2017-06-24 15:08 ` Richard Henderson 2017-06-26 5:39 ` kbuild test robot [not found] ` <201706261344.OUjMGlsQ%fengguang.wu@intel.com> 2 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry 2017-06-23 22:08 ` Palmer Dabbelt 2017-06-24 15:08 ` Richard Henderson @ 2017-06-26 5:39 ` kbuild test robot [not found] ` <201706261344.OUjMGlsQ%fengguang.wu@intel.com> 2 siblings, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <201706261344.OUjMGlsQ%fengguang.wu@intel.com>]
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <201706261344.OUjMGlsQ%fengguang.wu@intel.com> @ 2017-06-26 7:26 ` Geert Uytterhoeven 0 siblings, 0 replies; 20+ messages in thread From: Geert Uytterhoeven @ 2017-06-26 7:26 UTC (permalink / raw) To: kbuild test robot Cc: Palmer Dabbelt, kbuild-all@01.org, 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" <linux-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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170623220104.GE31455@jhogan-linux.le.imgtec.org> 2017-06-23 22:08 ` Palmer Dabbelt [not found] ` <20170623220857.28774-1-palmer@dabbelt.com> @ 2017-06-24 9:14 ` Russell King - ARM Linux 2 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] <20170623214538.25967-1-palmer@dabbelt.com> 2017-06-23 22:01 ` [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry James Hogan [not found] ` <20170623220104.GE31455@jhogan-linux.le.imgtec.org> @ 2017-06-24 9:13 ` Russell King - ARM Linux 2017-06-27 23:37 ` Bjorn Helgaas 3 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] <20170623214538.25967-1-palmer@dabbelt.com> ` (2 preceding siblings ...) 2017-06-24 9:13 ` Russell King - ARM Linux @ 2017-06-27 23:37 ` Bjorn Helgaas 3 siblings, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <20170627233740.GN17844@bhelgaas-glaptop.roam.corp.google.com>]
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] <20170627233740.GN17844@bhelgaas-glaptop.roam.corp.google.com> @ 2017-06-28 0:14 ` Palmer Dabbelt 0 siblings, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <CAMuHMdXSrfbSX2de2q35Hj6vQwi+sr23M1LEg82JL+FyLq4OJw@mail.gmail.com>]
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] <CAMuHMdXSrfbSX2de2q35Hj6vQwi+sr23M1LEg82JL+FyLq4OJw@mail.gmail.com> @ 2017-06-26 20:27 ` Palmer Dabbelt [not found] ` <20170626202756.22220-1-palmer@dabbelt.com> 1 sibling, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <20170626202756.22220-1-palmer@dabbelt.com>]
* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-1-palmer@dabbelt.com> @ 2017-06-26 20:27 ` Palmer Dabbelt [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> 1 sibling, 0 replies; 20+ 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] 20+ messages in thread
[parent not found: <20170626202756.22220-2-palmer@dabbelt.com>]
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> @ 2017-06-27 10:16 ` Ralf Baechle 2017-06-27 10:18 ` Ralf Baechle ` (5 subsequent siblings) 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> 2017-06-27 10:16 ` Ralf Baechle @ 2017-06-27 10:18 ` Ralf Baechle 2017-06-27 10:18 ` Ralf Baechle ` (4 subsequent siblings) 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> 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 ` (3 subsequent siblings) 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> ` (2 preceding siblings ...) 2017-06-27 10:18 ` Ralf Baechle @ 2017-06-27 10:18 ` Ralf Baechle 2017-06-27 10:18 ` Ralf Baechle ` (2 subsequent siblings) 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> ` (3 preceding siblings ...) 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 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> ` (4 preceding siblings ...) 2017-06-27 10:18 ` Ralf Baechle @ 2017-06-27 10:18 ` Ralf Baechle 2017-06-27 10:18 ` Ralf Baechle 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* Re: [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry [not found] ` <20170626202756.22220-2-palmer@dabbelt.com> ` (5 preceding siblings ...) 2017-06-27 10:18 ` Ralf Baechle @ 2017-06-27 10:18 ` Ralf Baechle 6 siblings, 0 replies; 20+ 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] 20+ messages in thread
* [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry @ 2017-06-23 21:45 Palmer Dabbelt 0 siblings, 0 replies; 20+ 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] 20+ messages in thread
end of thread, other threads:[~2017-06-28 0:14 UTC | newest]
Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20170623214538.25967-1-palmer@dabbelt.com>
2017-06-23 22:01 ` [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry James Hogan
[not found] ` <20170623220104.GE31455@jhogan-linux.le.imgtec.org>
2017-06-23 22:08 ` Palmer Dabbelt
[not found] ` <20170623220857.28774-1-palmer@dabbelt.com>
2017-06-23 22:08 ` Palmer Dabbelt
2017-06-24 15:08 ` Richard Henderson
2017-06-26 5:39 ` kbuild test robot
[not found] ` <201706261344.OUjMGlsQ%fengguang.wu@intel.com>
2017-06-26 7:26 ` Geert Uytterhoeven
2017-06-24 9:14 ` Russell King - ARM Linux
2017-06-24 9:13 ` Russell King - ARM Linux
2017-06-27 23:37 ` Bjorn Helgaas
[not found] <20170627233740.GN17844@bhelgaas-glaptop.roam.corp.google.com>
2017-06-28 0:14 ` Palmer Dabbelt
[not found] <CAMuHMdXSrfbSX2de2q35Hj6vQwi+sr23M1LEg82JL+FyLq4OJw@mail.gmail.com>
2017-06-26 20:27 ` Palmer Dabbelt
[not found] ` <20170626202756.22220-1-palmer@dabbelt.com>
2017-06-26 20:27 ` Palmer Dabbelt
[not found] ` <20170626202756.22220-2-palmer@dabbelt.com>
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-23 21:45 Palmer Dabbelt
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox