Thread (1 message) 1 message, 1 author, 2013-10-31

[RFC PATCH dtc] C-based DT schema checker integrated into dtc

From: Stephen Warren <hidden>
Date: 2013-10-31 21:13:46
Also in: linux-devicetree

On 10/28/2013 04:17 AM, David Gibson wrote:
On Fri, Oct 25, 2013 at 03:44:09PM +0100, Stephen Warren wrote:
quoted
On 10/25/2013 12:43 AM, Grant Likely wrote:
quoted
On Thu, 24 Oct 2013 22:51:28 +0100, Stephen Warren
[off-list ref] wrote:
quoted
From: Stephen Warren <redacted>

This is a very quick proof-of-concept re: how a DT schema
checker might look if written in C, and integrated into dtc.
Thanks for looking at this.

Very interesting. Certainly an expedient way to start checking
schemas, and for certain bindings it may be the best approach.
The downside is it forces a recompilation of DTC to bring in
new bindings and it isn't a great meduim for mixing schema with
documentation in the bindings.
This approach would certainly require recompiling something. I
threw the code into dtc simply because it was the easiest
container for the demonstration. It could be a separate DT
validation utility if we wanted, although we'd need to split the
DT parser from dtc into a library to avoid code duplication. The
resultant utility could be part of the repo containing the DTs,
so it didn't end up as a separate package to manage.

I think the additional documentation could be added as comments
in the validation functions, just like IIRC it was to be
represented as comments even in the .dts-based schema proposals.
Fwiw, I've been starting to do some hacking on the checks code,
with a view to making it accomodate the schema stuff better.
Branch 'checking' on the kernel.org tree.  In a state of flux, so
expect rebases.
Did you forget to push that? I don't see it in any of:
git://git.kernel.org/pub/scm/linux/kernel/git/jdl/dtc.git
git://git.kernel.org/pub/scm/utils/dtc/dtc.git
git://git.jdl.com/software/dtc.git
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help