1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2d5b0e70fSEmmanuel Vadot%YAML 1.2 3d5b0e70fSEmmanuel Vadot--- 4d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/mscc,ocelot-pinctrl.yaml# 5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6d5b0e70fSEmmanuel Vadot 7d5b0e70fSEmmanuel Vadottitle: Microsemi Ocelot pin controller 8d5b0e70fSEmmanuel Vadot 9d5b0e70fSEmmanuel Vadotmaintainers: 10d5b0e70fSEmmanuel Vadot - Alexandre Belloni <alexandre.belloni@bootlin.com> 11d5b0e70fSEmmanuel Vadot - Lars Povlsen <lars.povlsen@microchip.com> 12d5b0e70fSEmmanuel Vadot 13d5b0e70fSEmmanuel Vadotproperties: 14d5b0e70fSEmmanuel Vadot compatible: 15d5b0e70fSEmmanuel Vadot enum: 16d5b0e70fSEmmanuel Vadot - microchip,lan966x-pinctrl 17d5b0e70fSEmmanuel Vadot - microchip,sparx5-pinctrl 18d5b0e70fSEmmanuel Vadot - mscc,jaguar2-pinctrl 19d5b0e70fSEmmanuel Vadot - mscc,luton-pinctrl 20d5b0e70fSEmmanuel Vadot - mscc,ocelot-pinctrl 21d5b0e70fSEmmanuel Vadot - mscc,serval-pinctrl 22d5b0e70fSEmmanuel Vadot - mscc,servalt-pinctrl 23d5b0e70fSEmmanuel Vadot 24d5b0e70fSEmmanuel Vadot reg: 25d5b0e70fSEmmanuel Vadot items: 26d5b0e70fSEmmanuel Vadot - description: Base address 27d5b0e70fSEmmanuel Vadot - description: Extended pin configuration registers 28d5b0e70fSEmmanuel Vadot minItems: 1 29d5b0e70fSEmmanuel Vadot 30d5b0e70fSEmmanuel Vadot gpio-controller: true 31d5b0e70fSEmmanuel Vadot 32d5b0e70fSEmmanuel Vadot '#gpio-cells': 33d5b0e70fSEmmanuel Vadot const: 2 34d5b0e70fSEmmanuel Vadot 35d5b0e70fSEmmanuel Vadot gpio-ranges: true 36d5b0e70fSEmmanuel Vadot 37d5b0e70fSEmmanuel Vadot interrupts: 38d5b0e70fSEmmanuel Vadot maxItems: 1 39d5b0e70fSEmmanuel Vadot 40d5b0e70fSEmmanuel Vadot interrupt-controller: true 41d5b0e70fSEmmanuel Vadot 42d5b0e70fSEmmanuel Vadot "#interrupt-cells": 43d5b0e70fSEmmanuel Vadot const: 2 44d5b0e70fSEmmanuel Vadot 45d5b0e70fSEmmanuel Vadot resets: 46d5b0e70fSEmmanuel Vadot maxItems: 1 47d5b0e70fSEmmanuel Vadot 48d5b0e70fSEmmanuel Vadot reset-names: 49d5b0e70fSEmmanuel Vadot description: Optional shared switch reset. 50d5b0e70fSEmmanuel Vadot items: 51d5b0e70fSEmmanuel Vadot - const: switch 52d5b0e70fSEmmanuel Vadot 53d5b0e70fSEmmanuel VadotpatternProperties: 54d5b0e70fSEmmanuel Vadot '-pins$': 55d5b0e70fSEmmanuel Vadot type: object 56d5b0e70fSEmmanuel Vadot allOf: 57*fac71e4eSEmmanuel Vadot - $ref: pinmux-node.yaml 58*fac71e4eSEmmanuel Vadot - $ref: pincfg-node.yaml 59d5b0e70fSEmmanuel Vadot 60d5b0e70fSEmmanuel Vadot properties: 61d5b0e70fSEmmanuel Vadot function: true 62d5b0e70fSEmmanuel Vadot pins: true 63d5b0e70fSEmmanuel Vadot output-high: true 64d5b0e70fSEmmanuel Vadot output-low: true 65d5b0e70fSEmmanuel Vadot drive-strength: true 66d5b0e70fSEmmanuel Vadot 67d5b0e70fSEmmanuel Vadot required: 68d5b0e70fSEmmanuel Vadot - function 69d5b0e70fSEmmanuel Vadot - pins 70d5b0e70fSEmmanuel Vadot 71d5b0e70fSEmmanuel Vadot additionalProperties: false 72d5b0e70fSEmmanuel Vadot 73d5b0e70fSEmmanuel Vadotrequired: 74d5b0e70fSEmmanuel Vadot - compatible 75d5b0e70fSEmmanuel Vadot - reg 76d5b0e70fSEmmanuel Vadot - gpio-controller 77d5b0e70fSEmmanuel Vadot - '#gpio-cells' 78d5b0e70fSEmmanuel Vadot - gpio-ranges 79d5b0e70fSEmmanuel Vadot 80d5b0e70fSEmmanuel VadotallOf: 81*fac71e4eSEmmanuel Vadot - $ref: pinctrl.yaml# 82d5b0e70fSEmmanuel Vadot - if: 83d5b0e70fSEmmanuel Vadot properties: 84d5b0e70fSEmmanuel Vadot compatible: 85d5b0e70fSEmmanuel Vadot contains: 86d5b0e70fSEmmanuel Vadot enum: 87d5b0e70fSEmmanuel Vadot - microchip,lan966x-pinctrl 88d5b0e70fSEmmanuel Vadot - microchip,sparx5-pinctrl 89d5b0e70fSEmmanuel Vadot then: 90d5b0e70fSEmmanuel Vadot properties: 91d5b0e70fSEmmanuel Vadot reg: 92d5b0e70fSEmmanuel Vadot minItems: 2 93d5b0e70fSEmmanuel Vadot 94d5b0e70fSEmmanuel VadotadditionalProperties: false 95d5b0e70fSEmmanuel Vadot 96d5b0e70fSEmmanuel Vadotexamples: 97d5b0e70fSEmmanuel Vadot - | 98d5b0e70fSEmmanuel Vadot gpio: pinctrl@71070034 { 99d5b0e70fSEmmanuel Vadot compatible = "mscc,ocelot-pinctrl"; 100d5b0e70fSEmmanuel Vadot reg = <0x71070034 0x28>; 101d5b0e70fSEmmanuel Vadot gpio-controller; 102d5b0e70fSEmmanuel Vadot #gpio-cells = <2>; 103d5b0e70fSEmmanuel Vadot gpio-ranges = <&gpio 0 0 22>; 104d5b0e70fSEmmanuel Vadot 105d5b0e70fSEmmanuel Vadot uart_pins: uart-pins { 106d5b0e70fSEmmanuel Vadot pins = "GPIO_6", "GPIO_7"; 107d5b0e70fSEmmanuel Vadot function = "uart"; 108d5b0e70fSEmmanuel Vadot }; 109d5b0e70fSEmmanuel Vadot 110d5b0e70fSEmmanuel Vadot uart2_pins: uart2-pins { 111d5b0e70fSEmmanuel Vadot pins = "GPIO_12", "GPIO_13"; 112d5b0e70fSEmmanuel Vadot function = "uart2"; 113d5b0e70fSEmmanuel Vadot }; 114d5b0e70fSEmmanuel Vadot }; 115d5b0e70fSEmmanuel Vadot 116d5b0e70fSEmmanuel Vadot... 117