162306a36Sopenharmony_ciAxis ARTPEC-6 Pin Controller 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciRequired properties: 462306a36Sopenharmony_ci- compatible: "axis,artpec6-pinctrl". 562306a36Sopenharmony_ci- reg: Should contain the register physical address and length for the pin 662306a36Sopenharmony_ci controller. 762306a36Sopenharmony_ci 862306a36Sopenharmony_ciA pinctrl node should contain at least one subnode representing the pinctrl 962306a36Sopenharmony_cigroups available on the machine. Each subnode will list the mux function 1062306a36Sopenharmony_cirequired and what pin group it will use. Each subnode will also configure the 1162306a36Sopenharmony_cidrive strength and bias pullup of the pin group. If either of these options is 1262306a36Sopenharmony_cinot set, its actual value will be unspecified. 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ciRequired subnode-properties: 1662306a36Sopenharmony_ci- function: Function to mux. 1762306a36Sopenharmony_ci- groups: Name of the pin group to use for the function above. 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci Available functions and groups (function: group0, group1...): 2062306a36Sopenharmony_ci gpio: cpuclkoutgrp0, udlclkoutgrp0, i2c1grp0, i2c2grp0, 2162306a36Sopenharmony_ci i2c3grp0, i2s0grp0, i2s1grp0, i2srefclkgrp0, spi0grp0, 2262306a36Sopenharmony_ci spi1grp0, pciedebuggrp0, uart0grp0, uart0grp1, uart0grp2, 2362306a36Sopenharmony_ci uart1grp0, uart1grp1, uart2grp0, uart2grp1, uart2grp2, 2462306a36Sopenharmony_ci uart3grp0, uart4grp0, uart4grp1, uart5grp0, uart5grp1, 2562306a36Sopenharmony_ci uart5nocts 2662306a36Sopenharmony_ci cpuclkout: cpuclkoutgrp0 2762306a36Sopenharmony_ci udlclkout: udlclkoutgrp0 2862306a36Sopenharmony_ci i2c1: i2c1grp0 2962306a36Sopenharmony_ci i2c2: i2c2grp0 3062306a36Sopenharmony_ci i2c3: i2c3grp0 3162306a36Sopenharmony_ci i2s0: i2s0grp0 3262306a36Sopenharmony_ci i2s1: i2s1grp0 3362306a36Sopenharmony_ci i2srefclk: i2srefclkgrp0 3462306a36Sopenharmony_ci spi0: spi0grp0 3562306a36Sopenharmony_ci spi1: spi1grp0 3662306a36Sopenharmony_ci pciedebug: pciedebuggrp0 3762306a36Sopenharmony_ci uart0: uart0grp0, uart0grp1, uart0grp2 3862306a36Sopenharmony_ci uart1: uart1grp0, uart1grp1 3962306a36Sopenharmony_ci uart2: uart2grp0, uart2grp1, uart2grp2 4062306a36Sopenharmony_ci uart3: uart3grp0 4162306a36Sopenharmony_ci uart4: uart4grp0, uart4grp1 4262306a36Sopenharmony_ci uart5: uart5grp0, uart5grp1, uart5nocts 4362306a36Sopenharmony_ci nand: nandgrp0 4462306a36Sopenharmony_ci sdio0: sdio0grp0 4562306a36Sopenharmony_ci sdio1: sdio1grp0 4662306a36Sopenharmony_ci ethernet: ethernetgrp0 4762306a36Sopenharmony_ci 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ciOptional subnode-properties (see pinctrl-bindings.txt): 5062306a36Sopenharmony_ci- drive-strength: 4, 6, 8, 9 mA. For SD and NAND pins, this is for 3.3V VCCQ3. 5162306a36Sopenharmony_ci- bias-pull-up 5262306a36Sopenharmony_ci- bias-disable 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ciExamples: 5562306a36Sopenharmony_cipinctrl@f801d000 { 5662306a36Sopenharmony_ci compatible = "axis,artpec6-pinctrl"; 5762306a36Sopenharmony_ci reg = <0xf801d000 0x400>; 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci pinctrl_uart0: uart0grp { 6062306a36Sopenharmony_ci function = "uart0"; 6162306a36Sopenharmony_ci groups = "uart0grp0"; 6262306a36Sopenharmony_ci drive-strength = <4>; 6362306a36Sopenharmony_ci bias-pull-up; 6462306a36Sopenharmony_ci }; 6562306a36Sopenharmony_ci pinctrl_uart3: uart3grp { 6662306a36Sopenharmony_ci function = "uart3"; 6762306a36Sopenharmony_ci groups = "uart3grp0"; 6862306a36Sopenharmony_ci }; 6962306a36Sopenharmony_ci}; 7062306a36Sopenharmony_ciuart0: uart@f8036000 { 7162306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 7262306a36Sopenharmony_ci reg = <0xf8036000 0x1000>; 7362306a36Sopenharmony_ci interrupts = <0 104 IRQ_TYPE_LEVEL_HIGH>; 7462306a36Sopenharmony_ci clocks = <&pll2div24>, <&apb_pclk>; 7562306a36Sopenharmony_ci clock-names = "uart_clk", "apb_pclk"; 7662306a36Sopenharmony_ci pinctrl-names = "default"; 7762306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart0>; 7862306a36Sopenharmony_ci}; 7962306a36Sopenharmony_ciuart3: uart@f8039000 { 8062306a36Sopenharmony_ci compatible = "arm,pl011", "arm,primecell"; 8162306a36Sopenharmony_ci reg = <0xf8039000 0x1000>; 8262306a36Sopenharmony_ci interrupts = <0 128 IRQ_TYPE_LEVEL_HIGH>; 8362306a36Sopenharmony_ci clocks = <&pll2div24>, <&apb_pclk>; 8462306a36Sopenharmony_ci clock-names = "uart_clk", "apb_pclk"; 8562306a36Sopenharmony_ci pinctrl-names = "default"; 8662306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_uart3>; 8762306a36Sopenharmony_ci}; 88