[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <f91001d8c5f0cb2860fda720d0cb6298a4856dd3.1572926608.git.rahul.tanwar@linux.intel.com>
Date: Tue, 5 Nov 2019 14:49:43 +0800
From: Rahul Tanwar <rahul.tanwar@...ux.intel.com>
To: linus.walleij@...aro.org, robh+dt@...nel.org, mark.rutland@....com
Cc: linux-gpio@...r.kernel.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, robh@...nel.org,
andriy.shevchenko@...el.com, qi-ming.wu@...el.com,
yixin.zhu@...ux.intel.com, cheol.yong.kim@...el.com,
Rahul Tanwar <rahul.tanwar@...ux.intel.com>
Subject: [PATCH v3 2/2] dt-bindings: pinctrl: intel: Add for new SoC
Add dt bindings document for pinmux & GPIO controller driver of
Intel Lightning Mountain SoC.
Signed-off-by: Rahul Tanwar <rahul.tanwar@...ux.intel.com>
---
.../bindings/pinctrl/intel,lgm-pinctrl.yaml | 114 +++++++++++++++++++++
1 file changed, 114 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pinctrl/intel,lgm-pinctrl.yaml
diff --git a/Documentation/devicetree/bindings/pinctrl/intel,lgm-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/intel,lgm-pinctrl.yaml
new file mode 100644
index 000000000000..961ac877a962
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/intel,lgm-pinctrl.yaml
@@ -0,0 +1,114 @@
+# SPDX-License-Identifier: GPL-2.0-only
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/bindings/pinctrl/intel,lgm-pinctrl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Intel Lightning Mountain SoC pinmux & GPIO controller binding
+
+maintainers:
+ - Rahul Tanwar <rahul.tanwar@...ux.intel.com>
+
+description: |
+ Pinmux & GPIO controller controls pin multiplexing & configuration including
+ GPIO function selection & GPIO attributes configuration.
+
+ Please refer to [1] for details of the common pinctrl bindings used by the
+ client devices.
+
+ [1] Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
+
+properties:
+ compatible:
+ const: intel,lgm-pinctrl
+
+ reg:
+ maxItems: 1
+
+# Client device subnode's properties
+patternProperties:
+ "^.*@[0-9a-fA-F]+$":
+ type: object
+ description:
+ Pinctrl node's client devices use subnodes for desired pin configuration.
+ Client device subnodes use below standard properties.
+
+ properties:
+ function:
+ $ref: /schemas/types.yaml#/definitions/string
+ description:
+ A string containing the name of the function to mux to the group.
+
+ groups:
+ $ref: /schemas/types.yaml#/definitions/string-array
+ description:
+ An array of strings identifying the list of groups.
+
+ pins:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ description:
+ List of pins to select with this function.
+
+ pinmux:
+ description: The applicable mux group.
+ allOf:
+ - $ref: "/schemas/types.yaml#/definitions/uint32"
+ - enum:
+ - 0 #PINMUX_GPIO
+ - 1
+ - 2
+ - 3
+ - 4
+
+ bias-pull-up:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Specifies pull-up configuration.
+
+ bias-pull-down:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Specifies pull-down configuration.
+
+ drive-strength:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Enables driver-current.
+
+ slew-rate:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Enables slew-rate.
+
+ drive-open-drain:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Specifies open-drain configuration.
+
+ output-enable:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description: Specifies if the pin is to be configured as output.
+
+
+ required:
+ - function
+ - groups
+
+required:
+ - compatible
+ - reg
+
+examples:
+ # Pinmux controller node
+ - |
+ pinctrl: pinctrl@...80000 {
+ compatible = "intel,lgm-pinctrl";
+ reg = <0xe2880000 0x100000>;
+
+ # Client device subnode
+ uart0:uart0 {
+ pins = <64>, /* UART_RX0 */
+ <65>; /* UART_TX0 */
+ function = "CONSOLE_UART0";
+ pinmux = <1>,
+ <1>;
+ groups = "CONSOLE_UART0";
+ };
+ };
+
+...
--
2.11.0
Powered by blists - more mailing lists