Re: [Ksummit-discuss] Devicetree Workshop at Kernel Summit Prague (26 Oct 2017)
From: Rob Herring <hidden>
Date: 2017-10-18 18:00:02
On Wed, Oct 18, 2017 at 12:41 PM, Bird, Timothy [off-list ref] wrote:
quoted
-----Original Message----- From Geert Uytterhoeven on Wednesday, October 18, 2017 6:22 AM On Wed, Oct 18, 2017 at 3:18 PM, Alexandre Belloni [off-list ref] wrote:quoted
On 18/10/2017 at 15:59:00 +0300, Pantelis Antoniou wrote:quoted
quoted
On Oct 18, 2017, at 15:14 , Grant Likely [off-list ref]wrote:quoted
quoted
quoted
On Tue, Oct 17, 2017 at 8:03 PM, Bird, Timothy [off-list ref]wrote:quoted
quoted
quoted
quoted
quoted
-----Original Message----- From Geert Uytterhoeven on Tuesday, October 17, 2017 10:24 AM On Tue, Oct 17, 2017 at 7:02 PM, Kumar Gala[off-list ref] wrote:quoted
quoted
quoted
quoted
quoted
quoted
I think this also gets to having bindings described in a structured waysoquoted
quoted
quoted
quoted
quoted
they can be utilized for validation of dts files. We are doing a little ofthis inquoted
quoted
quoted
quoted
quoted
Zephyr since we are using a structured binding spec to generate codefromquoted
quoted
quoted
quoted
quoted
.dts (since we don’t utilize a runtime dtb). So you are basically generating board files from .dts? (closing the loop ;-)I think we ought to do this on Linux, as a size optimization. -- Tim P.S. I think I'll leave it ambiguous whether this was meant as a joke ornot. :-)quoted
quoted
As crazy that sounds it is possible using the YAML bindings, i.e. C structuredefinitionsquoted
quoted
and fill-up from DT automatically. Whether this is a good idea it’s anotherquestion :)quoted
But that doesn't work with any driver parsing custom properties (using of_property_read_* and the likes). I would very much like to see what are the boot time improvements when doing that ;)Unless you override of_property_read_*() to work on the dense C structures instead?Or turn the property reads into macros that then turn into constant declarations inline in the code. No need stop at dense C structures. Of course you lose all configuration flexibility at runtime. But then that's the kind of trade-off one often makes with embedded software, isn't it?
That's basically what Grant proposed[1]. Turn all the property strings to numeric IDs that can directly reference the original FDT data avoiding storing the property structs. If you don't care about code size then removing runtime configuration within the OF API (i.e. not reworking driver probe functions) is not going to save much. And these days with XIP SPI flash chips, code size is not so much the issue. Maybe you saw Nico's presentation at Connect, but if not it is here[2]. Rob [1] https://www.spinics.net/lists/devicetree/msg197417.html [2] http://connect.linaro.org/resource/las16/las16-407/ -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html