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