"Ronald G. Minnich" rminnich@lanl.gov writes:
On Tue, 18 Jan 2005, Greg Watson wrote:
I'd like to hear more about what Stefan had in mind for the 'small set of C functions'. Maybe the simplest way would be to pass the device tree itself to the payload? I guess it wouldn't solve the binary/ascii problem, but it would sure as hell make the code easy.
no, that will not work, due to the compiler portability issues. The Plan 9 C compiler won't work against GCC structs in any cases where __attribute(xyz) has been used. We have to be careful here -- not all payloads are compiled with gcc.
That's why I favor the s-expression approach. Binary trees are not going to work.
Taking this one step farther I am not at all convinced that we want to even export a tree. The simplest representation is actually a graph of the connections between hardware devices. This requires one list of hardware devices and a second list of connections.
If we don't export what is physically possible some creative hardware designer will gang up on us in the future. And I'm not certain we don't need that to properly represent irqs in any event.
Eric