RFC ARM: use C pre-processor with dtc
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest0 of 3 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 3 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [RFC PATCH 0/3] ARM: use C pre-processor with dtc
Quoted 9 lines · Scott Wood
Quoted 8 lines · Mark Brown
Quoted 5 lines · Scott Wood
Do you have an example of where you'd actually benefit from this? I'd think most things could either be done reasonably well with what's built into DTC (see what we've done in
arch/powerpc/boot/dts/fsl), or would need math expression support in DTC (or has that been added?).
Quoted 7 lines
Quoted 3 lines
The constant example is the magic numbers we need to embed into DTs for things like interrupt modes, making them human readable would be a real win.
Wasn't there a patch for named constant support in dtc a while back? Hmm:
https://lists.ozlabs.org/pipermail/devicetree-discuss/2012-January/011184.html
Yes. There has basically been zero traction on that front. I'm trying to push a scheme that requires minimal changes to dtc itself in the hope that will move /something/ forward at greater than zero speed.
Quoted 2 lines
I'm not sure that going down the CPP path is better than the possibility of named constants having a different syntax from macros/functions.
I've come around to thinking that using something external to dtc is actually very advantageous. The main benefit here is that a C-syntax (well, cpp-syntax) header file can be included by both DT code and C code, and hence there's no need to duplicate the constant definitions. Equally, this way, anyone is free to go ahead and use whatever tools they want for the pre-processing; as long as a valid DT comes out the end of it, dtc can eat it. This gives us flexibility to change solutions without having to change dtc. Plus, we don't all have to be language-lawyers and invent yet another language inside dtc; all the parts are already written for us, except for a tiny amount of glue.