1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/intel,lgm-io.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: Intel Lightning Mountain SoC pinmux & GPIO controller 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Rahul Tanwar <rahul.tanwar@linux.intel.com> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: | 13c66ec88fSEmmanuel Vadot Pinmux & GPIO controller controls pin multiplexing & configuration including 14c66ec88fSEmmanuel Vadot GPIO function selection & GPIO attributes configuration. 15c66ec88fSEmmanuel Vadot 16c66ec88fSEmmanuel Vadotproperties: 17c66ec88fSEmmanuel Vadot compatible: 18c66ec88fSEmmanuel Vadot const: intel,lgm-io 19c66ec88fSEmmanuel Vadot 20c66ec88fSEmmanuel Vadot reg: 21c66ec88fSEmmanuel Vadot maxItems: 1 22c66ec88fSEmmanuel Vadot 23c66ec88fSEmmanuel Vadot# Client device subnode's properties 24c66ec88fSEmmanuel VadotpatternProperties: 25c66ec88fSEmmanuel Vadot '-pins$': 26c66ec88fSEmmanuel Vadot type: object 27c66ec88fSEmmanuel Vadot description: 28c66ec88fSEmmanuel Vadot Pinctrl node's client devices use subnodes for desired pin configuration. 29c66ec88fSEmmanuel Vadot Client device subnodes use below standard properties. 30c66ec88fSEmmanuel Vadot $ref: pinmux-node.yaml# 31c66ec88fSEmmanuel Vadot 32c66ec88fSEmmanuel Vadot properties: 33c66ec88fSEmmanuel Vadot function: true 34c66ec88fSEmmanuel Vadot groups: true 35c66ec88fSEmmanuel Vadot pins: true 36c66ec88fSEmmanuel Vadot pinmux: true 37c66ec88fSEmmanuel Vadot bias-pull-up: true 38c66ec88fSEmmanuel Vadot bias-pull-down: true 39c66ec88fSEmmanuel Vadot drive-strength: true 40c66ec88fSEmmanuel Vadot slew-rate: true 41c66ec88fSEmmanuel Vadot drive-open-drain: true 42c66ec88fSEmmanuel Vadot output-enable: true 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadot required: 45c66ec88fSEmmanuel Vadot - function 46c66ec88fSEmmanuel Vadot - groups 47c66ec88fSEmmanuel Vadot 48c66ec88fSEmmanuel Vadot additionalProperties: false 49c66ec88fSEmmanuel Vadot 50e67e8565SEmmanuel VadotallOf: 51*fac71e4eSEmmanuel Vadot - $ref: pinctrl.yaml# 52e67e8565SEmmanuel Vadot 53c66ec88fSEmmanuel Vadotrequired: 54c66ec88fSEmmanuel Vadot - compatible 55c66ec88fSEmmanuel Vadot - reg 56c66ec88fSEmmanuel Vadot 57c66ec88fSEmmanuel VadotadditionalProperties: false 58c66ec88fSEmmanuel Vadot 59c66ec88fSEmmanuel Vadotexamples: 60c66ec88fSEmmanuel Vadot # Pinmux controller node 61c66ec88fSEmmanuel Vadot - | 62c66ec88fSEmmanuel Vadot pinctrl: pinctrl@e2880000 { 63c66ec88fSEmmanuel Vadot compatible = "intel,lgm-io"; 64c66ec88fSEmmanuel Vadot reg = <0xe2880000 0x100000>; 65c66ec88fSEmmanuel Vadot 66c66ec88fSEmmanuel Vadot uart0-pins { 67c66ec88fSEmmanuel Vadot pins = <64>, /* UART_RX0 */ 68c66ec88fSEmmanuel Vadot <65>; /* UART_TX0 */ 69c66ec88fSEmmanuel Vadot function = "CONSOLE_UART0"; 70c66ec88fSEmmanuel Vadot pinmux = <1>, 71c66ec88fSEmmanuel Vadot <1>; 72c66ec88fSEmmanuel Vadot groups = "CONSOLE_UART0"; 73c66ec88fSEmmanuel Vadot }; 74c66ec88fSEmmanuel Vadot }; 75c66ec88fSEmmanuel Vadot 76c66ec88fSEmmanuel Vadot... 77