diff options
author | Bin Meng <bmeng.cn@gmail.com> | 2016-02-01 01:40:50 -0800 |
---|---|---|
committer | Bin Meng <bmeng.cn@gmail.com> | 2016-02-05 12:47:22 +0800 |
commit | 819133d9f591bfc187218342702b2ff69eecca25 (patch) | |
tree | 700578edd673fb932d318f72e78f849e8217d707 /arch/x86/cpu/irq.c | |
parent | e75711a4bf2aa8dfd33f79e622cd51306c34a37b (diff) | |
download | u-boot-imx-819133d9f591bfc187218342702b2ff69eecca25.zip u-boot-imx-819133d9f591bfc187218342702b2ff69eecca25.tar.gz u-boot-imx-819133d9f591bfc187218342702b2ff69eecca25.tar.bz2 |
x86: irq: Get irq_router's bdf via dm_pci_get_bdf()
There is no need to parse PCH's <reg> property as we have already
a DM PCI API dm_pci_get_bdf() that can handle this.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/x86/cpu/irq.c')
-rw-r--r-- | arch/x86/cpu/irq.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/arch/x86/cpu/irq.c b/arch/x86/cpu/irq.c index 0b36ace..cc0297f 100644 --- a/arch/x86/cpu/irq.c +++ b/arch/x86/cpu/irq.c @@ -86,26 +86,19 @@ static inline void fill_irq_info(struct irq_info *slot, int bus, int device, static int create_pirq_routing_table(struct udevice *dev) { const void *blob = gd->fdt_blob; - struct fdt_pci_addr addr; int node; int len, count; const u32 *cell; struct irq_routing_table *rt; struct irq_info *slot, *slot_base; int irq_entries = 0; - int parent; int i; int ret; node = dev->of_offset; - parent = dev->parent->of_offset; - ret = fdtdec_get_pci_addr(blob, parent, FDT_PCI_SPACE_CONFIG, - "reg", &addr); - if (ret) - return ret; /* extract the bdf from fdt_pci_addr */ - irq_router.bdf = addr.phys_hi & 0xffff00; + irq_router.bdf = dm_pci_get_bdf(dev->parent); ret = fdt_find_string(blob, node, "intel,pirq-config", "pci"); if (!ret) { |