From: Alexandre Torgue <alexandre.torgue@st.com>
To: Rob Herring <robh@kernel.org>
Cc: Tom Rini <trini@konsulko.com>, Kumar Gala <kumar.gala@linaro.org>,
"ksummit-discuss@lists.linuxfoundation.org"
<ksummit-discuss@lists.linuxfoundation.org>,
Rob Herring <rob.herring@linaro.org>,
"devicetree-spec@vger.kernel.org"
<devicetree-spec@vger.kernel.org>,
Pantelis Antoniou <pantelis.antoniou@konsulko.com>,
Andrew Turner <andrew@fubar.geek.nz>,
Andy Gross <andy.gross@linaro.org>,
Grant Likely <grant.likely@linaro.org>,
Lucas Stach <l.stach@pengutronix.de>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [Ksummit-discuss] Devicetree Workshop at Kernel Summit Prague (26 Oct 2017)
Date: Fri, 20 Oct 2017 15:47:21 +0200 [thread overview]
Message-ID: <9ba8453b-84f9-5e37-b0f5-6a0d9ebb2ce3@st.com> (raw)
In-Reply-To: <CAL_Jsq+p=-yTY4BNKXdSccPcBWsCUkP8HPQ-ergZXPB8msY5ig@mail.gmail.com>
Hi Rob,
On 10/19/2017 04:59 PM, Rob Herring wrote:
> On Thu, Oct 19, 2017 at 9:00 AM, Alexandre Torgue
> <alexandre.torgue@st.com> wrote:
>> Hi Rob,
>>
>>
>> On 10/19/2017 01:53 AM, Rob Herring wrote:
>>> On Wed, Oct 18, 2017 at 6:28 PM, Andrew Turner <andrew@fubar.geek.nz>
>>> wrote:
>
> [...]
>
>>>> From the FreeBSD perspective I’d like it if there was a common repo for
>>>> all devicetree consumers to share. We are trying to not have FreeBSD
>>>> specific properties as this has caused issues in the past where we had (and
>>>> still have) FreeBSD specific dts files. We are trying to remove these as
>>>> drivers are updated to handle the common bindings.
>>>
>>>
>>> Are you aware of this repo[1]? I don't have a sense for how widely
>>> used it is. If not, it is intended to provide a common repository of
>>> binding docs and dts files. If so, what are your issues with using it?
>>> It's generated from the kernel tree with git-filter-branch and through
>>> the kernel tree is the only way to add things currently. But there's
>>> no requirement that you add a Linux driver to submit a binding or dts
>>> change. We could consider taking patches against the tree directly,
>>> and the maintainers (me) can fixup the paths and apply to the kernel
>>> tree.
>>>
>>> If there's bindings in the kernel tree you think are crap and Linux
>>> specific, I'd like to know that too. We should start flagging those.
>>>
>>>> I have also spoken with some NetBSD and OpenBSD developers. They are both
>>>> using devicetree to handle device enumeration. Having all 5 projects using a
>>>> common set of dts files and binding would simplify keeping them in sync.
>>>
>>>
>>> There's more than 5 likely: linux, 3x BSD, u-boot, barebox, zephyr,
>>> ARM trusted firmware?, UEFI?, ?
>>
>>
>> First, sorry to come late in this discussion (please be tolerant if you
>> already respond to following requests/interrogations in precedent mails :)).
>> From STmicro point of view we have the same kind of requests/needs than
>> Andrew. We think about the possibility to use same DTS files for Linux,
>> U-boot, ATF and Zephir (others could come with other vendors). Currently our
>> main concerns about this are:
>>
>> 1-How to reduce dtb size:
>> --> Reading some thread, you already start this task with Nicolas.
>> Does it concerns only XiP system ?
>
> That's the main focus ATM. Nico has looked at shrinking code usage too
> such as the tty layer and scheduler, but those have faced resistance.
> We need actual products to prove the value (and that's a chicken and
> egg problem).
>
>> -->For example, I want to use the same dtsi files between Linux and
>> U-boot. If in u-boot dts file I overload several "status" entry by
>> "disabled", is it possible that compiler doesn't build it ? And what about
>> not used phandle ?
>
> You certainly could remove disabled nodes in dtc. I'm not sure how
> hard it would be to plumb into dtc. I think phandle properties are
> already only created if there's a reference to them. If that is
> created before you deleted nodes, then it would probably be hard to
> find and remove all of those. It would be similar to solving the
> device dependency problem. Or do you mean something like disable the
> clock controller node if there are no enabled references to it? I
> don't think we could do something like that generically and reliably.
>
> We did recently stop creating both "phandle" and "linux,phandle"
> properties by default in dtc, so that will save some size.
I responded to Frank. On my side, disabled nodes and not used phandles
are presents in DTB binary. Maybe I didn't use correctly the DTC. Are
there specific things to do ?
>
>> 2- The place of DT files (sources/scripts). I see (and clone) your
>> "devicetree-rebasing.git" tree, it's a good start point. Currently (correct
>> me if I'm wrong) the Kernel seems to "lead" the devicetree bindings and
>> devicetree dts(i) files.
>
> Yes, and there's not really any changing that regardless of where
> bindings and dts files live given Linux has the broadest h/w support.
>
>> By using this external repo, it would be maybe
>> easier to integrate changes for other components than Linux Kernel ?
>
> Yes, barebox at least regularly imports it.
Yes, I just saw that. So currently it means that we could push DT
changes by component (ATF/uBOOT) in this repo directly ? and then get
it in our local ATF or Uboot project ?
>
>> We
>> could have (per vendor), same dtsi files which describes the hardware (SoC +
>> board) and a extra dts files (at least at beginning) per software components
>> to overload nodes (to disable some nodes not required (see (1)), to change
>> bindings which are different regarding component ...).
>
> You mean dtsi files to disable nodes for linux, u-boot, etc. That may
> make sense for mutually exclusive things like FreeBSD vs. Linux, but
> for say u-boot, we really want u-boot and Linux (or whatever OS is
> loaded) to use the same dtb. Having different dtbs is going to
> increase your memory usage.
>
We could have different needs. For example I have a board and I would
like to have he following bootchain: ATF then Uboot then Kernel. For
that, I would like to use the same DTs files for the 3 components (and
the memory footprint is not an issue). The idea is to share HW
description between several components. But some differences implies to
overload dts files per component:
-bindings could be slightly different (the case between Linux and uboot)
-frameworks bindings (basically phandles) depends on sw component: ATF
will not define clocks as kernel done.
-Using several DTB is not an issue. For ATF we have to use a DTB as
small as possible.
It's for this reason I said that using the external repo could be a good
thing in order to add extra dts files per components for overloading.
I understand that people wants also to have the same binary for several
components but it doesn't prevent to have the both solutions.
>> It will also allow to have all dt script / tools for all components at only
>> one place.
>>
>> Once again, sorry if I repeat things already discussed but I wanted to
>> expose what STMicro has in mind for DT. It will be a good topic to discuss
>> at Prague.
>
> Yes, but I won't be there.
Ok. I hope we will arrive to converge at Prague with Grant and involved
peoples ;). As we (ST) have already several components using DT, we
could help to prototype.
Regards
Alex
>
> Rob
>
next prev parent reply other threads:[~2017-10-20 13:47 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-09 20:39 Grant Likely
2017-10-14 12:34 ` Thomas Petazzoni
2017-10-17 13:30 ` Grant Likely
2017-10-16 5:36 ` Michal Simek
2017-10-16 14:11 ` Rob Herring
2017-10-18 14:04 ` Michal Simek
2017-10-18 14:28 ` Andre Przywara
2017-10-18 15:32 ` Rob Herring
2017-10-18 16:05 ` Andre Przywara
2017-10-18 16:20 ` Pantelis Antoniou
2017-10-16 16:40 ` Ben Dooks
2017-10-16 18:44 ` Heiko Stübner
2017-10-16 19:45 ` Rob Herring
2017-10-17 13:38 ` Grant Likely
2017-10-17 23:45 ` Frank Rowand
2017-10-17 13:32 ` Grant Likely
2017-10-18 10:08 ` Thomas Petazzoni
2017-10-16 16:42 ` Ben Dooks
2017-10-17 13:34 ` Grant Likely
2017-10-17 9:48 ` Boris Brezillon
2017-10-17 13:21 ` Tom Rini
2017-10-17 13:48 ` Grant Likely
2017-10-17 16:21 ` Ian Lepore
2017-10-17 17:02 ` Kumar Gala
2017-10-17 17:24 ` Geert Uytterhoeven
2017-10-17 19:03 ` Bird, Timothy
2017-10-18 12:14 ` Grant Likely
2017-10-18 12:59 ` Pantelis Antoniou
2017-10-18 13:18 ` Alexandre Belloni
2017-10-18 13:21 ` Geert Uytterhoeven
2017-10-18 17:41 ` Bird, Timothy
2017-10-18 18:00 ` Rob Herring
2017-10-18 21:10 ` Alexandre Belloni
2017-10-18 16:18 ` David Woodhouse
2017-10-18 14:13 ` Rob Herring
2017-10-18 17:45 ` Bird, Timothy
2017-10-18 14:07 ` Kumar Gala
2017-10-17 17:25 ` Rob Herring
2017-10-18 10:11 ` Thomas Petazzoni
2017-10-18 10:35 ` Chen-Yu Tsai
2017-10-18 11:09 ` Mark Brown
2017-10-18 17:59 ` Tom Rini
2017-10-18 23:28 ` Andrew Turner
2017-10-18 23:53 ` Rob Herring
2017-10-19 14:00 ` Alexandre Torgue
2017-10-19 14:59 ` Rob Herring
2017-10-19 18:46 ` Frank Rowand
2017-10-20 9:55 ` Alexandre Torgue
2017-10-20 10:01 ` David Gibson
2017-10-20 13:37 ` Rob Herring
2017-10-22 8:25 ` David Gibson
2017-10-20 13:47 ` Alexandre Torgue [this message]
2017-10-19 0:04 ` Mark Brown
2017-10-19 11:10 ` Grant Likely
2017-10-24 7:37 ` Boris Brezillon
2017-10-25 14:40 ` Maxime Ripard
2017-10-26 5:47 ` Frank Rowand
2017-10-26 7:17 ` Grant Likely
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9ba8453b-84f9-5e37-b0f5-6a0d9ebb2ce3@st.com \
--to=alexandre.torgue@st.com \
--cc=andrew@fubar.geek.nz \
--cc=andy.gross@linaro.org \
--cc=david@gibson.dropbear.id.au \
--cc=devicetree-spec@vger.kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=ksummit-discuss@lists.linuxfoundation.org \
--cc=kumar.gala@linaro.org \
--cc=l.stach@pengutronix.de \
--cc=pantelis.antoniou@konsulko.com \
--cc=rob.herring@linaro.org \
--cc=robh@kernel.org \
--cc=trini@konsulko.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox