Re: [PATCH v3 3/5] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range

2013-05-07 Thread Yinghai Lu
On Tue, May 7, 2013 at 6:16 PM, Benjamin Herrenschmidt wrote: > On Tue, 2013-05-07 at 15:44 -0700, Yinghai Lu wrote: >> x86 32 socket system, we may need to leave more mmiol for only several >> sockets to make them work with cards that does not support mmio 64 bit >> pref. > > Ok, while on POWER e

Re: [PATCH v3 3/5] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range

2013-05-07 Thread Benjamin Herrenschmidt
On Tue, 2013-05-07 at 15:44 -0700, Yinghai Lu wrote: > x86 32 socket system, we may need to leave more mmiol for only several > sockets to make them work with cards that does not support mmio 64 bit > pref. Ok, while on POWER each root bridge has its own distinct 32-bit space (mapped elsewhere in

Re: [PATCH v3 3/5] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range

2013-05-07 Thread Yinghai Lu
On Tue, May 7, 2013 at 3:28 PM, Benjamin Herrenschmidt wrote: > On Tue, 2013-05-07 at 15:17 -0700, Yinghai Lu wrote: >> For x86 8 sockets or 32 sockets system that will have one root bus per >> socket, >> They may have some root buses do not have mmio non-pref range. > > That seems very odd. Most

Re: [PATCH v3 3/5] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range

2013-05-07 Thread Benjamin Herrenschmidt
On Tue, 2013-05-07 at 15:17 -0700, Yinghai Lu wrote: > For x86 8 sockets or 32 sockets system that will have one root bus per socket, > They may have some root buses do not have mmio non-pref range. That seems very odd. Most device registers are non-prefetchable. I know of no adapter today that wo

[PATCH v3 3/5] PCI: Skip IORESOURCE_MMIO allocation for root bus without MMIO range

2013-05-07 Thread Yinghai Lu
For x86 8 sockets or 32 sockets system that will have one root bus per socket, They may have some root buses do not have mmio non-pref range. We should not fall into retry in this case, as root bus does not mmio non-pref range. We check if the root bus has mmio-nonpref range, and set bus_res_type