1*9247752bSChris Packham# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*9247752bSChris Packham%YAML 1.2 3*9247752bSChris Packham--- 4*9247752bSChris Packham$id: http://devicetree.org/schemas/pinctrl/marvell,ac5-pinctrl.yaml# 5*9247752bSChris Packham$schema: http://devicetree.org/meta-schemas/core.yaml# 6*9247752bSChris Packham 7*9247752bSChris Packhamtitle: Marvell AC5 pin controller 8*9247752bSChris Packham 9*9247752bSChris Packhammaintainers: 10*9247752bSChris Packham - Chris Packham <chris.packham@alliedtelesis.co.nz> 11*9247752bSChris Packham 12*9247752bSChris Packhamdescription: 13*9247752bSChris Packham Bindings for Marvell's AC5 memory-mapped pin controller. 14*9247752bSChris Packham 15*9247752bSChris Packhamproperties: 16*9247752bSChris Packham compatible: 17*9247752bSChris Packham items: 18*9247752bSChris Packham - const: marvell,ac5-pinctrl 19*9247752bSChris Packham 20*9247752bSChris Packham reg: 21*9247752bSChris Packham maxItems: 1 22*9247752bSChris Packham 23*9247752bSChris PackhampatternProperties: 24*9247752bSChris Packham '-pins$': 25*9247752bSChris Packham type: object 26*9247752bSChris Packham $ref: pinmux-node.yaml# 27*9247752bSChris Packham 28*9247752bSChris Packham properties: 29*9247752bSChris Packham marvell,function: 30*9247752bSChris Packham $ref: "/schemas/types.yaml#/definitions/string" 31*9247752bSChris Packham description: 32*9247752bSChris Packham Indicates the function to select. 33*9247752bSChris Packham enum: [ dev_init_done, ge, gpio, i2c0, i2c1, int_out, led, nand, pcie, ptp, sdio, 34*9247752bSChris Packham spi0, spi1, synce, tsen_int, uart0, uart1, uart2, uart3, uartsd, wd_int, xg ] 35*9247752bSChris Packham 36*9247752bSChris Packham marvell,pins: 37*9247752bSChris Packham $ref: /schemas/types.yaml#/definitions/string-array 38*9247752bSChris Packham description: 39*9247752bSChris Packham Array of MPP pins to be used for the given function. 40*9247752bSChris Packham minItems: 1 41*9247752bSChris Packham items: 42*9247752bSChris Packham enum: [ mpp0, mpp1, mpp2, mpp3, mpp4, mpp5, mpp6, mpp7, mpp8, mpp9, 43*9247752bSChris Packham mpp10, mpp11, mpp12, mpp13, mpp14, mpp15, mpp16, mpp17, mpp18, mpp19, 44*9247752bSChris Packham mpp20, mpp21, mpp22, mpp23, mpp24, mpp25, mpp26, mpp27, mpp28, mpp29, 45*9247752bSChris Packham mpp30, mpp31, mpp32, mpp33, mpp34, mpp35, mpp36, mpp37, mpp38, mpp39, 46*9247752bSChris Packham mpp40, mpp41, mpp42, mpp43, mpp44, mpp45 ] 47*9247752bSChris Packham 48*9247752bSChris PackhamallOf: 49*9247752bSChris Packham - $ref: "pinctrl.yaml#" 50*9247752bSChris Packham 51*9247752bSChris Packhamrequired: 52*9247752bSChris Packham - compatible 53*9247752bSChris Packham - reg 54*9247752bSChris Packham 55*9247752bSChris PackhamadditionalProperties: false 56*9247752bSChris Packham 57*9247752bSChris Packhamexamples: 58*9247752bSChris Packham - | 59*9247752bSChris Packham pinctrl@80020100 { 60*9247752bSChris Packham compatible = "marvell,ac5-pinctrl"; 61*9247752bSChris Packham reg = <0x80020100 0x20>; 62*9247752bSChris Packham 63*9247752bSChris Packham i2c0_pins: i2c0-pins { 64*9247752bSChris Packham marvell,pins = "mpp26", "mpp27"; 65*9247752bSChris Packham marvell,function = "i2c0"; 66*9247752bSChris Packham }; 67*9247752bSChris Packham 68*9247752bSChris Packham i2c0_gpio: i2c0-gpio-pins { 69*9247752bSChris Packham marvell,pins = "mpp26", "mpp27"; 70*9247752bSChris Packham marvell,function = "gpio"; 71*9247752bSChris Packham }; 72*9247752bSChris Packham }; 73