PCI: Add generic domain handling
authorCatalin Marinas <catalin.marinas@arm.com>
Mon, 29 Sep 2014 14:29:26 +0000 (15:29 +0100)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 30 Sep 2014 23:08:57 +0000 (17:08 -0600)
commit670ba0c8883b576d0aec28bd7a838358a4be1406
treefd0b13325b9c832f5d56a969d154d5d4a235b6c2
parent0b0b0893d49b34201a6c4416b1a707b580b91e3d
PCI: Add generic domain handling

The handling of PCI domains (or PCI segments in ACPI speak) is usually a
straightforward affair but its implementation is currently left to the
architectural code, with pci_domain_nr(b) querying the value of the domain
associated with bus b.

This patch introduces CONFIG_PCI_DOMAINS_GENERIC as an option that can be
selected if an architecture wants a simple implementation where the value
of the domain associated with a bus is stored in struct pci_bus.

The architectures that select CONFIG_PCI_DOMAINS_GENERIC will then have to
implement pci_bus_assign_domain_nr() as a way of setting the domain number
associated with a root bus.  All child buses except the root bus will
inherit the domain_nr value from their parent.

Signed-off-by: Catalin Marinas <Catalin.Marinas@arm.com>
[Renamed pci_set_domain_nr() to pci_bus_assign_domain_nr()]
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Arnd Bergmann <arnd@arndb.de>
drivers/pci/probe.c
include/linux/pci.h