Thread (32 messages) 32 messages, 12 authors, 2014-11-04
STALE4253d
Revisions (20)
  1. rfc [diff vs current]
  2. rfc [diff vs current]
  3. rfc [diff vs current]
  4. rfc [diff vs current]
  5. rfc [diff vs current]
  6. rfc [diff vs current]
  7. rfc [diff vs current]
  8. rfc [diff vs current]
  9. rfc [diff vs current]
  10. rfc [diff vs current]
  11. rfc [diff vs current]
  12. rfc [diff vs current]
  13. rfc current
  14. rfc [diff vs current]
  15. rfc [diff vs current]
  16. v2 [diff vs current]
  17. v2 [diff vs current]
  18. v2 [diff vs current]
  19. v3 [diff vs current]
  20. v3 [diff vs current]

[RFC PATCH 2/2] arm: pcibios: move to generic PCI domains

From: Lorenzo Pieralisi <hidden>
Date: 2014-11-03 11:06:41
Also in: linux-pci

Hi Phil,

On Fri, Oct 31, 2014 at 01:43:49PM +0000, Phil Edworthy wrote:
Hi Lorenzo,

On 30 October 2014 11:45, Lorenzo wrote:
quoted
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@arndb.de>
Cc: Phil Edworthy <redacted>
Cc: Jason Gunthorpe <redacted>
Cc: Jingoo Han <redacted>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Russell King <redacted>
Cc: Mohit Kumar <redacted>
Signed-off-by: Lorenzo Pieralisi <redacted>
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 <redacted>
Thank you very much.

Lorenzo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help