1*6b324d19SConor Dooley# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*6b324d19SConor Dooley%YAML 1.2 3*6b324d19SConor Dooley--- 4*6b324d19SConor Dooley$id: http://devicetree.org/schemas/pinctrl/microchip,mpfs-pinctrl-mssio.yaml# 5*6b324d19SConor Dooley$schema: http://devicetree.org/meta-schemas/core.yaml# 6*6b324d19SConor Dooley 7*6b324d19SConor Dooleytitle: Microchip Polarfire SoC MSSIO pinctrl 8*6b324d19SConor Dooley 9*6b324d19SConor Dooleymaintainers: 10*6b324d19SConor Dooley - Conor Dooley <conor.dooley@microchip.com> 11*6b324d19SConor Dooley 12*6b324d19SConor Dooleyproperties: 13*6b324d19SConor Dooley compatible: 14*6b324d19SConor Dooley oneOf: 15*6b324d19SConor Dooley - const: microchip,mpfs-pinctrl-mssio 16*6b324d19SConor Dooley - items: 17*6b324d19SConor Dooley - const: microchip,pic64gx-pinctrl-mssio 18*6b324d19SConor Dooley - const: microchip,mpfs-pinctrl-mssio 19*6b324d19SConor Dooley 20*6b324d19SConor Dooley reg: 21*6b324d19SConor Dooley maxItems: 1 22*6b324d19SConor Dooley 23*6b324d19SConor Dooley pinctrl-use-default: true 24*6b324d19SConor Dooley 25*6b324d19SConor DooleypatternProperties: 26*6b324d19SConor Dooley '-cfg$': 27*6b324d19SConor Dooley type: object 28*6b324d19SConor Dooley additionalProperties: false 29*6b324d19SConor Dooley 30*6b324d19SConor Dooley patternProperties: 31*6b324d19SConor Dooley '-pins$': 32*6b324d19SConor Dooley type: object 33*6b324d19SConor Dooley additionalProperties: false 34*6b324d19SConor Dooley 35*6b324d19SConor Dooley allOf: 36*6b324d19SConor Dooley - $ref: pincfg-node.yaml# 37*6b324d19SConor Dooley - $ref: pinmux-node.yaml# 38*6b324d19SConor Dooley 39*6b324d19SConor Dooley properties: 40*6b324d19SConor Dooley pins: 41*6b324d19SConor Dooley description: 42*6b324d19SConor Dooley The list of IOs that properties in the pincfg node apply to. 43*6b324d19SConor Dooley 44*6b324d19SConor Dooley function: 45*6b324d19SConor Dooley description: 46*6b324d19SConor Dooley A string containing the name of the function to mux for these 47*6b324d19SConor Dooley pins. The "reserved" function tristates a pin. 48*6b324d19SConor Dooley enum: [ sd, emmc, qspi, spi, usb, uart, i2c, can, mdio, misc 49*6b324d19SConor Dooley reserved, gpio, fabric-test, tied-low, tied-high, tristate ] 50*6b324d19SConor Dooley 51*6b324d19SConor Dooley bias-bus-hold: true 52*6b324d19SConor Dooley bias-disable: true 53*6b324d19SConor Dooley bias-pull-down: true 54*6b324d19SConor Dooley bias-pull-up: true 55*6b324d19SConor Dooley input-schmitt-enable: true 56*6b324d19SConor Dooley low-power-enable: true 57*6b324d19SConor Dooley 58*6b324d19SConor Dooley drive-strength: 59*6b324d19SConor Dooley enum: [ 2, 4, 6, 8, 10, 12, 16, 20 ] 60*6b324d19SConor Dooley 61*6b324d19SConor Dooley power-source: 62*6b324d19SConor Dooley description: 63*6b324d19SConor Dooley Which bank voltage to use. This cannot differ for pins in a 64*6b324d19SConor Dooley given bank, the whole bank uses the same voltage. 65*6b324d19SConor Dooley enum: [ 1200000, 1500000, 1800000, 2500000, 3300000 ] 66*6b324d19SConor Dooley 67*6b324d19SConor Dooley microchip,clamp-diode: 68*6b324d19SConor Dooley $ref: /schemas/types.yaml#/definitions/flag 69*6b324d19SConor Dooley description: 70*6b324d19SConor Dooley Reflects the "Clamp Diode" setting in the MSS Configurator for 71*6b324d19SConor Dooley this pin. This setting controls whether or not input voltage 72*6b324d19SConor Dooley clamping should be enabled. 73*6b324d19SConor Dooley 74*6b324d19SConor Dooley microchip,ibufmd: 75*6b324d19SConor Dooley $ref: /schemas/types.yaml#/definitions/uint32 76*6b324d19SConor Dooley default: 0 77*6b324d19SConor Dooley description: 78*6b324d19SConor Dooley Reflects the "IBUFMD" bits in the MSS Configurator output files 79*6b324d19SConor Dooley for this pin. 80*6b324d19SConor Dooley 81*6b324d19SConor Dooley required: 82*6b324d19SConor Dooley - pins 83*6b324d19SConor Dooley - function 84*6b324d19SConor Dooley - power-source 85*6b324d19SConor Dooley 86*6b324d19SConor Dooleyrequired: 87*6b324d19SConor Dooley - compatible 88*6b324d19SConor Dooley - reg 89*6b324d19SConor Dooley 90*6b324d19SConor DooleyadditionalProperties: false 91*6b324d19SConor Dooley 92*6b324d19SConor Dooleyexamples: 93*6b324d19SConor Dooley - | 94*6b324d19SConor Dooley pinctrl@204 { 95*6b324d19SConor Dooley compatible = "microchip,mpfs-pinctrl-mssio"; 96*6b324d19SConor Dooley reg = <0x204 0x7c>; 97*6b324d19SConor Dooley 98*6b324d19SConor Dooley ikrd-spi1-cfg { 99*6b324d19SConor Dooley spi1-pins { 100*6b324d19SConor Dooley pins = <30>, <31>, <32>, <33>; 101*6b324d19SConor Dooley function = "spi"; 102*6b324d19SConor Dooley bias-pull-up; 103*6b324d19SConor Dooley drive-strength = <8>; 104*6b324d19SConor Dooley power-source = <3300000>; 105*6b324d19SConor Dooley microchip,ibufmd = <0x1>; 106*6b324d19SConor Dooley }; 107*6b324d19SConor Dooley }; 108*6b324d19SConor Dooley }; 109*6b324d19SConor Dooley... 110