diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2011-02-22 15:07:42 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-23 16:27:53 -0500 |
commit | 96e0a0797eba35b5420c710b928f19094b2d5c45 (patch) | |
tree | 4a9073fc9415b024437a5d8b56791632a14153cf /drivers | |
parent | ffb9fc68dff38f811eeb24c15aba0418b6a8ee53 (diff) |
x86: dtb: Add support for PCI devices backed by dtb nodes
x86_of_pci_init() does two things:
- it provides a generic irq enable and disable function. enable queries
the device tree for the interrupt information, calls ->xlate on the
irq host and updates the pci->irq information for the device.
- it walks through PCI bus(es) in the device tree and adds its children
(device) nodes to appropriate pci_dev nodes in kernel. So the dtb
node information is available at probe time of the PCI device.
Adding a PCI bus based on the information in the device tree is
currently not supported. Right now direct access via ioports is used.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Tested-by: Dirk Brandewie <dirk.brandewie@gmail.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Cc: sodaville@linutronix.de
Cc: devicetree-discuss@lists.ozlabs.org
LKML-Reference: <1298405266-1624-8-git-send-email-bigeasy@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/of/Kconfig | 2 | ||||
-rw-r--r-- | drivers/of/of_pci.c | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/of/Kconfig b/drivers/of/Kconfig index efabbf9dd607..d06a6374ed6c 100644 --- a/drivers/of/Kconfig +++ b/drivers/of/Kconfig | |||
@@ -71,7 +71,7 @@ config OF_MDIO | |||
71 | 71 | ||
72 | config OF_PCI | 72 | config OF_PCI |
73 | def_tristate PCI | 73 | def_tristate PCI |
74 | depends on PCI && (PPC || MICROBLAZE) | 74 | depends on PCI && (PPC || MICROBLAZE || X86) |
75 | help | 75 | help |
76 | OpenFirmware PCI bus accessors | 76 | OpenFirmware PCI bus accessors |
77 | 77 | ||
diff --git a/drivers/of/of_pci.c b/drivers/of/of_pci.c index 314535fa32c1..ac1ec54e4fd5 100644 --- a/drivers/of/of_pci.c +++ b/drivers/of/of_pci.c | |||
@@ -1,5 +1,6 @@ | |||
1 | #include <linux/kernel.h> | 1 | #include <linux/kernel.h> |
2 | #include <linux/of_pci.h> | 2 | #include <linux/of_pci.h> |
3 | #include <linux/of_irq.h> | ||
3 | #include <asm/prom.h> | 4 | #include <asm/prom.h> |
4 | 5 | ||
5 | /** | 6 | /** |