Re: PROBLEM: Devices behind PCI Express-to-PCI bridge not mapped

Greg KH
2005-06-04T06:46:44Z

On Sat, Jun 04, 2005 at 01:28:28AM +0200, Andreas Koch wrote:
> [Greg K-H suggested I distribute this more widely]
>
> Hello all,
>
> there appear to be difficulties correctly mapping addresses behind a
> PCI Express-to-PCI bridge in kernel 2.6.12-rc5.
>
> Specifically, this occurs on my Acer Travelmate 8100 notebook (Pentium
> M, Intel 915M chipset) when it is connected via PCI Express to the
> ezDock docking station.

Are you connecting it at boot time, or after the box is up and running?

> While all of the USB and FireWire devices are visible using config
> space reads, they cannot be accessed correctly (all normal reads
> appear to return 0xff). After checking the dmesg logs, I find
>
> PCI: Cannot allocate resource region 7 of bridge 0000:02:00.0
> PCI: Cannot allocate resource region 8 of bridge 0000:02:00.0
>
> This would confirm my hypothesis, since reads go the route of
>
> Processor
> Intel 82801xx ICH6 southbridge
> PCI Express port 3 0000:00:1c.2
> Intel 6702PXH PCIE-PCI bridge 0000:02:00.0
> ezDock-internal PCI bus 0000:03:xx.x
> USB
> Firewire
> ...
>
> Since the PCIE-PCI bridge cannot be memory-mapped, the devices behind it
> cannot be accessed correctly.
>
> I am no expert on debugging this part of the kernel, but I will gladly
> provide additional info to resolve this problem.

Hm, another idea, can you load the pci express and standard pci hotplug
drivers? You might have to "enable" those slots in order for the pci
core to scan the devices and set everything up properly.

To do this, after loading the modules (pciehp and shpchp), look in
/sys/bus/pci/slots/

If there are any "slots" listed there, go into those directories and
"power them on" by simply writing a "1" to the file 'power' by using
echo.

Let us know if that helps out any or not.

Oh, and this isn't "PCI ExpressCard" type hardware is it (next
generation pcmcia/cardbus evolution.)

thanks,

greg k-h