linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andrey Smirnov <andrew.smirnov@gmail.com>
To: Dong Aisheng <dongas86@gmail.com>
Cc: Shawn Guo <shawnguo@kernel.org>,
	Andrey Yurovsky <yurovsky@gmail.com>,
	Sascha Hauer <kernel@pengutronix.de>,
	Fabio Estevam <fabio.estevam@nxp.com>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Russell King <linux@armlinux.org.uk>,
	devicetree@vger.kernel.org,
	linux-kernel <linux-kernel@vger.kernel.org>,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH 3/8] ARM: dts: imx7s: Adjust anatop-enable-bit for 'reg_1p0d'
Date: Fri, 14 Apr 2017 09:08:50 -0700	[thread overview]
Message-ID: <CAHQ1cqGx+ztj0DC6EL7X2nh0-fWPPzWv-mKQYGuKFN5NnoTYcQ@mail.gmail.com> (raw)
In-Reply-To: <20170414153243.GA1792@b29396-OptiPlex-7040>

On Fri, Apr 14, 2017 at 8:32 AM, Dong Aisheng <dongas86@gmail.com> wrote:
> On Thu, Apr 13, 2017 at 06:32:37AM -0700, Andrey Smirnov wrote:
>> In PMU_REG_1P0Dn ENABLE_LINREG is bit 0. Bit 31 is called OVERRIDE and
>> it serves the function of granting permission to GPC IP block to alter
>> various bit-fields of the register. The reason why this property, that
>> trickeld here from Freescale BSP, is set to 31 is because in the code
>> it came from it is used in conjunction with a notifier handler for
>> REGULATOR_EVENT_PRE_DO_ENABLE and REGULATOR_EVENT_PRE_DO_DISABLE
>> events (not found in upstream kernel) that triggers GPC to start
>> manipulating aforementioned other bitfields.
>>
>> Since:
>>       a) none of the aforementioned machinery is implemented by
>>          upstream
>>       b) using 'anatop-enable-bit' in that capacity is a bit of a
>>          semantic stretch
>
> Yes, this does is a bit of semantic stretch.
> FSL using is combined with regulator notify and that do bring a bit
> of complexity.
>
> I'm not sure if it's good to introduce another anatop-override-bit
> to separate, but i'm a bit scare since there's already many....
>

All of those Freescale specific events are replaced by GPCv2 power
domain driver that we discussed in another thread. Since regulator
driver for ANADIG sets up all of the voltages manually (or, more
specifically, GPCv2 driver sets them up via regulator API) I didn't
see any reason to use OVERRIDE instead of just ENABLE.

>From reading the RM it seems that main reason for using OVERRIDE as
opposed to ENABLE would be to leverage advanced hardware power
management capabilities of the SoC which I don't think are implemented
in upstream kernel. Do you think there's a use-case for
anatop-override-bit property?

>>
>> simplify the situation by setting the value of 'anatop-enable-bit' to
>> point to ENABLE_LINREG (same as i.MX6).
>>
>> Cc: yurovsky@gmail.com
>> Cc: Sascha Hauer <kernel@pengutronix.de>
>> Cc: Fabio Estevam <fabio.estevam@nxp.com>
>> Cc: Rob Herring <robh+dt@kernel.org>
>> Cc: Mark Rutland <mark.rutland@arm.com>
>> Cc: Russell King <linux@armlinux.org.uk>
>> Cc: devicetree@vger.kernel.org
>> Cc: linux-kernel@vger.kernel.org
>> Cc: linux-arm-kernel@lists.infradead.org
>> Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
>> ---
>>  arch/arm/boot/dts/imx7s.dtsi | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi
>> index 22c9788..8fee299 100644
>> --- a/arch/arm/boot/dts/imx7s.dtsi
>> +++ b/arch/arm/boot/dts/imx7s.dtsi
>> @@ -516,7 +516,7 @@
>>                                       anatop-min-bit-val = <8>;
>>                                       anatop-min-voltage = <800000>;
>>                                       anatop-max-voltage = <1200000>;
>> -                                     anatop-enable-bit = <31>;
>> +                                     anatop-enable-bit = <0>;
>
> The change of this line seems already exist in patch 1.

I am going to squash all three patches into a single one.

Thanks,
Andrey Smirnov

  reply	other threads:[~2017-04-14 16:08 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-13 13:32 [PATCH 0/8] i.MX7 PCIe related device tree changes Andrey Smirnov
2017-04-13 13:32 ` [PATCH 1/8] Revert "ARM: dts: imx: Remove unexistant property" Andrey Smirnov
2017-04-13 13:32 ` [PATCH 2/8] ARM: dts: imx6: Specify 'anatop-enable-bit' where appropriate Andrey Smirnov
2017-04-13 13:32 ` [PATCH 3/8] ARM: dts: imx7s: Adjust anatop-enable-bit for 'reg_1p0d' Andrey Smirnov
2017-04-14  3:28   ` Shawn Guo
2017-04-14 14:33     ` Andrey Smirnov
2017-04-14 15:32   ` Dong Aisheng
2017-04-14 16:08     ` Andrey Smirnov [this message]
2017-04-13 13:32 ` [PATCH 4/8] ARM: dts: imx7s: Add node for GPC Andrey Smirnov
2017-04-13 19:03   ` Tyler Baker
2017-04-13 19:18     ` Fabio Estevam
2017-04-13 19:24       ` Tyler Baker
2017-04-13 19:55         ` Fabio Estevam
2017-04-13 20:13           ` Tyler Baker
2017-04-13 20:49             ` Fabio Estevam
2017-04-13 21:20               ` Andrey Smirnov
2017-04-13 21:35               ` Tyler Baker
2017-04-13 22:00                 ` Fabio Estevam
2017-04-13 21:19     ` Andrey Smirnov
2017-04-14  3:40   ` Shawn Guo
2017-04-14 15:19     ` Andrey Smirnov
2017-04-14 15:49       ` Dong Aisheng
2017-04-14 15:50         ` Andrey Smirnov
2017-04-13 13:32 ` [PATCH 5/8] ARM: dts: imx7s: Mark 'gpr' compatible with i.MX6 variant Andrey Smirnov
2017-04-14 15:56   ` Dong Aisheng
2017-04-14 16:30     ` Andrey Smirnov
2017-04-13 13:32 ` [PATCH 6/8] ARM: dts: imx7d-sdb: Add GPIO expander node Andrey Smirnov
2017-04-13 22:20   ` Fabio Estevam
2017-04-14 15:25     ` Andrey Smirnov
2017-04-14  3:47   ` Shawn Guo
2017-04-14 15:32     ` Andrey Smirnov
2017-04-14 16:00     ` Dong Aisheng
2017-04-13 13:32 ` [PATCH 7/8] ARM: dts: imx7d: Add node for PCIe controller Andrey Smirnov
2017-04-13 13:32 ` [PATCH 8/8] ARM: dts: imx7d-sdb: Enable PCIe peripheral Andrey Smirnov
2017-04-13 22:23   ` Fabio Estevam
2017-04-14  3:51   ` Shawn Guo
2017-04-14 15:45     ` Andrey Smirnov
2017-04-19 18:28 ` [PATCH 0/8] i.MX7 PCIe related device tree changes Tyler Baker

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=CAHQ1cqGx+ztj0DC6EL7X2nh0-fWPPzWv-mKQYGuKFN5NnoTYcQ@mail.gmail.com \
    --to=andrew.smirnov@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dongas86@gmail.com \
    --cc=fabio.estevam@nxp.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=shawnguo@kernel.org \
    --cc=yurovsky@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).