Cc: Bjorn Helgaas <bjorn.helgaas@...>, Jesse Barnes <jbarnes@...>, Len Brown <lenb@...>, Frans Pop <elendil@...>, Rafael J. Wysocki <rjw@...>, <linux-kernel@...>, <linux-pci@...>, <linux-acpi@...>, Adam Belay <abelay@...>, Avuton Olrich <avuton@...>, Karl Bellve <karl.bellve@...>, Willem Riede <wriede@...>, Matthew Hall <mhall@...>
I believe the possible issue is that resources that do _not_ (seem to)
start at zero might also be disabled.
Bjorn commented that pci_resource_start() returns a CPU address for I/O
which might not be the actual I/O address on some platforms. I haven't a
clue if that's actually possible "wherever PnP is relevent" as you put
it but that seems to otherwise make sense.
If it does though, it might for all I know also be possible to check
against some ARCH_SPECIFIC_INVALID_IO_ADDRESS instead of plain unadorned
0 (or just recheck the actual BAR again if not stored anywhere).
But that's the issue as I understood it: we might miss them on some
platforms if checking against 0...