Re: [PATCH 02/39] x86, PCI: have own version for pcibios_bus_to_resource

From: Bjorn Helgaas
Date: Wed Feb 29 2012 - 18:20:31 EST


On Wed, Feb 29, 2012 at 4:07 PM, Yinghai Lu <yinghai@xxxxxxxxxx> wrote:
> x86 does not need to offset the address. So we can skip that costing offset
> searching.

I tried to start a discussion about this patch (and others), but I
don't think you responded:
http://marc.info/?l=linux-pci&m=133036414506921&w=2

It's discouraging to spend time reviewing all your patches and trying
to give useful feedback, when all I get in response is a deluge of
fresh patches.

Bjorn

> Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
> ---
>  arch/x86/pci/i386.c       |   14 ++++++++++++++
>  drivers/pci/host-bridge.c |    9 +++++----
>  2 files changed, 19 insertions(+), 4 deletions(-)
>
> diff --git a/arch/x86/pci/i386.c b/arch/x86/pci/i386.c
> index 33e6a0b..eeed28e 100644
> --- a/arch/x86/pci/i386.c
> +++ b/arch/x86/pci/i386.c
> @@ -335,6 +335,20 @@ void __init pcibios_resource_survey(void)
>  */
>  fs_initcall(pcibios_assign_resources);
>
> +void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region,
> +                            struct resource *res)
> +{
> +       region->start = res->start;
> +       region->end = res->end;
> +}
> +
> +void pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res,
> +                            struct pci_bus_region *region)
> +{
> +       res->start = region->start;
> +       res->end = region->end;
> +}
> +
>  static const struct vm_operations_struct pci_mmap_ops = {
>        .access = generic_access_phys,
>  };
> diff --git a/drivers/pci/host-bridge.c b/drivers/pci/host-bridge.c
> index 5ca4220..dfaff3f 100644
> --- a/drivers/pci/host-bridge.c
> +++ b/drivers/pci/host-bridge.c
> @@ -38,8 +38,9 @@ static bool resource_contains(struct resource *res1, struct resource *res2)
>        return res1->start <= res2->start && res1->end >= res2->end;
>  }
>
> -void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region,
> -                            struct resource *res)
> +void __weak pcibios_resource_to_bus(struct pci_dev *dev,
> +                                   struct pci_bus_region *region,
> +                                   struct resource *res)
>  {
>        struct pci_host_bridge *bridge = pci_host_bridge(dev);
>        struct pci_host_bridge_window *window;
> @@ -66,8 +67,8 @@ static bool region_contains(struct pci_bus_region *region1,
>        return region1->start <= region2->start && region1->end >= region2->end;
>  }
>
> -void pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res,
> -                            struct pci_bus_region *region)
> +void __weak pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res,
> +                                   struct pci_bus_region *region)
>  {
>        struct pci_host_bridge *bridge = pci_host_bridge(dev);
>        struct pci_host_bridge_window *window;
> --
> 1.7.7
>
--
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/