19c6c149bSJesper NilssonAxis ARTPEC-6 Pin Controller 29c6c149bSJesper Nilsson 39c6c149bSJesper NilssonRequired properties: 49c6c149bSJesper Nilsson- compatible: "axis,artpec6-pinctrl". 59c6c149bSJesper Nilsson- reg: Should contain the register physical address and length for the pin 69c6c149bSJesper Nilsson controller. 79c6c149bSJesper Nilsson 89c6c149bSJesper NilssonA pinctrl node should contain at least one subnode representing the pinctrl 99c6c149bSJesper Nilssongroups available on the machine. Each subnode will list the mux function 109c6c149bSJesper Nilssonrequired and what pin group it will use. Each subnode will also configure the 119c6c149bSJesper Nilssondrive strength and bias pullup of the pin group. If either of these options is 129c6c149bSJesper Nilssonnot set, its actual value will be unspecified. 139c6c149bSJesper Nilsson 149c6c149bSJesper Nilsson 159c6c149bSJesper NilssonRequired subnode-properties: 169c6c149bSJesper Nilsson- function: Function to mux. 179c6c149bSJesper Nilsson- groups: Name of the pin group to use for the function above. 189c6c149bSJesper Nilsson 199c6c149bSJesper Nilsson Available functions and groups (function: group0, group1...): 209c6c149bSJesper Nilsson gpio: cpuclkoutgrp0, udlclkoutgrp0, i2c1grp0, i2c2grp0, 219c6c149bSJesper Nilsson i2c3grp0, i2s0grp0, i2s1grp0, i2srefclkgrp0, spi0grp0, 229c6c149bSJesper Nilsson spi1grp0, pciedebuggrp0, uart0grp0, uart0grp1, uart1grp0, 237e065fb9SNiklas Cassel uart2grp0, uart2grp1, uart3grp0, uart4grp0, uart5grp0, 247e065fb9SNiklas Cassel uart5nocts 259c6c149bSJesper Nilsson cpuclkout: cpuclkoutgrp0 269c6c149bSJesper Nilsson udlclkout: udlclkoutgrp0 279c6c149bSJesper Nilsson i2c1: i2c1grp0 289c6c149bSJesper Nilsson i2c2: i2c2grp0 299c6c149bSJesper Nilsson i2c3: i2c3grp0 309c6c149bSJesper Nilsson i2s0: i2s0grp0 319c6c149bSJesper Nilsson i2s1: i2s1grp0 329c6c149bSJesper Nilsson i2srefclk: i2srefclkgrp0 339c6c149bSJesper Nilsson spi0: spi0grp0 349c6c149bSJesper Nilsson spi1: spi1grp0 359c6c149bSJesper Nilsson pciedebug: pciedebuggrp0 369c6c149bSJesper Nilsson uart0: uart0grp0, uart0grp1 379c6c149bSJesper Nilsson uart1: uart1grp0 389c6c149bSJesper Nilsson uart2: uart2grp0, uart2grp1 399c6c149bSJesper Nilsson uart3: uart3grp0 409c6c149bSJesper Nilsson uart4: uart4grp0 417e065fb9SNiklas Cassel uart5: uart5grp0, uart5nocts 429c6c149bSJesper Nilsson nand: nandgrp0 439c6c149bSJesper Nilsson sdio0: sdio0grp0 449c6c149bSJesper Nilsson sdio1: sdio1grp0 459c6c149bSJesper Nilsson ethernet: ethernetgrp0 469c6c149bSJesper Nilsson 479c6c149bSJesper Nilsson 489c6c149bSJesper NilssonOptional subnode-properties (see pinctrl-bindings.txt): 499c6c149bSJesper Nilsson- drive-strength: 4, 6, 8, 9 mA. For SD and NAND pins, this is for 3.3V VCCQ3. 509c6c149bSJesper Nilsson- bias-pull-up 519c6c149bSJesper Nilsson- bias-disable 529c6c149bSJesper Nilsson 539c6c149bSJesper NilssonExamples: 549c6c149bSJesper Nilssonpinctrl@f801d000 { 559c6c149bSJesper Nilsson compatible = "axis,artpec6-pinctrl"; 569c6c149bSJesper Nilsson reg = <0xf801d000 0x400>; 579c6c149bSJesper Nilsson 589c6c149bSJesper Nilsson pinctrl_uart0: uart0grp { 599c6c149bSJesper Nilsson function = "uart0"; 609c6c149bSJesper Nilsson groups = "uart0grp0"; 619c6c149bSJesper Nilsson drive-strength = <4>; 629c6c149bSJesper Nilsson bias-pull-up; 639c6c149bSJesper Nilsson }; 649c6c149bSJesper Nilsson pinctrl_uart3: uart3grp { 659c6c149bSJesper Nilsson function = "uart3"; 669c6c149bSJesper Nilsson groups = "uart3grp0"; 679c6c149bSJesper Nilsson }; 689c6c149bSJesper Nilsson}; 699c6c149bSJesper Nilssonuart0: uart@f8036000 { 709c6c149bSJesper Nilsson compatible = "arm,pl011", "arm,primecell"; 719c6c149bSJesper Nilsson reg = <0xf8036000 0x1000>; 729c6c149bSJesper Nilsson interrupts = <0 104 IRQ_TYPE_LEVEL_HIGH>; 739c6c149bSJesper Nilsson clocks = <&pll2div24>, <&apb_pclk>; 749c6c149bSJesper Nilsson clock-names = "uart_clk", "apb_pclk"; 759c6c149bSJesper Nilsson pinctrl-names = "default"; 769c6c149bSJesper Nilsson pinctrl-0 = <&pinctrl_uart0>; 779c6c149bSJesper Nilsson}; 789c6c149bSJesper Nilssonuart3: uart@f8039000 { 799c6c149bSJesper Nilsson compatible = "arm,pl011", "arm,primecell"; 809c6c149bSJesper Nilsson reg = <0xf8039000 0x1000>; 819c6c149bSJesper Nilsson interrupts = <0 128 IRQ_TYPE_LEVEL_HIGH>; 829c6c149bSJesper Nilsson clocks = <&pll2div24>, <&apb_pclk>; 839c6c149bSJesper Nilsson clock-names = "uart_clk", "apb_pclk"; 849c6c149bSJesper Nilsson pinctrl-names = "default"; 859c6c149bSJesper Nilsson pinctrl-0 = <&pinctrl_uart3>; 869c6c149bSJesper Nilsson}; 87