On Fri, Nov 7, 2008 at 8:46 AM, Myles Watson mylesgw@gmail.com wrote:
My understanding is that the amd8111 _has_ a bridge, but the device that is causing the problem is lpc, which is not a bridge, nor behind the amd8111's bridge. So when its resources are read and it is found to have subtractive resources, the code tries to descend. It doesn't have a bus, and this fails.
you are right. I missed it. That's a good catch.
Do you need those resources added for correct operation?
Even if we had a link, does it make sense to descend the link to read subtractive resources?
I like patch 1 but at the same time it feels like maybe we're not getting at the right problem. If we're that point in the code, and reading links, why are the links not there?
Sorry I wasn't more clear. I meant that the fix no longer tries to call functions with NULL pointers. I don't think the dts is wrong, but I think that there are a lot fewer intermediaries in v3 then there were in v2.
Well, that I like to hear.
Marc made the case that things such as superio should not even be "under" the lpc in the dts, since they stand "outside" the tree in some sense. He argued that we should instead put them at top level. There is merit to his argument. This would simplify the lpc code as well.
Still, this is starting to converge to a more sensible block of code.
ron