Thread (1 message) 1 message, 1 author, 2017-10-18

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 way
so
quoted
quoted
quoted
quoted
quoted
they can be utilized for validation of dts files.  We are doing a little of
this in
quoted
quoted
quoted
quoted
quoted
Zephyr since we are using a structured binding spec to generate code
from
quoted
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 or
not. :-)
quoted
quoted
As crazy that sounds it is possible using the YAML bindings, i.e. C structure
definitions
quoted
quoted
and fill-up from DT automatically. Whether this is a good idea it’s another
question :)
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help