public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
From: maxime.ripard@free-electrons.com (Maxime Ripard)
To: linux-arm-kernel@lists.infradead.org
Subject: [linux-sunxi] Re: Including empty regulator nodes in axp209.dtsi is a BAD idea
Date: Thu, 15 Jan 2015 22:51:20 +0100	[thread overview]
Message-ID: <20150115215120.GB5567@lukather> (raw)
In-Reply-To: <CAGb2v66Go1z-V8spwHvLHQC1R=vgDsk1nQ6iZWTsy+OMF1kK0w@mail.gmail.com>

On Fri, Jan 16, 2015 at 12:48:53AM +0800, Chen-Yu Tsai wrote:
> On Wed, Jan 14, 2015 at 6:18 PM, Lars Doelle <lars.doelle@on-line.de> wrote:
> > On Tuesday, January 13, 2015 17:46:06 Maxime Ripard wrote:
> >> On Tue, Jan 13, 2015 at 10:39:01AM +0100, Hans de Goede wrote:
> >> > Hi ChenYu, Maxime,
> >> >
> >> > During the review of a few dts files for new boards Maxime asked me to use
> >> > axp209.dtsi to avoid the standard axp209 "boilerplate" present in most
> >> > boards using the axp209 pmic.
> >> >
> >> > But axp209.dtsi includes empty regulator nodes, e.g. :
> >> >
> >> >                 reg_dcdc3: dcdc3 {
> >> >                         regulator-name = "dcdc3";
> >> >                 };
> >> >
> >> > This is a BAD idea, the presence of these empty nodes causes the
> >> > axp20x-regulator driver to actually register regulators for them,
> >> > and then on late_init the regulator subsys turns them off, since
> >> > they have absolutely no constraints set (nor users registered)
> >> > and the regulator subsys assumes that when devicetree is used their
> >> > is always a compete set of constraints and that thus turning them
> >> > off is safe.
> >> >
> >> > So when I switched to using axp209.dtsi for the bananapro.dts,
> >> > and booted the bananapro this is the last message I got from the
> >> > kernel while booting:
> >> >
> >> > [    2.314014] dcdc3: disabling
> >> >
> >> > And away went our DRAM power-supply, oops.
> >> >
> >> > So for dcdc2 (CPU) and dcdc3 (DRAM), the boilerplate
> >> > should contain reasonable constraints (eg the operating range
> >> > from the datasheet)
> >>
> >> Indeed.
> >
> > It is very unclear to me, what to with this dtsi as it is.
> >
> > Wrt. axp209, I have a specification like in sun7i-a20-olinuxino-lime2.dts.
> > If I include this dtsi, what does it help or how is it supposed to be of any
> > use?
> >
> > In particular, the following section
> >
> > |                       axp209: pmic at 34 {
> > |                               compatible = "x-powers,axp209";
> > |                               reg = <0x34>;
> > |                               interrupt-parent = <&nmi_intc>;
> > |                               interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
> >
> > |                               interrupt-controller;
> > |                               #interrupt-cells = <1>;
> >
> > |                               acin-supply = <&reg_axp_ipsout>;
> > |                               vin2-supply = <&reg_axp_ipsout>;
> > |                               vin3-supply = <&reg_axp_ipsout>;
> > |                               ldo24in-supply = <&reg_axp_ipsout>;
> > |                               ldo3in-supply = <&reg_axp_ipsout>;
> 
> We should not be using reg_axp_ipsout, as it is an unregulated supply,
> and can be left out.

Can it? Doesn't the regulator driver need to know the input voltage?

> > would be needed anyway as it is not in sun7i-a20.dtsi, followed by the
> > regulators, to switch them on. Now a dtsi would make sense, if it shortens
> > the device specific information.
> >
> > Should not the section above together with the full regulators be in axp209.dtsi
> > and only the regulators be mentioned in the boards dts, to switch them on? Isn't
> > this stuff that should be included in sun7i-a20.dtsi anyway, somehow?
> 
> It is entirely possible to make a board without using the PMIC, as Olimex
> has demonstrated. sun7i-a20 only describes the common SoC bits.

Or even with a different PMIC.

Maxime

-- 
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150115/64737d75/attachment.sig>

  reply	other threads:[~2015-01-15 21:51 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-13  9:39 Including empty regulator nodes in axp209.dtsi is a BAD idea Hans de Goede
2015-01-13 16:46 ` Maxime Ripard
2015-01-14  7:42   ` Hans de Goede
2015-01-14  8:11     ` [linux-sunxi] " Michal Suchanek
2015-01-15 16:54     ` Chen-Yu Tsai
2015-01-15 22:04       ` Maxime Ripard
2015-01-16  0:58         ` Chen-Yu Tsai
2015-01-16  7:42         ` Hans de Goede
2015-01-15 21:57     ` Maxime Ripard
2015-01-14 10:18   ` [linux-sunxi] " Lars Doelle
2015-01-15 16:48     ` Chen-Yu Tsai
2015-01-15 21:51       ` Maxime Ripard [this message]
2015-01-15 23:41       ` Lars Doelle

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=20150115215120.GB5567@lukather \
    --to=maxime.ripard@free-electrons.com \
    --cc=linux-arm-kernel@lists.infradead.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