diff mbox series

[02/40] dt-bindings: mmc: tegra: Add pad voltage control properties

Message ID 1533141150-10511-3-git-send-email-avienamo@nvidia.com
State Not Applicable, archived
Headers show
Series Tegra SDHCI add support for HS200 and UHS signaling | expand

Commit Message

Aapo Vienamo Aug. 1, 2018, 4:31 p.m. UTC
Document the pinctrl bindings used by the SDHCI driver to reconfigure
pad voltages on controllers supporting multiple voltage levels.

Signed-off-by: Aapo Vienamo <avienamo@nvidia.com>
Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
Reviewed-by: Rob Herring <robh@kernel.org>
---
 .../bindings/mmc/nvidia,tegra20-sdhci.txt          | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

Comments

Thierry Reding Aug. 9, 2018, 12:15 p.m. UTC | #1
On Wed, Aug 01, 2018 at 07:31:52PM +0300, Aapo Vienamo wrote:
> Document the pinctrl bindings used by the SDHCI driver to reconfigure
> pad voltages on controllers supporting multiple voltage levels.
> 
> Signed-off-by: Aapo Vienamo <avienamo@nvidia.com>
> Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
> Reviewed-by: Rob Herring <robh@kernel.org>
> ---
>  .../bindings/mmc/nvidia,tegra20-sdhci.txt          | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> index 9bce578..90c214d 100644
> --- a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> +++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> @@ -38,3 +38,25 @@ sdhci@c8000200 {
>  	power-gpios = <&gpio 155 0>; /* gpio PT3 */
>  	bus-width = <8>;
>  };
> +
> +Optional properties for Tegra210 and Tegra186:
> +- pinctrl-names, pinctrl-0, pinctrl-1 : Specify pad voltage
> +  configurations. Valid pinctrl-names are "sdmmc-3v3" and "sdmmc-1v8"
> +  for controllers supporting multiple voltage levels. The order of names
> +  should correspond to the pin configuration states in pinctrl-0 and
> +  pinctrl-1.

Do we also want "sdmmc-off" to allow SDMMC pads to be powered down when
the slot or card is not used?

Thierry

> +
> +Example:
> +sdhci@700b0000 {
> +	compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci";
> +	reg = <0x0 0x700b0000 0x0 0x200>;
> +	interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
> +	clocks = <&tegra_car TEGRA210_CLK_SDMMC1>;
> +	clock-names = "sdhci";
> +	resets = <&tegra_car 14>;
> +	reset-names = "sdhci";
> +	pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
> +	pinctrl-0 = <&sdmmc1_3v3>;
> +	pinctrl-1 = <&sdmmc1_1v8>;
> +	status = "disabled";
> +};
> -- 
> 2.7.4
>
Aapo Vienamo Aug. 9, 2018, 4:36 p.m. UTC | #2
On Thu, 9 Aug 2018 14:15:00 +0200
Thierry Reding <thierry.reding@gmail.com> wrote:

> On Wed, Aug 01, 2018 at 07:31:52PM +0300, Aapo Vienamo wrote:
> > Document the pinctrl bindings used by the SDHCI driver to reconfigure
> > pad voltages on controllers supporting multiple voltage levels.
> > 
> > Signed-off-by: Aapo Vienamo <avienamo@nvidia.com>
> > Reviewed-by: Mikko Perttunen <mperttunen@nvidia.com>
> > Reviewed-by: Rob Herring <robh@kernel.org>
> > ---
> >  .../bindings/mmc/nvidia,tegra20-sdhci.txt          | 22 ++++++++++++++++++++++
> >  1 file changed, 22 insertions(+)
> > 
> > diff --git a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> > index 9bce578..90c214d 100644
> > --- a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> > +++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
> > @@ -38,3 +38,25 @@ sdhci@c8000200 {
> >  	power-gpios = <&gpio 155 0>; /* gpio PT3 */
> >  	bus-width = <8>;
> >  };
> > +
> > +Optional properties for Tegra210 and Tegra186:
> > +- pinctrl-names, pinctrl-0, pinctrl-1 : Specify pad voltage
> > +  configurations. Valid pinctrl-names are "sdmmc-3v3" and "sdmmc-1v8"
> > +  for controllers supporting multiple voltage levels. The order of names
> > +  should correspond to the pin configuration states in pinctrl-0 and
> > +  pinctrl-1.  
> 
> Do we also want "sdmmc-off" to allow SDMMC pads to be powered down when
> the slot or card is not used?

I don't see a real need for it, at least not in the context of this
series which aims to implement support for HS200 and UHS signaling. I
guess it could be added later if there's an actual case for it, where
turning off the pad would result in measureable change in total power
consumption.

 -Aapo

> > +
> > +Example:
> > +sdhci@700b0000 {
> > +	compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci";
> > +	reg = <0x0 0x700b0000 0x0 0x200>;
> > +	interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
> > +	clocks = <&tegra_car TEGRA210_CLK_SDMMC1>;
> > +	clock-names = "sdhci";
> > +	resets = <&tegra_car 14>;
> > +	reset-names = "sdhci";
> > +	pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
> > +	pinctrl-0 = <&sdmmc1_3v3>;
> > +	pinctrl-1 = <&sdmmc1_1v8>;
> > +	status = "disabled";
> > +};
> > -- 
> > 2.7.4
> >   

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
index 9bce578..90c214d 100644
--- a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
+++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt
@@ -38,3 +38,25 @@  sdhci@c8000200 {
 	power-gpios = <&gpio 155 0>; /* gpio PT3 */
 	bus-width = <8>;
 };
+
+Optional properties for Tegra210 and Tegra186:
+- pinctrl-names, pinctrl-0, pinctrl-1 : Specify pad voltage
+  configurations. Valid pinctrl-names are "sdmmc-3v3" and "sdmmc-1v8"
+  for controllers supporting multiple voltage levels. The order of names
+  should correspond to the pin configuration states in pinctrl-0 and
+  pinctrl-1.
+
+Example:
+sdhci@700b0000 {
+	compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci";
+	reg = <0x0 0x700b0000 0x0 0x200>;
+	interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
+	clocks = <&tegra_car TEGRA210_CLK_SDMMC1>;
+	clock-names = "sdhci";
+	resets = <&tegra_car 14>;
+	reset-names = "sdhci";
+	pinctrl-names = "sdmmc-3v3", "sdmmc-1v8";
+	pinctrl-0 = <&sdmmc1_3v3>;
+	pinctrl-1 = <&sdmmc1_1v8>;
+	status = "disabled";
+};