From: Catalin Marinas <catalin.marinas-5wv7dgnIgG8@public.gmane.org>
To: Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
Cc: Alexander Holler <holler-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>,
"grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org"
<grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Mark Rutland <Mark.Rutland-5wv7dgnIgG8@public.gmane.org>,
"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Jon Loeliger <jdl-CYoMK+44s/E@public.gmane.org>,
Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
Greg Kroah-Hartman
<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Thierry Reding
<thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [RFC PATCH 0/9] dt: dependencies (for deterministic driver initialization order based on the DT)
Date: Wed, 27 Aug 2014 18:52:43 +0100 [thread overview]
Message-ID: <20140827175243.GJ13850@arm.com> (raw)
In-Reply-To: <53FE0966.5020206-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
On Wed, Aug 27, 2014 at 05:37:58PM +0100, Stephen Warren wrote:
> On 08/27/2014 10:30 AM, Alexander Holler wrote:
> > Am 27.08.2014 18:22, schrieb Stephen Warren:
> >> On 08/27/2014 08:44 AM, Catalin Marinas wrote:
> >
> >>> It's not just optimisation but an important feature for new arm64 SoCs.
> >>> Given some Tegra discussions recently, in many cases the machine_desc
> >>> use on arm is primarily to initialise devices in the right order. If we
> >>> can solve this in a more deterministic way (other than deferred
> >>> probing), we avoid the need for a dedicated SoC platform driver (or
> >>> machine_desc) or workarounds like different initcall levels and explicit
> >>> DT parsing.
> >>
> >> A lot of the ordering is SW driver dependencies. I'm not sure how much
> >> of that can accurately be claimed as HW dependencies. As such, I'm not
> >> sure that putting dependencies into DT would be a good idea; it doesn't
> >> feel like HW data, and might well change if we restructure SW. It'd need
> >> some detailed research though.
> >
> > Almost every phandle is a dependency, so the DT is already full with them.
>
> That's true, but not entirely relevant.
>
> phandles in DT should only be present where there's an obvious HW
> dependency. It's obvious that, for example, there's a real HW dependency
> between an IRQ controller and a device that has an IRQ signal fed into
> the IRQ controller. It makes perfect sense to represent that as a
> phandle (+args).
Other examples are power controllers or some MFD device (as we have on
vexpress). For these we normally have phandles.
> However, most of the ordering imposed by the Tegra machine descriptor
> callbacks is nothing to do with this. It's more that the SW driver for
> component X needs some low level data (e.g. SKU/fuse information) before
> it can run. However, there's no real HW dependency between the HW
> component X and the fuse module. As such, it doesn't make sense to
> represent such a dependency in DT, using a phandle or by any other means.
But isn't fuse some piece of hardware? We don't have a model for it, so
I guess you just present it as a library that accesses the hardware.
Anyway, in such case something like Pawel's SoC driver proposal would
work. Now if anything inside the SoC bus (I have to re-read, I don't
fully remember the details) is probed after the SoC driver, you could
even initialise your SoC at device_initcall() level.
> Irrespective though, a new kernel needs to work against an old DT,
I fully agree. But we shouldn't really extend the "old DT" statement to
a new ARMv8 SoC ;).
--
Catalin
--
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
next prev parent reply other threads:[~2014-08-27 17:52 UTC|newest]
Thread overview: 100+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-12 16:47 [RFC PATCH 0/9] dt: dependencies (for deterministic driver initialization order based on the DT) Alexander Holler
2014-05-12 16:47 ` [RFC PATCH 2/9] dt: deps: dependency based device creation Alexander Holler
2014-05-14 14:05 ` Grant Likely
[not found] ` <20140514140534.897F8C4153D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-05-14 14:49 ` Alexander Holler
2014-05-14 17:20 ` Alexander Holler
[not found] ` <53738261.4000000-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-14 20:06 ` Grant Likely
2014-05-14 21:10 ` Alexander Holler
[not found] ` <5373DBCF.1080503-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-16 11:00 ` Grant Likely
2014-05-18 9:53 ` Alexander Holler
2014-05-16 17:31 ` Alexander Shiyan
2014-05-16 17:31 ` Alexander Shiyan
2014-05-16 17:31 ` Alexander Shiyan
2014-05-14 15:51 ` Alexander Holler
2014-05-17 14:24 ` Tomasz Figa
2014-05-18 14:59 ` Grant Likely
2014-05-19 8:41 ` Alexander Holler
2014-05-12 16:47 ` [RFC PATCH 4/9] dt: deps: dtc: Add option to print dependency graph as dot (Graphviz) Alexander Holler
2014-05-12 16:47 ` [RFC PATCH 7/9] dt: deps: kirkwood: make it possible to use CONFIG_OF_DEPENDENCIES Alexander Holler
2014-05-12 16:47 ` [RFC PATCH 8/9] dt: deps: dts: kirkwood: dockstar: add dependency ehci -> usb power regulator Alexander Holler
2014-05-12 16:48 ` [RFC PATCH 9/9] dt: deps: omap2: make it possible to use CONFIG_OF_DEPENDENCIES Alexander Holler
[not found] ` <1399913280-6915-1-git-send-email-holler-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-12 16:47 ` [RFC PATCH 1/9] dt: deps: dtc: Automatically add new property 'dependencies' which contains a list of referenced phandles Alexander Holler
[not found] ` <1399913280-6915-2-git-send-email-holler-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-17 12:16 ` Tomasz Figa
2014-05-19 12:35 ` Alexander Holler
2014-05-19 15:38 ` Jon Loeliger
2014-05-19 15:49 ` Jon Loeliger
[not found] ` <CAJgR-BhRtc1XGqk-TVOrf2y_pYS+nratkPrf+OenP4SFcyK3ng-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-19 17:26 ` Alexander Holler
[not found] ` <5379FAA5.10404-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-27 20:02 ` Grant Likely
2014-05-27 20:31 ` Alexander Holler
2014-05-12 16:47 ` [RFC PATCH 3/9] dt: deps: dtc: Add option to print initialization order Alexander Holler
2014-05-12 20:38 ` Jon Loeliger
[not found] ` <CAJgR-BhnFngGr9qxa7NvF7GExiCAr1=HS16AtN20uj7nCmLcKQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-12 22:58 ` Alexander Holler
[not found] ` <537151FF.8070104-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-13 8:54 ` [PATCH 0/3] add dependencies Alexander Holler
[not found] ` <1399971243-18153-1-git-send-email-holler-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-13 8:54 ` [PATCH 1/3] deps: Automatically add new property 'dependencies' which contains a list of referenced phandles Alexander Holler
2014-05-13 8:54 ` [PATCH 2/3] deps: Add option to print initialization order Alexander Holler
2014-05-13 8:54 ` [PATCH 3/3] deps: Add option to print dependency graph as dot (Graphviz) Alexander Holler
2014-05-13 18:48 ` [PATCH] deps: introduce new (virtual) property no-dependencies Alexander Holler
[not found] ` <1400006923-7950-1-git-send-email-holler-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-14 1:55 ` Alexander Holler
[not found] ` <5372CD15.5020001-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-14 7:02 ` Alexander Holler
2014-05-12 16:47 ` [RFC PATCH 5/9] dt: deps: register drivers based on the initialization order based on DT Alexander Holler
2014-05-14 14:13 ` Grant Likely
[not found] ` <20140514141300.67206C4153D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-05-14 14:58 ` Alexander Holler
[not found] ` <53738496.2070800-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-14 19:32 ` Grant Likely
2014-05-12 16:47 ` [RFC PATCH 6/9] dt: deps: WIP: well done drivers Alexander Holler
2014-05-13 15:40 ` [PATCH 10/9] dt: deps: fix bug not registering late drivers when OF_DEPENDENCIES is disabled Alexander Holler
2014-05-13 19:27 ` [RFC PATCH 11/9] dt: deps: dtc: introduce new (virtual) property no-dependencies Alexander Holler
2014-05-14 14:19 ` [RFC PATCH 0/9] dt: dependencies (for deterministic driver initialization order based on the DT) Grant Likely
2014-05-14 15:02 ` Alexander Holler
[not found] ` <53738580.7000902-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-14 16:05 ` Grant Likely
[not found] ` <CACxGe6s4px_9CNk3bkc1OF1KGZGYdyh4gE_VufCKU5dLFBG48g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-14 16:23 ` Alexander Holler
2014-05-14 17:30 ` Rob Herring
2014-05-14 17:45 ` Alexander Holler
2014-05-14 17:53 ` Alexander Holler
[not found] ` <5373ADB6.1070702-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-14 18:16 ` Alexander Holler
2014-05-14 19:13 ` Alexander Holler
2014-05-14 19:06 ` Rob Herring
[not found] ` <CAL_JsqJ-=amrmRR9FfnOH1ELDQ1kTaG3e1n878mgpZP1FUw_jA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-14 19:24 ` Alexander Holler
[not found] ` <5373C2F4.50803-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-05-15 1:46 ` Alexander Holler
2014-05-14 23:00 ` Alexander Holler
[not found] ` <20140514141914.446F7C4153D-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-08-21 14:02 ` Thierry Reding
[not found] ` <20140821140211.GD19293-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2014-08-21 19:19 ` Alexander Holler
[not found] ` <53F64624.5000403-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-08-22 13:19 ` Mark Rutland
2014-08-22 15:45 ` Alexander Holler
2014-08-25 9:39 ` Thierry Reding
2014-08-25 13:08 ` Jon Loeliger
[not found] ` <E1XLu15-0002DP-6o-CYoMK+44s/E@public.gmane.org>
2014-08-25 13:37 ` Thierry Reding
[not found] ` <20140825133714.GH4163-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2014-08-25 14:13 ` Jon Loeliger
[not found] ` <E1XLv1z-0002Jv-VN-CYoMK+44s/E@public.gmane.org>
2014-08-25 14:41 ` Thierry Reding
2014-08-26 8:42 ` Grant Likely
2014-08-26 8:49 ` Thierry Reding
2014-08-26 9:42 ` Alexander Holler
2014-08-26 10:11 ` Mark Rutland
2014-08-26 10:24 ` Thierry Reding
2014-08-27 10:34 ` Grant Likely
[not found] ` <20140827103432.64927C409CB-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-08-27 14:44 ` Catalin Marinas
[not found] ` <20140827144403.GB13850-5wv7dgnIgG8@public.gmane.org>
2014-08-27 16:22 ` Stephen Warren
[not found] ` <53FE05AE.9000406-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2014-08-27 16:30 ` Alexander Holler
2014-08-27 16:37 ` Stephen Warren
2014-08-27 16:58 ` Alexander Holler
[not found] ` <53FE0966.5020206-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2014-08-27 17:52 ` Catalin Marinas [this message]
[not found] ` <20140827175243.GJ13850-5wv7dgnIgG8@public.gmane.org>
2014-08-27 18:14 ` Alexander Holler
2014-08-28 6:50 ` Alexander Holler
2014-08-28 9:23 ` Catalin Marinas
[not found] ` <20140828092308.GA31111-5wv7dgnIgG8@public.gmane.org>
2014-08-29 1:43 ` Alexander Holler
[not found] ` <53FC566C.30904-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-08-26 10:25 ` Thierry Reding
2014-08-26 10:44 ` Alexander Holler
[not found] ` <53FC6513.5040800-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-08-26 11:01 ` Alexander Holler
2014-08-26 11:08 ` Thierry Reding
2014-08-26 11:23 ` Alexander Holler
[not found] ` <53FC6E4A.6030407-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-08-26 11:47 ` Thierry Reding
2014-08-26 12:00 ` Alexander Holler
[not found] ` <53FC76E8.5050009-SXC+2es9fhnfWeYVQQPykw@public.gmane.org>
2014-08-26 13:58 ` Jon Loeliger
2014-08-26 14:17 ` Thierry Reding
[not found] ` <E1XMHGc-0008TS-CQ-CYoMK+44s/E@public.gmane.org>
2014-08-27 7:16 ` Alexander Holler
2014-08-27 9:26 ` Alexander Holler
2014-08-26 7:56 ` Alexander Holler
2014-08-26 8:51 ` Grant Likely
[not found] ` <20140826085128.958A9C40989-WNowdnHR2B42iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2014-08-26 9:56 ` Alexander Holler
2014-08-26 10:18 ` Alexander Holler
2014-08-26 9:54 ` Mark Rutland
2014-05-14 8:20 ` dt: deps: some tips about how to debug/evaluate this feature Alexander Holler
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=20140827175243.GJ13850@arm.com \
--to=catalin.marinas-5wv7dgnigg8@public.gmane.org \
--cc=Mark.Rutland-5wv7dgnIgG8@public.gmane.org \
--cc=arnd-r2nGTMty4D4@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
--cc=holler-SXC+2es9fhnfWeYVQQPykw@public.gmane.org \
--cc=jdl-CYoMK+44s/E@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org \
--cc=thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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;
as well as URLs for NNTP newsgroup(s).