Re: [solved] Yenta Cardbus allocation failure

From: Markus Rechberger
Date: Tue Dec 19 2006 - 04:25:22 EST


On 12/19/06, Chuck Ebbert <76306.1226@xxxxxxxxxxxxxx> wrote:
In-Reply-To: <d9def9db0612181612v657197ees925609243fc1ef65@xxxxxxxxxxxxxx>

On Tue, 19 Dec 2006 01:12:07 +0100, Markus Rechberger wrote:

> I went on with investigating that problem and found the problem,
> though I'm not sure if that solution is acceptable..
>
> seems like the memory range gets preallocated in setup-bus.c, and
> CARDBUS_MEM_SIZE defines that size.
>
> I changed
> #define CARDBUS_MEM_SIZE (32*1024*1024)
> to
> #define CARDBUS_MEM_SIZE (48*1024*1024)
>
> and now the system is able to allocate the resources for the 3rd
> pci/pcmcia function.
>
> Can anyone please have a closer look at it too? I think the whole
> implementation isn't really good there..
>
> so this is the new output of iomem:
> $ cat /proc/iomem
> ...
> 30000000-35ffffff : PCI Bus #02
> 30000000-32ffffff : PCI CardBus #03
> 36000000-360003ff : 0000:00:1f.1
> 39000000-3bffffff : PCI CardBus #03
> 39000000-39ffffff : 0000:03:00.0
> 3a000000-3affffff : 0000:03:00.1
> 3b000000-3bffffff : 0000:03:00.2 <- this one failed to allocate
previously

Wow, 3 regions of 16MB each! Your change fixes this problem for you, but
what if someone needs four such regions?


I documented everything I found about that issue (even the allocated
resources in window$)
http://linuxtv.org/v4lwiki/index.php/Talk:Pinnacle/310c#PCI_allocation_failed

that's why I wrote that the current implementation isn't nice..
I'm currently on the cx88 driver (which needs that memory region) to
get my Pinnacle Cardbus device work..
I won't get back to the PCI subsystem before I'm done with it.

Markus
-
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/