Thread (15 messages) 15 messages, 4 authors, 2018-07-29

Re: [PATCH v3 5/7] dt-bindings: Add Tegra PMC pad configuration bindings

From: Aapo Vienamo <hidden>
Date: 2018-07-17 15:30:33
Also in: linux-tegra, lkml

On Tue, 17 Jul 2018 08:22:07 -0600
Rob Herring [off-list ref] wrote:
On Tue, Jul 17, 2018 at 6:23 AM Aapo Vienamo [off-list ref] wrote:
quoted
On Mon, 16 Jul 2018 09:43:09 -0600
Rob Herring [off-list ref] wrote:
 
quoted
On Thu, Jul 12, 2018 at 03:00:11PM +0300, Aapo Vienamo wrote:  
quoted
Document the pinctrl bindings used by the PMC driver for performing pad
configuration. Both nvidia,tegra186-pmc.txt and nvidia,tegra20-pmc.txt
are modified as they both cover SoC generations for which these bindings
apply.

Add a header defining Tegra PMC pad voltage configurations.

Signed-off-by: Aapo Vienamo <redacted>
Acked-by: Jon Hunter <jonathanh@nvidia.com>
---
 .../bindings/arm/tegra/nvidia,tegra186-pmc.txt     | 84 +++++++++++++++++++
 .../bindings/arm/tegra/nvidia,tegra20-pmc.txt      | 95 ++++++++++++++++++++++
 include/dt-bindings/pinctrl/pinctrl-tegra-io-pad.h | 18 ++++
 3 files changed, 197 insertions(+)
 create mode 100644 include/dt-bindings/pinctrl/pinctrl-tegra-io-pad.h
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra186-pmc.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra186-pmc.txt
index 5a3bf7c..9528f41 100644
--- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra186-pmc.txt
+++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra186-pmc.txt
@@ -34,3 +34,87 @@ Board DTS:
    pmc@c360000 {
            nvidia,invert-interrupt;
    };
+
+== Pad Control Nodes ==
+
+The PMC can be used to set pad power state and voltage configuration.
+The pad configuration is done via the pinctrl framework. The driver
+implements power-source, low-power-enable, and low-power-disable pinconf
+pin configuration node properties. Each pinctrl pin corresponds to a
+single Tegra PMC pad. Thus, in the following sections of this document
+pin refers to the pinctrl frameworks notion of a Tegra PMC pad.  
"pinctrl framework" is Linux specific and doesn't belong in the binding.
Neither does what a driver supports. Describe what the h/w supports.
 
quoted
+
+The pad configuration state nodes are placed under the pmc node and they
+are referred to by the pinctrl client device properties. For more  
Another driver detail not relevant.
 
quoted
+information see the examples presented later and  
examples don't document bindings. The documentation should be complete
without examples.
 
quoted
+Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt.
+
+The values accepted by power-source property are
+TEGRA_IO_PAD_VOLTAGE_1V8 and TEGRA_IO_PAD_VOLTAGE_3V3, which are defined
+in dt-bindings/pinctrl/pinctrl-tegra-io-pad.h.  
You need to list out what properties the child nodes can have.

power-source needs a vendor prefix.  
Isn't it a generic pinctrl property?  
I don't know offhand. Doesn't look like it if you have custom values.
It's listed under "Supported generic properties" in
pinctrl-bindings.txt. The convention seems to be not to add a vendor
prefix even though such custom macro values are used. The property is
currently used by qcom,pmic-gpio, qcom,pmic-mpp, and renesas,pfc-pinctrl.
I could not find a bindings document describing it with a vendor prefix.

 -Aapo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help