[coreboot] domain vs device statictree order

Myles Watson mylesgw at gmail.com
Tue Jan 6 22:56:46 CET 2009


> Myles,
> 
> Should the domain functions run before the device functions?
Yes.

> It looks
> like the device functions run before the domain but I would expect it
> to be the other way.

Me too.

> This is a problem for Geode LX. It has the VSA
> and graphics memory init in the domain phase2_fixup but it is running
> after the 5536 devices run phase2_fixup and is a problem.

Sorry it broke.  Since I don't have the hardware I can't test very well.  I
had a patch that moved those functions, but I broke something else and
re-simplified.  I'll send you a patch, and maybe together we can do it
right.

> 
> statictree: http://pastebin.ca/1301081
> .next = &dev_domain_0 -  is the link from the last pci device in the
> domain to the domain device.

Yeah.  That seems like the "root" of the problem.  Because of the way the
statictree is made, anything done in device order ends up being depth-first.
You have to specify to make things breadth first, which seems like the
correct way.

> serial output: http://pastebin.ca/1301072

Thanks,
Myles





More information about the coreboot mailing list