On Tue, 30 Sep 2008, Rene Herman wrote:
I think you got the logic the wrong way around:
+ /* have we been registered already? */
+ if (pci_res->parent)
+ continue;
This ignores resources that are _registered_, but it should be the other
way around - we should ignore resources that aren't (because they may be
invalid or they may move around)
+ pci_start = pci_res->start;
+ pci_end = pci_res->end;
+
+ if (pci_end < pci_start || !pci_end)
+ continue;
Hmm. This should be unnecessary with any registered resource, since the
resource code wouldn't allow registering such a resource in the first
place.
Of course, it may be that the PnP code runs too early, and we have only
parsed the PCI resources, not inserted them into the resource tree yet. If
so, none of this will work, of course.
Linus
--
