From mboxrd@z Thu Jan 1 00:00:00 1970 From: Grant Likely Subject: Re: [PATCH V8] kbuild: create a rule to run the pre-processor on *.dts files Date: Fri, 08 Feb 2013 22:04:48 +0000 Message-ID: <20130208220448.EDA773E2C27@localhost> References: <1360091188-24063-1-git-send-email-swarren@wwwdotorg.org> <20130208144527.0D8DD3E2C01@localhost> <51156D09.7060401@gmail.com> Return-path: In-Reply-To: <51156D09.7060401@gmail.com> Sender: linux-kernel-owner@vger.kernel.org To: Rob Herring Cc: Stephen Warren , Michal Marek , Grant Likely , Srinivas KANDAGATLA , Mark Brown , Scott Wood , Sam Ravnborg , linux-kernel@vger.kernel.org, devicetree-discuss@lists.ozlabs.org, Stephen Warren List-Id: devicetree@vger.kernel.org On Fri, 08 Feb 2013 15:24:25 -0600, Rob Herring wrote: > On 02/08/2013 08:45 AM, Grant Likely wrote: > > On Tue, 5 Feb 2013 12:06:28 -0700, Stephen Warren wrote: > >> From: Stephen Warren > >> > >> Create cmd_dtc_cpp to run the C pre-processor on *.dts file before > >> passing them to dtc for final compilation. This allows the use of #define > >> and #include within the .dts file. > >> > >> Acked-by: Simon Glass > >> Acked-by: Jean-Christophe PLAGNIOL-VILLARD > >> Acked-by: Michal Marek > >> Acked-by: Srinivas Kandagatla > >> Signed-off-by: Stephen Warren > > > > I've applied this and was going to push it out, but I've just thought of > > a problem that could be a show stopper. Once a dtsp file includes a C > > header, the contents of that header become part of the Device Tree ABI. > > If someone changes that file (ie. to renumber a series of #defines) then > > that will break the binding. We need a way to protect against that. > > Someone changing a .h file may make the assumption that it is only > > kernel internal and won't realize that it has external implications. > > > > I'm thinking that any dts includes need to be treated in the same way as > > userspace headers. We could put them into include/uapi and piggy back on > > the protection already afforded by that directory, or come up with > > something new. Any thoughts? > > Also, we would never be able to separate the dts files from the kernel > tree without some separation. Good point. They better be in a completely separate directory then. g.