DTC/dts modifications

Kim Phillips kim.phillips at freescale.com
Tue May 2 06:07:28 EST 2006


On Mon, 1 May 2006 14:52:23 -0500
Kumar Gala <galak at kernel.crashing.org> wrote:

> [snip]
> 
> >> Try running a current .dts through cpp today.  You will get errors  
> >> like:
> >>
> >> oftree.dts:15:3: error: invalid preprocessing directive #address
> >
> >> Because of props like:
> >>
> >>        #cpus = <1>;
> >>        #address-cells = <1>;
> >>        #size-cells = <0>;
> >>
> >> If these used some other symbol instead of '#' cpp will be happy and
> >> we can use it to create macros for us.
> >
> > Yeah, we're not going to be able to change those; they
> > are "By The Book".
> 
> By what book?  It would seem to me that BNF for dtc is completely  
> under our control and if we want to change it we can.  I understand  
> that there is some correspondence to Open Firmware, but it seems that  
> if its people are ok with the dts format changing that's a lot easier  
> than implementing tons of support in dtc for features that cpp gives us.
> 
> [I'm also guessing no one's really got time to go and implement these  
> features in dtc]
> 
cpp -x assembler-with-cpp seems to not produce the above errors, and still honours preprocessing directives like #define.  Don't know what else is messes with, and whether you want to add CPPFLAGS.

Kim

> > Instead, we'll have to make the lexical analysis conscious
> > of something like a <newline> context sensitive token or so.
> > Or throw some flag to cpp to not emit location markers.
> 
> - kumar



More information about the Linuxppc-dev mailing list