On Thu, 14 Feb 2008, Linus Torvalds wrote:
It should insert the resource to the root resource (or a bridge resource), or not at all. If somebody else has already inserted a real device resource, we already know about it, and the PnP information is going to be just making things worse.
Hmm. The approach I'd take is to always insert the thing into the root resource. If we do want to let PnP insert it into some lower-level bus, we'd need to have some way to distinguish "bus" from "device", and we don't.
So right now, how about just making PnP/ACPI just use
root = (flags & IORESOURCE_MEM) ? iomem_resource : ioport_resource; request_resource(root, newresource);
which is what we do for the e820 map and the other special resources we know about (ie the magic resources we make up ourselves like video ram and our standard PCI/ISA resource lists like the <0x100 DMA/PIC/FPU IO ports etc)
Linus