On Wednesday 18 July 2007 02:21:14 am Thomas Renninger wrote: > On Tue, 2007-07-17 at 09:49 -0600, Bjorn Helgaas wrote: > > On Monday 16 July 2007 08:21:07 am Thomas Renninger wrote: > > > PNP0C02 devices normally have a lot more IO port declarations than > > > currently defined in PNP_MAX_PORT > > > > Yes. > > > > > I also wonder whether other limits like: > > > #define PNP_MAX_MEM 4 > > > #define PNP_MAX_IRQ 2 > > > #define PNP_MAX_DMA 2 > > > could get exceeded with pnpacpi? > > > > Definitely. I think the current limits come from the PNP ISA spec > > (sec 4.6). I don't see similar limits in the PNPBIOS or ACPI specs, > > so ideally I think they should be dynamically allocated as you suggest. > > > I wanted to implement the dynamic approach and used a dynamically > allocated array, filled up from beginning. While this is close to the > current implementation I thought this is the easiest sufficient way... > (I also only did this for io ports where most mem is wasted). > Now I am thinking about hotplug (e.g. if a SSDT with resources gets > hot-added, removed)... If a device can vanish, the array must get > reordered, not a really well fitting structure, a list (a pnp specific > set up, or from include/linux/list.h?) should be better? I don't understand the array reordering problem. Either a device exists or it doesn't. Loading or unloading an SSDT should not change the number of resources for devices (except that it might add or remove an entire device). I think for now, it would be sufficient to increase PNP_MAX_IRQ to 8 and PNP_MAX_PORT to 32 and be done with it. I don't think it's worth getting more complicated unless we dynamically allocate everything. Bjorn - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html