From: Matt Porter <mporter@linaro.org>
To: Russell King - ARM Linux <linux@arm.linux.org.uk>
Cc: Jason Kridner <jkridner@gmail.com>,
"beagleboard@googlegroups.com" <beagleboard@googlegroups.com>,
Robert Nelson <robertcnelson@gmail.com>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
OMAP List <linux-omap@vger.kernel.org>,
ARM Kernel List <linux-arm-kernel@lists.infradead.org>
Subject: Re: Unifying cape overlays into boot .dtb for BeagleBoard.org boards
Date: Tue, 17 Jun 2014 09:30:43 -0400 [thread overview]
Message-ID: <20140617133043.GJ4173@beef> (raw)
In-Reply-To: <20140617131522.GD3705@n2100.arm.linux.org.uk>
On Tue, Jun 17, 2014 at 02:15:22PM +0100, Russell King wrote:
> On Tue, Jun 17, 2014 at 08:58:31AM -0400, Matt Porter wrote:
> > On Tue, Jun 17, 2014 at 10:09:31AM +0100, Russell King wrote:
> > > Why should kernel developers go to the extent of adding support for DT
> > > modification at runtime when the platform you want this for doesn't even
> > > support hotplugging of these capes?
> >
> > It's important to note that Jason's use case is not the real one driving
> > runtime DT modification. You'll have to go back to threads like
> > https://lkml.org/lkml/2013/2/22/255 over a year ago where this was all
> > hashed out. The clearest use cases are the FPGA folks that are loading
> > their bitstream from userspace and due to DT-everywhere also need to
> > initiate runtime modification of the live DT tree from userspace.
> > There's a lot of discussion over many threads where this has been
> > debated.
>
> Okay, so it was debated, and the outcome of that debate has been... no
> change. That's probably because it is an incredible amount of work to
> achieve it, and none of the overloaded DT maintainers (who don't have
> enough time to review new bindings) have any intention of putting their
> precious resources towards it.
I don't believe this is completely true. Pantelis and Grant are working
together on getting DT overlays upstream. It's pretty far along. It
doesn't mean there aren't serious issues with the way the DT core code
was implement assuming it would be static.
> From my rudimentary understanding of the OF code, it seems to mean that
> the way devices are created from the parsed OF tree structures (the
> device_node structures) needs to change such that when an OF tree node
> is removed, its corresponding device is also removed. This probably
> needs a struct device pointer in the device_node struct.
>
> Then there needs to be support to modify the parsed OF tree (not only
> to add nodes but also to remove nodes) and do the right thing when a
> node is added and/or removed.
>
> However, there's harder cases to solve. There's several instances where
> device nodes do not correspond with a struct device, and these nodes are
> parsed by the driver. Such things as the of_graph stuff, which describes
> the inter-connectivity of a display subsystem or v4l2 subsystem. The
> nodes may be specified, but the target device for one of the links may
> be disabled at original probe time, but later becomes enabled via
> modification - this is one of the difficult cases since it needs the
> driver to cooperate with the change, and there's no existing way to
> notify it of that change.
>
> As with any kernel change, it needs people to write code. If no one writes
> code, no change happens. Endlessly discussing it on mailing lists does not
> result in code being written.
Yes, I suppose you missed the active work on the DT overlay series. As I
mentioned, there's active development on these things. There's also
active discussion on some of the challenges.
> However, going back to the original stated platform - none of this
> complexity is required there. Once power is applied, the platform
> hardware configuration is fixed (unless you want to yank a board off
> and risk destroying the hardware in doing so.) So, if Jason's interest
> is in the capes, then the simplest and easiest approach is to have the
> boot loader deal with it. If it's about FPGAs and dynamically loading
> bitstreams into them, then maybe a dynamic device tree is the answer -
> but /someone/ then has to create patches to achieve that. If no one is
> willing to create those patches, then forget the idea of a dynamic
> device tree, because it won't happen on its own.
https://lkml.org/lkml/2014/5/28/280
-Matt
next prev parent reply other threads:[~2014-06-17 13:30 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CA+T6QP==raXdWz9mezK3JxSvZjWhUZZ7aKv4CpCr0SbdaCMgDQ@mail.gmail.com>
[not found] ` <CA+T6QP==raXdWz9mezK3JxSvZjWhUZZ7aKv4CpCr0SbdaCMgDQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-11 5:10 ` Unifying cape overlays into boot .dtb for BeagleBoard.org boards Jason Kridner
2014-06-16 13:22 ` Jason Kridner
2014-06-17 9:09 ` Russell King - ARM Linux
2014-06-17 12:58 ` Matt Porter
2014-06-17 13:15 ` Russell King - ARM Linux
2014-06-17 13:30 ` Matt Porter [this message]
2014-06-17 13:32 ` Pantelis Antoniou
2014-06-17 16:01 ` Russell King - ARM Linux
[not found] ` <20140617160119.GE3705-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2014-06-17 16:33 ` Jason Kridner
2014-06-17 16:59 ` Pantelis Antoniou
2014-06-17 17:05 ` Russell King - ARM Linux
2014-06-17 17:10 ` Pantelis Antoniou
2014-06-17 17:41 ` Russell King - ARM Linux
2014-06-17 19:24 ` Pantelis Antoniou
[not found] ` <20140617090931.GB3705-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2014-06-17 12:37 ` Tom Rini
2014-06-17 12:56 ` Russell King - ARM Linux
[not found] ` <20140617125640.GC3705-l+eeeJia6m9vn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2014-06-17 14:58 ` Tom Rini
2014-06-17 13:45 ` Vladimir Pantelic
2014-06-17 13:50 ` Grant Likely
2014-06-17 14:08 ` Iain Paton
2014-06-11 5:11 ` Jason Kridner
2014-06-17 7:11 ` Gupta, Pekon
[not found] ` <20980858CB6D3A4BAE95CA194937D5E73EAF59A7-yXqyApvAXouIQmiDNMet8wC/G2K4zDHf@public.gmane.org>
2014-06-17 16:25 ` Jason Kridner
2014-06-18 8:51 ` Gupta, Pekon
2014-06-26 7:50 ` Tony Lindgren
[not found] ` <20140626075039.GG28884-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2014-06-26 13:06 ` Tom Rini
[not found] ` <53AC1AC5.5000103-l0cyMroinI0@public.gmane.org>
2014-06-26 15:27 ` Jason Kridner
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=20140617133043.GJ4173@beef \
--to=mporter@linaro.org \
--cc=beagleboard@googlegroups.com \
--cc=devicetree@vger.kernel.org \
--cc=jkridner@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=robertcnelson@gmail.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;
as well as URLs for NNTP newsgroup(s).