Re: [PATCH 9/9] pci: set PCI_PREF_RANGE_TYPE_64 inpci_bridge_check_ranges

From: Alex Chiang
Date: Thu Jan 21 2010 - 16:32:35 EST


* Yinghai Lu <yinghai@xxxxxxxxxx>:
> make pci_bridge_check_ranges() to store the
> PCI_PREF_RANGE_TYPE_64 in addition to IORESOURCE_MEM_64. just
> like pci_read_bridge_bases()
>
> Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
> ---
> drivers/pci/setup-bus.c | 5 ++++-
> 1 files changed, 4 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
> index a9c4f9e..8fafe73 100644
> --- a/drivers/pci/setup-bus.c
> +++ b/drivers/pci/setup-bus.c
> @@ -359,8 +359,11 @@ static void pci_bridge_check_ranges(struct pci_bus *bus)
> }
> if (pmem) {
> b_res[2].flags |= IORESOURCE_MEM | IORESOURCE_PREFETCH;
> - if ((pmem & PCI_PREF_RANGE_TYPE_MASK) == PCI_PREF_RANGE_TYPE_64)
> + if ((pmem & PCI_PREF_RANGE_TYPE_MASK) ==
> + PCI_PREF_RANGE_TYPE_64) {
> b_res[2].flags |= IORESOURCE_MEM_64;
> + b_res[2].flags |= PCI_PREF_RANGE_TYPE_64;
> + }
> }

My copy of pci_read_bridge_bases() in jbarnes's linux-next tree
doesn't do anything like that.

284 void __devinit pci_read_bridge_bases(struct pci_bus *child)
285 {
...
369 if (base <= limit) {
370 res->flags = (mem_base_lo & PCI_PREF_RANGE_TYPE_MASK) |
371 IORESOURCE_MEM | IORESOURCE_PREFETCH;
372 if (res->flags & PCI_PREF_RANGE_TYPE_64)
373 res->flags |= IORESOURCE_MEM_64;
374 res->start = base;
375 res->end = limit + 0xfffff;
376 dev_printk(KERN_DEBUG, &dev->dev, " bridge window %pR\n", res);
377 }

What's going on?

/ac
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/