ksummit.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
To: Andre Przywara <andre.przywara@arm.com>
Cc: Rob Herring <robh@kernel.org>, Kumar Gala <kumar.gala@linaro.org>,
	"ksummit-discuss@lists.linuxfoundation.org"
	<ksummit-discuss@lists.linuxfoundation.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"devicetree-spec@vger.kernel.org"
	<devicetree-spec@vger.kernel.org>,
	Andy Gross <andy.gross@linaro.org>,
	Lucas Stach <l.stach@pengutronix.de>,
	David Gibson <david@gibson.dropbear.id.au>
Subject: Re: [Ksummit-discuss] Devicetree Workshop at Kernel Summit Prague (26 Oct 2017)
Date: Wed, 18 Oct 2017 19:20:44 +0300	[thread overview]
Message-ID: <1508343644.25643.14.camel@hp800z> (raw)
In-Reply-To: <44857e9c-85c3-f1f7-514d-28d9966d243e@arm.com>

Hi Andre,

On Wed, 2017-10-18 at 17:05 +0100, Andre Przywara wrote:
> Hi,
> 
> On 18/10/17 16:32, Rob Herring wrote:
> > On Wed, Oct 18, 2017 at 9:28 AM, Andre Przywara <andre.przywara@arm.com> wrote:
> >> Hi,
> >>
> >> On 18/10/17 15:04, Michal Simek wrote:
> >>> On 16.10.2017 16:11, Rob Herring wrote:
> >>>> On Mon, Oct 16, 2017 at 12:36 AM, Michal Simek <monstr@monstr.eu> wrote:
> >>>>> Hi,
> >>>>>
> >>>>> On 9.10.2017 22:39, Grant Likely wrote:
> >>>>>> Kernel Summit is now just over 2 weeks away and it is time to pull
> >>>>>> together the schedule for the Devicetree workshop. Originally I
> >>>>>> planned on just an afternoon, but I've got the room for the whole day,
> >>>>>> so I've got a lot of flexibility on the schedule. Unscheduled time can
> >>>>>> be used for hacking.
> >>>>>>
> >>>>>> Date: 26 Oct 2017
> >>>>>> Time: 9:00am-5:30pm (Lunch from 12:30-2:30)
> >>>>>> Location: Athens room - Hilton Prague
> >>>>>>
> >>>>>> If you plan to attend, make sure you update your OSSunmitE/ELCE
> >>>>>> registration to include the DT Workshop (log in to access and modify
> >>>>>> your registration):
> >>>>>>
> >>>>>> https://www.regonline.com/register/login.aspx?eventID=1883377&MethodId=0&EventsessionId=&Email_Address=&membershipID=
> >>>>>>
> >>>>>> Here is my current list of topics in no particular order, including
> >>>>>> the topic moderator:
> >>>>>>
> >>>>>> Runtime memory consumption (Rob Herring)
> >>>>>> Overlay maintenance plan (TBC)
> >>>>>> Stable ABI for devicetree (TBC)
> >>>>>> DT YAML encoding (Pantelis Antoniou)
> >>>>>> DT Schema format - option 1 (Pantelis Antoniou)
> >>>>>> DT Schema format - option 2 (Grant Likely)
> >>>>>> Sharing Generic bindings (TBC)
> >>>>>> devicetree.org update (Grant)
> >>>>>>
> >>>>>> Reply to this email if you want to propose another topic.
> >>>>>>
> >>>>>> Reply privately if there is a particular topic you want to attend but
> >>>>>> you are unable to be there in the morning or afternoon. I'll put the
> >>>>>> actual agenda together a week out from the event.
> >>>>>
> >>>>> I would like to talk how to add support for AArch32 based on arm64 dts file.
> >>>>
> >>>> We already have that for RPi3, but it's a bit hacky in that you have
> >>>> to include files from one arch to the other. What I'd like to see
> >>>> ideally is no dependency on $ARCH to build dts files. You can't build
> >>>> dts files for an arch without a cross-compiler installed which is an
> >>>> artificial dependency. The dtb should be independent of whether you're
> >>>> building for 32 or 64 bit.
> >>>
> >>> I wasn't aware about RPI3 but yes - I have seen the same for ZynqMP.
> >>>
> >>>>
> >>>> There's the other aspect of being able to do armv8 32-bit builds as
> >>>> there's no explicit support for v8 in arch/arm/. But that's not a DT
> >>>> issue.
> >>>
> >>> Yep including Kconfig.platforms is required.
> >>>
> >>>>
> >>>>> And next topic is discuss criteria for adding new DTS board files to
> >>>>> kernel for supporting custom boards especially for arm32 which can end
> >>>>> up with a lot of dts files in this folder.
> >>>>
> >>>> We really should move the arm32 files into subdirs for each SoC vendor
> >>>> IMO, but I think armsoc maintainers have been against that churn.
> >>>
> >>> As you said above maybe we should consider to move all DTS files out of
> >>> arch folder and sorted them based on SoC vendor. It sounds like a good
> >>> topic to discuss.
> > 
> > That is 2 separate topics really. For the latter, you need to come up
> > with reasons to justify the churn.
> > 
> >>>>> If make sense to permit only boards with something new or just enable
> >>>>> reference boards to go in.
> >>>>
> >>>> The board dts files are generally pretty minimal. What's the issue
> >>>> here? Just lots of files in arch/arm/boot/dts?
> >>>
> >>> yep. A lot of files there.
> > 
> > Are we approaching the limits of # of files in one directory? Is
> > Arnd/Olof or Linus complaining about there being too many files to
> > maintain? Do sub-arch maintainers not know which files are theirs?
> > What problem are we trying to solve here?
> > 
> > If we're talking about moving bindings and dts files out of the
> > kernel, then call it that. Otherwise, let's not mix the topics. Unless
> > you want nothing to happen then tie it to moving to a separate
> > repository.
> > 
> >> I was wondering whether we should really stop providing .dts files for
> >> *boards* in the *kernel* tree. In my impression this was more a stop-gap
> >> measure to bridge the transition from board files to DT.
> > 
> > Not really. A stop-gap would be a couple of kernel cycles in my mind.
> > PPC dts files have been there forever practically.
> > 
> >> Given that the particular board files are rather boring anyway, wouldn't
> >> it be sufficient to just include the SoC .dtsi plus one (or two) example
> >> .dts, for instance for the official evaluation board?
> > 
> > That sounds horrible to manage. You are assuming the split between
> > board and SoC specifics are done perfectly from the start. I haven't
> > checked the history, but I'm going to guess that has not been the
> > case. That would effectively make the split be an ABI. Folks have
> > enough issues with the entire dtb being an ABI.
> 
> I agree that we should not create an ABI between the SoC's .dtsi the
> board's .dts files. But eventually people would put *.dtbs* on their
> boards, so we don't really care, as long as they are created from the
> right combination of both.
> At the end of the day a vendor actually doesn't really need to provide a
> DT matching exactly the kernel version, as long as it does not violate
> any bindings.
> 
> > However, there is a coming issue with Android project Treble which
> > does say all board specifics are an overlay (or multiple overlays) to
> > a common SoC base dtb which does make the split an ABI. For mainline
> > to handle this, we'd need to start making the board files overlays.
> 
> That does not sound good ...
> 
> > And to not break everything, we'd need to apply those overlays at
> > build time to produce a single board dtb. OTOH, phones aren't really
> > supported in mainline and vendors will do it wrong before mainline
> > gets around to it.
> > 
> >> This could be used as a template for creating specific board DTs.
> >> Ideally vendors could put those on their boards: into some flash or
> >> integrated into the firmware (as part of U-Boot, for instance).
> > 
> > That's really a separate problem from where are dts files maintained.
> > 
> > Does u-boot support using the same dtb to configure itself and to pass
> > to the kernel yet? That was a foreign concept though I think it was
> > being worked on.
> 
> That works already for some platforms or SoCs, as long as someone cares
> to keep the U-Boot copy up-to-date with the kernel version [1].
> I boot the Pine64 with $fdtcontroladdr (which points to U-Boot's .dtb)
> these days, without the need to load any .dtb. And on some boards U-Boot
> lives in SPI flash, so the .dtb is really tied to the board. Like on
> Highbank/Midway ;-)
> 
> Also this is the default address which the bootuefi command takes when
> there is nothing more specific provided.
> 
> But this is purely platform specific, and for some of them the DT used
> in U-Boot is quite different from the kernel version. Although this can
> be fixed, as the U-Boot drivers can be changed and don't adhere to some ABI.
> 
> >> And having a source for the .dtsi should make it easier to get a
> >> readable de-compilation of a given .dtb.
> > 
> > If such a tool existed to add back the annotations. YAML will solve
> > that, I'm sure.
> 
> Yes, but you need some extra JSON to recover the formatting ;-)
> 

YAML output preserves references and anchors. But still would not
be the same as the original sources since we're now heavily using
macros and the preprocessor.

Close, but no cigar.

> >> We could collect .dts files for boards somewhere else. It's already the
> >> case that we have some boards with a specific SoC "supported by the
> >> kernel" and some not, for no technical reason at all, actually. It's
> >> just whether there is someone willing to post (and push through) a .dts
> >> file.
> > 
> > We could start accepting (but not requiring) patches against the
> > devicetree-rebasing.git tree if that solves the problem of "kernel
> > bindings" and "kernel dts files". We can mechanically convert their
> > paths back to kernel paths and apply them. I've got no issue signing
> > up to that because I fully expect that to be only a trickle.
> 
> But that would mean that they would still live in the kernel, right?
> 
> Cheers,
> Andre.
> 
> [1]
> http://git.denx.de/?p=u-boot.git;a=commit;h=f98852bfa9a99d7258eb06e4849e5c3d075f44cf
> > 
> > Rob
> > 

  reply	other threads:[~2017-10-18 16:21 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 [this message]
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
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=1508343644.25643.14.camel@hp800z \
    --to=pantelis.antoniou@konsulko.com \
    --cc=andre.przywara@arm.com \
    --cc=andy.gross@linaro.org \
    --cc=david@gibson.dropbear.id.au \
    --cc=devicetree-spec@vger.kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=ksummit-discuss@lists.linuxfoundation.org \
    --cc=kumar.gala@linaro.org \
    --cc=l.stach@pengutronix.de \
    --cc=robh@kernel.org \
    /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