[RFC PATCH 2/2] arm: pcibios: move to generic PCI domains
lorenzo.pieralisi at arm.com
Mon Nov 3 03:06:41 PST 2014
On Fri, Oct 31, 2014 at 01:43:49PM +0000, Phil Edworthy wrote:
> Hi Lorenzo,
> On 30 October 2014 11:45, Lorenzo wrote:
> > Most if not all ARM PCI host controller device drivers either ignore the
> > domain field in the pci_sys_data structure or just increment it every
> > time a host controller is probed, using it as a domain counter.
> > Therefore, instead of relying on pci_sys_data to stash the domain number
> > in a standard location, ARM pcibios code can be moved to the newly
> > introduced generic PCI domains code, implemented in commits:
> > commit 41e5c0f81d3e676d671d96a0a1fafb27abfbd9
> > ("of/pci: Add pci_get_new_domain_nr() and of_get_pci_domain_nr()")
> > commit 670ba0c8883b576d0aec28bd7a838358a4be1
> > ("PCI: Add generic domain handling")
> > In order to assign a domain number dynamically, the ARM pcibios defines
> > the function, called by core PCI code:
> > void pci_bus_assign_domain_nr(...)
> > that relies on a DT property to define the domain number or falls back to
> > a counter; its usage replaces the current domain assignment code in PCI
> > host controllers present in the kernel.
> > Cc: Arnd Bergmann <arnd at arndb.de>
> > Cc: Phil Edworthy <phil.edworthy at renesas.com>
> > Cc: Jason Gunthorpe <jgunthorpe at obsidianresearch.com>
> > Cc: Jingoo Han <jg1.han at samsung.com>
> > Cc: Bjorn Helgaas <bhelgaas at google.com>
> > Cc: Russell King <linux at arm.linux.org.uk>
> > Cc: Mohit Kumar <mohit.kumar at st.com>
> > Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi at arm.com>
> This patch fixes a current problem with R-Car devices where there is an
> internal PCI bridge and an external PCIe bridge on the devices. Both drivers
> work independently but need to be on different domains. Just needed to enable
> PCI_DOMAINS along with this.
> I've done basic testing that the internal PCI and external PCIe work at the
> same time.
> Acked-by: Phil Edworthy <phil.edworthy at renesas.com>
Thank you very much.
More information about the linux-arm-kernel