On Tue, Jul 20, 2004 at 09:23:49AM -0700, Wayne Gowcher wrote:
> I am having a problem with a Ti cardbus chip and yenta
> on the 2.6.4 mips kernel whereby when yenta tries to
> configure the cardbus chip, it finds all the resources
> busy ( because they have already been allocated in the
> pci driver ) and so starts allocating new ones.
> Here's the output of the PCI driver
> PCI: Bus 1, cardbus bridge: 0000:00:0c.0
> IO window: 00001000-00001fff
> IO window: 00002000-00002fff
> PREFETCH window: 40000000-41ffffff
> MEM window: 42000000-43ffffff
> PCI: Bus 5, cardbus bridge: 0000:00:0c.1
> IO window: 00003000-00003fff
> IO window: 00004000-00004fff
> PREFETCH window: 44000000-45ffffff
> MEM window: 46000000-47ffffff
> and here's what yenta reports:
> Yenta: CardBus bridge found at 0000:00:0c.0
> yenta 0000:00:0c.0: Preassigned resource 1 busy,
> Yenta: CardBus bridge found at 0000:00:0c.1
> When I run the same 2.6.4 kernel compiled for x86 on a
> x86 laptop, the x86 kernel finds the bar 0 registers
> of the cardbus chip and adds them to it's resource
> space, but probes no further. So that later when yenta
> probes the cardbus chip, it can allocate the resources
> without conflict.
> I also found the following comment in
> drivers/pci/probe.c pci_scan_bridge :
> * If it's a bridge, configure it and scan the bus
> behind it.
> * For CardBus bridges, we don't scan behind as the
> devices will
> * be handled by the bridge driver itself.
> But the code does scan behind teh cardbus bridge and
> add resources to iomem_resources and ioport_resources.
> So as I wrote in my title, does anyone know if :
> the pci driver should probe behind a cardbus bridge at
> boot up or if it should be left to the yenta cardbus ?
It should not - me think anyway.
Maybe you can tell us _why_, given the same code, i386 does
not scan behind yenta.