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?