Message ID | 1532607560-11253-3-git-send-email-avienamo@nvidia.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Tegra SDHCI enable 1.8 V signaling on Tegar210 and Tegra186 | expand |
On 26.07.2018 14:19, Aapo Vienamo wrote: > Add a property to mark controllers which operate at a 1.8 V fixed I/O > voltage. > > This feature of the hardware needs to be signaled this way because it > cannot be probed at runtime or reliably derived from other properties. Is this really needed? Can we not use vqmmc to determine which voltage the controller runs on? There is already some precedence in the SDHCI core to determine which voltage levels are supported: https://lkml.org/lkml/2018/7/5/342 -- Stefan > > Signed-off-by: Aapo Vienamo <avienamo@nvidia.com> > --- > Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git > a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt > b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt > index 90c214d..95010cf 100644 > --- a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt > +++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt > @@ -45,6 +45,8 @@ Optional properties for Tegra210 and Tegra186: > for controllers supporting multiple voltage levels. The order of names > should correspond to the pin configuration states in pinctrl-0 and > pinctrl-1. > +- nvidia,only-1-8-v : The presence of this property indicates that the > + controller operates at a 1.8 V fixed I/O voltage. > > Example: > sdhci@700b0000 { -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, 26 Jul 2018 15:05:55 +0200 Stefan Agner <stefan@agner.ch> wrote: > On 26.07.2018 14:19, Aapo Vienamo wrote: > > Add a property to mark controllers which operate at a 1.8 V fixed I/O > > voltage. > > > > This feature of the hardware needs to be signaled this way because it > > cannot be probed at runtime or reliably derived from other properties. > > Is this really needed? Can we not use vqmmc to determine which voltage > the controller runs on? > > There is already some precedence in the SDHCI core to determine which > voltage levels are supported: > https://lkml.org/lkml/2018/7/5/342 This property is introduced to solve a slightly different issue. The thing is that supplying a fixed voltage SDHCI controller from a variable regulator is still a valid configuration. Which means that testing the capabilities of the regulator doesn't actually describe the SDHCI controller itself. In practice this property is used to communicate whether pad reconfiguration and voltage switching needs to be performed or not. This cannot be determined from the absence or presence of the pinctrl properties either because they naturally won't be there on older dtbs. The logic behind this goes like this: if this property is present, there's no need to perform pad or regulator reconfiguration and UHS modes can be enabled. If this property is missing then valid pinctrl and regulator properties are required to enable UHS signaling. This is implemented in tegra_sdhci_is_uhs_valid() in "[PATCH v2 03/10] mmc: tegra: Reconfigure pad voltages during voltage switching" -Aapo -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jul 27, 2018 at 11:05:55AM +0300, Aapo Vienamo wrote: > On Thu, 26 Jul 2018 15:05:55 +0200 > Stefan Agner <stefan@agner.ch> wrote: > > > On 26.07.2018 14:19, Aapo Vienamo wrote: > > > Add a property to mark controllers which operate at a 1.8 V fixed I/O > > > voltage. > > > > > > This feature of the hardware needs to be signaled this way because it > > > cannot be probed at runtime or reliably derived from other properties. > > > > Is this really needed? Can we not use vqmmc to determine which voltage > > the controller runs on? > > > > There is already some precedence in the SDHCI core to determine which > > voltage levels are supported: > > https://lkml.org/lkml/2018/7/5/342 > > This property is introduced to solve a slightly different issue. The > thing is that supplying a fixed voltage SDHCI controller from a variable > regulator is still a valid configuration. Which means that testing the > capabilities of the regulator doesn't actually describe the SDHCI > controller itself. The regulator constraints should reflect this. The constraints aren't the capabilities of the regulator, but the limits on what it is supplying. > > In practice this property is used to communicate whether pad > reconfiguration and voltage switching needs to be performed or not. This > cannot be determined from the absence or presence of the pinctrl > properties either because they naturally won't be there on older dtbs. > > The logic behind this goes like this: if this property is present, > there's no need to perform pad or regulator reconfiguration and UHS > modes can be enabled. If this property is missing then valid pinctrl and > regulator properties are required to enable UHS signaling. This is > implemented in tegra_sdhci_is_uhs_valid() in "[PATCH v2 03/10] mmc: > tegra: Reconfigure pad voltages during voltage switching" > > -Aapo -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt index 90c214d..95010cf 100644 --- a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt +++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt @@ -45,6 +45,8 @@ Optional properties for Tegra210 and Tegra186: for controllers supporting multiple voltage levels. The order of names should correspond to the pin configuration states in pinctrl-0 and pinctrl-1. +- nvidia,only-1-8-v : The presence of this property indicates that the + controller operates at a 1.8 V fixed I/O voltage. Example: sdhci@700b0000 {
Add a property to mark controllers which operate at a 1.8 V fixed I/O voltage. This feature of the hardware needs to be signaled this way because it cannot be probed at runtime or reliably derived from other properties. Signed-off-by: Aapo Vienamo <avienamo@nvidia.com> --- Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt | 2 ++ 1 file changed, 2 insertions(+)