On Sat, Mar 27, 2010 at 08:03:40PM +0100, Peter Stuge wrote: > Dominik Brodowski wrote: > > can we safely trust BIOS authors to get it right? > > As a long time member of the coreboot project I can assure you that > the answer to that is "No!!"
Thanks. Jesse, Bjorn: recalling my mesage of 22 March 2010, what's your opinion on the two options spelled out there: | (1) The best way seems to be to skip all resources of type | PCI_SUBTRACTIVE_DECODE, but this flag is only stored in | struct pci_bus_resource, which is hard to access, and nonexistent for the | first four resources. Actually, the "flag" field is unused otherwise. Could | we set res->flags |= PCI_SUBTRACTIVE_DECODE instead? (it probably needs to | be != 0x1 then, but anyways). Then it's trivial in rsrc_nonstatic.c | | (2) An alternative would be to | | diff --git a/drivers/pcmcia/rsrc_nonstatic.c b/drivers/pcmcia/rsrc_nonstatic.c | index ba3a53e..b0e60a1 100644 | --- a/drivers/pcmcia/rsrc_nonstatic.c | +++ b/drivers/pcmcia/rsrc_nonstatic.c | @@ -933,7 +933,8 @@ static int nonstatic_autoadd_resources(struct pcmcia_socket *s) | return -EINVAL; | #endif | | - pci_bus_for_each_resource(s->cb_dev->bus, res, i) { | + for (i = 0; i < PCI_BRIDGE_RESOURCE_NUM; i++) { | + res = s->cb_dev->bus->resource[i]; | if (!res) | continue; Best, Dominik _______________________________________________ Linux PCMCIA reimplementation list http://lists.infradead.org/mailman/listinfo/linux-pcmcia