Subject: PCI IO range limitation

From: Marian Balakowicz <[email-masked]>
Date: Thu, 28 Jun 2007 12:20:04 +0200

Hi,

Trying to change PCI IO window base for 52xx target I found that
we are pretty much limited to a "0" offset only.

pci_process_bridge_OF_ranges() will not process any IO range that has
addresses set to anything else.

956:      case 1:         /* I/O space */
957:               if (ranges[2] != 0)
958:                       break;

When this range[2] checking is removed from
pci_process_bridge_OF_ranges() kernel boots ok with the non-zero PCI IO
base, but the PCI device I am using (e100) will not work.

I guess that with the above dropping of non-zero based PCI IO ranges
this is not supposed to be working. But does anyone know why?

Thanks,
Marian