linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Palmer Dabbelt <palmer@dabbelt.com>
To: helgaas@kernel.org
Cc: rth@twiddle.net
Cc: ink@jurassic.park.msu.ru
Cc: mattst88@gmail.com
Cc: vgupta@synopsys.com
Cc: linux@armlinux.org.uk
Cc: catalin.marinas@arm.com
Cc: will.deacon@arm.com
Cc: geert@linux-m68k.org
Cc: ralf@linux-mips.org
Cc: ysato@users.sourceforge.jp
Cc: dalias@libc.org
Cc: davem@davemloft.net
Cc: cmetcalf@mellanox.com
Cc: gxt@mprc.pku.edu.cn
Cc: bhelgaas@google.com
Cc: viro@zeniv.linux.org.uk
Cc: akpm@linux-foundation.org
Cc: linux-alpha@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-snps-arc@lists.infradead.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-m68k@vger.kernel.org
Cc: linux-mips@linux-mips.org
Cc: linux-sh@vger.kernel.org
Cc: sparclinux@vger.kernel.org
Cc: linux-pci@vger.kernel.org
Cc: hch@infradead.org
Cc: lorenzo.pieralisi@arm.com
Subject: Re: [PATCH] pci:  Add and use PCI_GENERIC_SETUP Kconfig entry
Date: Tue, 27 Jun 2017 17:14:20 -0700 (PDT)	[thread overview]
Message-ID: <mhng-6085a11b-60d7-4b83-a40c-ee395a951e53@palmer-si-x1c4> (raw)
In-Reply-To: <20170627233740.GN17844@bhelgaas-glaptop.roam.corp.google.com>

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

      reply	other threads:[~2017-06-28  0:14 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-23 21:45 [PATCH] pci: Add and use PCI_GENERIC_SETUP Kconfig entry Palmer Dabbelt
2017-06-23 22:01 ` James Hogan
2017-06-23 22:08   ` Palmer Dabbelt
2017-06-23 22:08     ` Palmer Dabbelt
2017-06-24 15:08       ` Richard Henderson
2017-06-26  5:39       ` kbuild test robot
2017-06-26  7:26         ` Geert Uytterhoeven
2017-06-26 20:27           ` Palmer Dabbelt
2017-06-26 20:27             ` Palmer Dabbelt
2017-06-27 10:16               ` Ralf Baechle
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
2017-06-28  0:14   ` Palmer Dabbelt [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=mhng-6085a11b-60d7-4b83-a40c-ee395a951e53@palmer-si-x1c4 \
    --to=palmer@dabbelt.com \
    --cc=helgaas@kernel.org \
    --cc=rth@twiddle.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).