16be33864SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 26be33864SEmmanuel Vadot%YAML 1.2 36be33864SEmmanuel Vadot--- 46be33864SEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/toshiba,visconti-pinctrl.yaml# 56be33864SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 66be33864SEmmanuel Vadot 76be33864SEmmanuel Vadottitle: Toshiba Visconti TMPV770x pin mux/config controller 86be33864SEmmanuel Vadot 96be33864SEmmanuel Vadotmaintainers: 106be33864SEmmanuel Vadot - Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> 116be33864SEmmanuel Vadot 126be33864SEmmanuel Vadotdescription: 136be33864SEmmanuel Vadot Toshiba's Visconti ARM SoC a pin mux/config controller. 146be33864SEmmanuel Vadot 156be33864SEmmanuel Vadotproperties: 166be33864SEmmanuel Vadot compatible: 176be33864SEmmanuel Vadot enum: 186be33864SEmmanuel Vadot - toshiba,tmpv7708-pinctrl 196be33864SEmmanuel Vadot 206be33864SEmmanuel Vadot reg: 216be33864SEmmanuel Vadot maxItems: 1 226be33864SEmmanuel Vadot 23e67e8565SEmmanuel VadotallOf: 24*fac71e4eSEmmanuel Vadot - $ref: pinctrl.yaml# 25e67e8565SEmmanuel Vadot 266be33864SEmmanuel Vadotrequired: 276be33864SEmmanuel Vadot - compatible 286be33864SEmmanuel Vadot - reg 296be33864SEmmanuel Vadot 306be33864SEmmanuel VadotpatternProperties: 316be33864SEmmanuel Vadot '-pins$': 326be33864SEmmanuel Vadot type: object 336be33864SEmmanuel Vadot description: | 346be33864SEmmanuel Vadot A pinctrl node should contain at least one subnodes representing the 356be33864SEmmanuel Vadot pinctrl groups available on the machine. Each subnode will list the 366be33864SEmmanuel Vadot pins it needs, and how they should be configured, with regard to muxer 376be33864SEmmanuel Vadot configuration, pullups, drive strength. 38*fac71e4eSEmmanuel Vadot $ref: pinmux-node.yaml 397ef62cebSEmmanuel Vadot additionalProperties: false 406be33864SEmmanuel Vadot 416be33864SEmmanuel Vadot properties: 426be33864SEmmanuel Vadot function: 436be33864SEmmanuel Vadot description: 446be33864SEmmanuel Vadot Function to mux. 45*fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 466be33864SEmmanuel Vadot enum: [i2c0, i2c1, i2c2, i2c3, i2c4, i2c5, i2c6, i2c7, i2c8, 476be33864SEmmanuel Vadot spi0, spi1, spi2, spi3, spi4, spi5, spi6, 486be33864SEmmanuel Vadot uart0, uart1, uart2, uart3, pwm, pcmif_out, pcmif_in] 496be33864SEmmanuel Vadot 506be33864SEmmanuel Vadot groups: 516be33864SEmmanuel Vadot description: 526be33864SEmmanuel Vadot Name of the pin group to use for the functions. 53*fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 546be33864SEmmanuel Vadot enum: [i2c0_grp, i2c1_grp, i2c2_grp, i2c3_grp, i2c4_grp, 556be33864SEmmanuel Vadot i2c5_grp, i2c6_grp, i2c7_grp, i2c8_grp, 566be33864SEmmanuel Vadot spi0_grp, spi0_cs0_grp, spi0_cs1_grp, spi0_cs2_grp, 576be33864SEmmanuel Vadot spi1_grp, spi2_grp, spi3_grp, spi4_grp, spi5_grp, spi6_grp, 586be33864SEmmanuel Vadot uart0_grp, uart1_grp, uart2_grp, uart3_grp, 596be33864SEmmanuel Vadot pwm0_gpio4_grp, pwm0_gpio8_grp, pwm0_gpio12_grp, 606be33864SEmmanuel Vadot pwm0_gpio16_grp, pwm1_gpio5_grp, pwm1_gpio9_grp, 616be33864SEmmanuel Vadot pwm1_gpio13_grp, pwm1_gpio17_grp, pwm2_gpio6_grp, 626be33864SEmmanuel Vadot pwm2_gpio10_grp, pwm2_gpio14_grp, pwm2_gpio18_grp, 636be33864SEmmanuel Vadot pwm3_gpio7_grp, pwm3_gpio11_grp, pwm3_gpio15_grp, 646be33864SEmmanuel Vadot pwm3_gpio19_grp, pcmif_out_grp, pcmif_in_grp] 656be33864SEmmanuel Vadot 666be33864SEmmanuel Vadot drive-strength: 676be33864SEmmanuel Vadot enum: [2, 4, 6, 8, 16, 24, 32] 686be33864SEmmanuel Vadot default: 2 696be33864SEmmanuel Vadot description: 706be33864SEmmanuel Vadot Selects the drive strength for the specified pins, in mA. 716be33864SEmmanuel Vadot 726be33864SEmmanuel Vadot bias-pull-up: true 736be33864SEmmanuel Vadot 746be33864SEmmanuel Vadot bias-pull-down: true 756be33864SEmmanuel Vadot 766be33864SEmmanuel Vadot bias-disable: true 776be33864SEmmanuel Vadot 786be33864SEmmanuel VadotadditionalProperties: false 796be33864SEmmanuel Vadot 806be33864SEmmanuel Vadotexamples: 816be33864SEmmanuel Vadot # Pinmux controller node 826be33864SEmmanuel Vadot - | 836be33864SEmmanuel Vadot soc { 846be33864SEmmanuel Vadot #address-cells = <2>; 856be33864SEmmanuel Vadot #size-cells = <2>; 866be33864SEmmanuel Vadot 87e67e8565SEmmanuel Vadot pmux: pinmux@24190000 { 886be33864SEmmanuel Vadot compatible = "toshiba,tmpv7708-pinctrl"; 896be33864SEmmanuel Vadot reg = <0 0x24190000 0 0x10000>; 906be33864SEmmanuel Vadot 916be33864SEmmanuel Vadot spi0_pins: spi0-pins { 926be33864SEmmanuel Vadot function = "spi0"; 936be33864SEmmanuel Vadot groups = "spi0_grp"; 946be33864SEmmanuel Vadot }; 956be33864SEmmanuel Vadot }; 966be33864SEmmanuel Vadot }; 97