pci_bus_for_each_resource, transparent bridges and rsrc_nonstatic.c

Bjorn Helgaas bjorn.helgaas at hp.com
Mon Mar 22 18:28:55 EDT 2010


On Monday 22 March 2010 02:51:21 pm Dominik Brodowski wrote:
> On Mon, Mar 22, 2010 at 01:36:03PM -0700, Bjorn Helgaas wrote:
> > > You can still use subtractive-decoded resources, but then you have to add
> > > them to /etc/pcmcia/config.opts and run pcmcia-startup-bridges (or echo the
> > > resource to a sysfs file).
> > 
> > It's too bad we still have such manual configuration.
> 
> Agreed.
> 
> > Is there still
> > information there that we can't figure out automatically?
> 
> That's unknown to me -- are there any ISA-capable systems being sold? If so,
> then I suspect the answer may be "yes".
> 
> > > Now, "usecrs" is only used on 2008-or-newer systems where we _hope_ that all
> > > resource "consumers" are accounted for. So the problem might be mitigated.
> > > However, I wouldn't dare to use ioports 0x0-0xff anyways for they usually
> > > are used for onboard legacy devices...
> > 
> > Right.  But PCMCIA is at no greater risk than regular PCI, right?
> > It looks like both will allocate only above PCIBIOS_MIN_IO (0x1000).
> 
> No, PCMCIA will happily allocate below this limit.

I saw "#define PCIBIOS_MIN_CARDBUS_IO PCIBIOS_MIN_IO" in yenta_socket.c
and assumed it would take care of this, but I didn't look any deeper.

I'm still confused about why PCMCIA is "special" in this regard and
why pci=use_crs breaks it.  Can you make up an example that illustrates
the problem?

Bjorn



More information about the linux-pcmcia mailing list