Subject: Re: ioremap fails for a device in PCI-E slot on AMCC katmai board

From: Benjamin Herrenschmidt <[email-masked]>
Date: Sat, 21 Feb 2009 15:38:03 +1100

On Fri, 2009-02-20 at 17:35 -0800, Shubhada Pugaonkar wrote:

> ****************************************************
> 
> cxgb3_main.c:
> 
>         mmio_start = pci_resource_start(pdev, 0);
> 
>         mmio_len = pci_resource_len(pdev, 0);
> 
>         ai = t3_get_adapter_info(ent->driver_data);
> 

My bet is that mmio_start is an unsigned long instead of a
resource_size_t and thus gets cropped (ie, driver bug).

 (/me goes read the source)

Yes, indeed, that's the problem. Change the definition
of mmio_start and mmio_len to resource_size_t, that should
fix it. I suspect the other driver has the same problem.

Note: They will still get cropped, I suspect, when copied
to netdev->mem_start, nothing much to do here, but fortunately
those fields aren't used.

BTW. If you do patches to fix those drivers, please send them
to the [email-masked] mailing list too.

Cheers,
Ben.