Il 17/09/2012 11:02, Peter A. G. Crosthwaite ha scritto: > First revision of fdt generic infrastructure. These modules allow > for fdt generic machine models, which create machines to match a device > tree specification.
Ok, so here is the famous coroutine-based FDT generation. :) It does look pretty, to be fair. However, as things stand there is nothing (I think) that really requires coroutines. A simple 2-pass initialization would do, with links and irqs connected on the second pass. I'm wondering how your patch fares in terms of error handling for example; can you end up with partially-uninitialized devices or infinite loops? If so, why not? It would be nice if you included some simple qtest test cases. They would generate a few machines with different device trees and check that the output of "info qtree" matches somewhat the device tree. Rough checks should not be hard to implement, and would provide some guidance to people who want to hack the code. Paolo