lkml.org 
[lkml]   [2019]   [Feb]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v3 1/3] devicetree: bindings: bd718x7: document HW state related ROHM specific properties
Date
From
On 2019-02-14 01:34, Matti Vaittinen wrote:
> Add ROHM BD71837 / BD71847 specific device tree bindings for
> controlling the PMIC shutdown/reset states and voltages for
> different HW states. The PMIC was designed to be used with NXP
> i.MX8 SoC and it supports SNVS low power state which seems to
> be typical for NXP i.MX SoCs. However, when SNVS is used we must
> not allow SW to control enabling/disabling those regulators which
> are crucial for system to boot as there is a HW limitation which
> causes SW controlled regulators to be kept shut down after SNVS
> reset.
>
> Allow setting the SNVS to be used as reset target state and allow
> marking those regulators which are critical for boot.
>
> Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com>

One small nit below

Tested-by: Angus Ainslie <angus@akkea.ca>
Reviewed-by: Angus Ainslie <angus@akkea.ca>

> ---
> .../devicetree/bindings/mfd/rohm,bd71837-pmic.txt | 17 ++++++++++
> .../bindings/regulator/rohm,bd71837-regulator.txt | 38
> ++++++++++++++++++++++
> 2 files changed, 55 insertions(+)
>
> diff --git
> a/Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt
> b/Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt
> index a4b056761eaa..d5f68ac78d15 100644
> --- a/Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt
> +++ b/Documentation/devicetree/bindings/mfd/rohm,bd71837-pmic.txt
> @@ -23,6 +23,20 @@ Required properties:
>
> Optional properties:
> - clock-output-names : Should contain name for output clock.
> +- rohm,reset-snvs-powered : Transfer BD718x7 to SNVS state at reset.
> +
> +The BD718x7 supports two different HW states as reset target states.
> States
> +are called as SNVS and READY. At READY state all the PMIC power
> outputs go
> +down and OTP is reload. At the SNVS state all other logic and external
> +devices apart from the SNVS power domain are shut off. Please refer to
> NXP
> +i.MX8 documentation for further information regarding SNVS state. When
> a
> +reset is done via SNVS state the PMIC OTP data is not reload. This
> causes

Typo s/reload/reloaded/

> +power outputs that have been under SW control to stay down when reset
> has
> +switched power state to SNVS. If reset is done via READY state the
> power
> +outputs will be returned to HW control by OTP loading. Thus the reset
> +target state is set to READY by default. If SNVS state is used the
> boot
> +crucial regulators must have the regulator-always-on and
> regulator-boot-on
> +properties set in regulator node.
>
> Example:
>
> @@ -43,6 +57,7 @@ Example:
> #clock-cells = <0>;
> clocks = <&osc 0>;
> clock-output-names = "bd71837-32k-out";
> + rohm,reset-snvs-powered;
>
> regulators {
> buck1: BUCK1 {
> @@ -50,8 +65,10 @@ Example:
> regulator-min-microvolt = <700000>;
> regulator-max-microvolt = <1300000>;
> regulator-boot-on;
> + regulator-always-on;
> regulator-ramp-delay = <1250>;
> };
> + // [...]
> };
> };
>
> diff --git
> a/Documentation/devicetree/bindings/regulator/rohm,bd71837-regulator.txt
> b/Documentation/devicetree/bindings/regulator/rohm,bd71837-regulator.txt
> index 4b98ca26e61a..cbce62c22b60 100644
> ---
> a/Documentation/devicetree/bindings/regulator/rohm,bd71837-regulator.txt
> +++
> b/Documentation/devicetree/bindings/regulator/rohm,bd71837-regulator.txt
> @@ -27,8 +27,38 @@ BUCK1, BUCK2, BUCK3, BUCK4, BUCK5, BUCK6
> LDO1, LDO2, LDO3, LDO4, LDO5, LDO6
>
> Optional properties:
> +- rohm,dvs-run-voltage : PMIC default "RUN" state voltage in uV.
> + See below table for bucks which support this.
> +- rohm,dvs-idle-voltage : PMIC default "IDLE" state voltage in uV.
> + See below table for bucks which support this.
> +- rohm,dvs-suspend-voltage : PMIC default "SUSPEND" state voltage in
> uV.
> + See below table for bucks which support this.
> - Any optional property defined in bindings/regulator/regulator.txt
>
> +Supported default DVS states:
> +
> +BD71837:
> +buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage
> +-----------------------------------------------------------------------------
> +1 | supported | supported | supported
> +----------------------------------------------------------------------------
> +2 | supported | supported | not supported
> +----------------------------------------------------------------------------
> +3 | supported | not supported | not supported
> +----------------------------------------------------------------------------
> +4 | supported | not supported | not supported
> +----------------------------------------------------------------------------
> +rest | not supported | not supported | not supported
> +
> +BD71847:
> +buck | dvs-run-voltage | dvs-idle-voltage | dvs-suspend-voltage
> +-----------------------------------------------------------------------------
> +1 | supported | supported | supported
> +----------------------------------------------------------------------------
> +2 | supported | supported | not supported
> +----------------------------------------------------------------------------
> +rest | not supported | not supported | not supported
> +
> Example:
> regulators {
> buck1: BUCK1 {
> @@ -36,7 +66,11 @@ regulators {
> regulator-min-microvolt = <700000>;
> regulator-max-microvolt = <1300000>;
> regulator-boot-on;
> + regulator-always-on;
> regulator-ramp-delay = <1250>;
> + rohm,dvs-run-voltage = <900000>;
> + rohm,dvs-idle-voltage = <850000>;
> + rohm,dvs-suspend-voltage = <800000>;
> };
> buck2: BUCK2 {
> regulator-name = "buck2";
> @@ -45,18 +79,22 @@ regulators {
> regulator-boot-on;
> regulator-always-on;
> regulator-ramp-delay = <1250>;
> + rohm,dvs-run-voltage = <1000000>;
> + rohm,dvs-idle-voltage = <900000>;
> };
> buck3: BUCK3 {
> regulator-name = "buck3";
> regulator-min-microvolt = <700000>;
> regulator-max-microvolt = <1300000>;
> regulator-boot-on;
> + rohm,dvs-run-voltage = <1000000>;
> };
> buck4: BUCK4 {
> regulator-name = "buck4";
> regulator-min-microvolt = <700000>;
> regulator-max-microvolt = <1300000>;
> regulator-boot-on;
> + rohm,dvs-run-voltage = <1000000>;
> };
> buck5: BUCK5 {
> regulator-name = "buck5";
> --
> 2.14.3

\
 
 \ /
  Last update: 2019-02-14 15:58    [W:0.088 / U:0.212 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site