From: Mark Brown <broonie@kernel.org>
To: "Andrew F. Davis" <afd@ti.com>
Cc: Rob Herring <robh+dt@kernel.org>, Pawel Moll <pawel.moll@arm.com>,
Mark Rutland <mark.rutland@arm.com>,
Ian Campbell <ijc+devicetree@hellion.org.uk>,
Kumar Gala <galak@codeaurora.org>,
Lee Jones <lee.jones@linaro.org>,
Alexandre Courbot <gnurou@gmail.com>,
Grygorii Strashko <grygorii.strashko@ti.com>,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v4 4/5] regulator: tps65912: Add regulator driver for the TPS65912 PMIC
Date: Mon, 26 Oct 2015 09:43:20 +0900 [thread overview]
Message-ID: <20151026004320.GU29919@sirena.org.uk> (raw)
In-Reply-To: <562D3F77.5040205@ti.com>
[-- Attachment #1: Type: text/plain, Size: 2172 bytes --]
On Sun, Oct 25, 2015 at 03:45:43PM -0500, Andrew F. Davis wrote:
> On 10/24/2015 05:14 PM, Mark Brown wrote:
> >Tbe binding document is buggy and doesn't reflect the code, there's no
> >compatible string in the driver.
> Sure there is:
> drivers/mfd/mt6397-core.c:48:
> .of_compatible = "mediatek,mt6397-regulator",
This is in the MFD, this is not used in actual systems.
> Then mfd_add_devices uses this to find the regulator node and fill
> in .of_node, then in the regulator driver:
> drivers/regulator/mt6397-regulator.c:48:
> .of_match = of_match_ptr(match),
> which uses your helper to match the nodes in the filled in .of_node.
This is in a regulator definition, it is using the regulator framework
support for parsing DT which must be used by modern drivers. It is not
part of how the Linux driver model device is instantiated, that is done
using the struct platform_driver which is what we are talking about
here.
Please stop this, it is getting very tiresome.
> >No, that's not the case - remember, users don't have to write a new
> >driver every time they instantiate a device on a board. They're going
> >to have to list the in-use regulators one way or another but if we have
> >the extra compatible for regulators they have to bind both the core
> >device (which is going to be required anyway due to the control bus) and
> >the subnode saying that it has regulators (which we knew anyway as soon
> >as we knew we had the core device).
> We don't know what sub-devices the core device has, PMICs are more like
> SoCs on a bus than a regular device, the sub-parts change with every spin and
> we can represent this in DT like we do with SoCs. Else we would have to have
> a new core binding for every spin. We know what devices are on a particular
> SoC too, but we still list them and match them in DT so some SoC driver
> doesn't have to.
PMICs are very much smaller than SoCs, and again if you're not able to
usefully represent individual IPs in the DT (as is *clearly* the case
here where you are trying to make one node for the entire collection of
regulators) we're not getting any value.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 473 bytes --]
next prev parent reply other threads:[~2015-10-26 0:43 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-01 20:37 [PATCH v4 0/5] mfd: tps65912: Driver rewrite with DT support Andrew F. Davis
2015-10-01 20:37 ` [PATCH v4 1/5] Documentation: tps65912: Add DT bindings for the TPS65912 PMIC Andrew F. Davis
2015-10-01 20:37 ` [PATCH v4 2/5] mfd: tps65912: Remove old driver in preparation for new driver Andrew F. Davis
2015-10-05 9:28 ` Lee Jones
2015-10-05 9:29 ` Lee Jones
2015-10-05 16:01 ` Andrew F. Davis
2015-10-01 20:37 ` [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC Andrew F. Davis
2015-10-01 20:51 ` kbuild test robot
[not found] ` <20151002095859.GN12635@sirena.org.uk>
2015-10-02 13:32 ` [lkp] " Fengguang Wu
2015-10-02 13:47 ` Mark Brown
2015-10-01 20:57 ` kbuild test robot
2015-10-01 20:57 ` kbuild test robot
2015-10-01 23:49 ` Andrew F. Davis
2015-10-05 9:24 ` Lee Jones
2015-10-05 9:27 ` Lee Jones
2015-10-12 15:06 ` Andrew F. Davis
2015-10-13 7:34 ` Lee Jones
2015-10-01 20:37 ` [PATCH v4 4/5] regulator: tps65912: Add regulator " Andrew F. Davis
2015-10-02 19:21 ` Grygorii Strashko
2015-10-22 16:47 ` Mark Brown
2015-10-23 12:46 ` Andrew F. Davis
2015-10-23 23:18 ` Mark Brown
2015-10-24 0:11 ` Andrew F. Davis
2015-10-24 22:14 ` Mark Brown
2015-10-25 20:45 ` Andrew F. Davis
2015-10-26 0:43 ` Mark Brown [this message]
2015-10-26 15:47 ` Andrew F. Davis
2015-10-27 0:16 ` Mark Brown
2015-10-27 14:23 ` Andrew F. Davis
2015-11-04 15:35 ` Andrew F. Davis
2015-11-05 10:14 ` Mark Brown
2015-11-05 18:04 ` Andrew F. Davis
2015-11-06 10:43 ` Mark Brown
2015-11-06 18:10 ` Andrew F. Davis
2015-11-06 21:16 ` Mark Brown
2015-11-09 17:41 ` Andrew F. Davis
2015-11-10 9:57 ` Mark Brown
2015-11-10 16:47 ` Andrew F. Davis
2015-11-10 17:04 ` Mark Brown
2015-11-10 17:52 ` Andrew F. Davis
2015-11-10 18:44 ` Mark Brown
2015-11-10 19:40 ` Andrew F. Davis
2015-11-16 18:23 ` Mark Brown
2015-10-01 20:37 ` [PATCH v4 5/5] gpio: tps65912: Add GPIO " Andrew F. Davis
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=20151026004320.GU29919@sirena.org.uk \
--to=broonie@kernel.org \
--cc=afd@ti.com \
--cc=devicetree@vger.kernel.org \
--cc=galak@codeaurora.org \
--cc=gnurou@gmail.com \
--cc=grygorii.strashko@ti.com \
--cc=ijc+devicetree@hellion.org.uk \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=pawel.moll@arm.com \
--cc=robh+dt@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
all inboxes | Powered by JetHome®