ARM: dts: artpec: add and utilize artpec6 pin controller
authorNiklas Cassel <niklas.cassel@axis.com>
Wed, 21 Feb 2018 08:59:57 +0000 (09:59 +0100)
committerArnd Bergmann <arnd@arndb.de>
Tue, 6 Mar 2018 16:41:00 +0000 (17:41 +0100)
Add node for the pin controller used in the artpec6 SoC,
and start using it for the exising UARTs.

Signed-off-by: Niklas Cassel <niklas.cassel@axis.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/arm/boot/dts/artpec6.dtsi

index 981aecd..7a6d8f3 100644 (file)
                status = "disabled";
        };
 
+       pinctrl: pinctrl@f801d000 {
+               compatible = "axis,artpec6-pinctrl";
+               reg = <0xf801d000 0x400>;
+
+               pinctrl_uart0: uart0grp {
+                       function = "uart0";
+                       groups = "uart0grp2";
+                       bias-pull-up;
+               };
+               pinctrl_uart1: uart1grp {
+                       function = "uart1";
+                       groups = "uart1grp0";
+                       bias-pull-up;
+               };
+               pinctrl_uart2: uart2grp {
+                       function = "uart2";
+                       groups = "uart2grp1";
+                       bias-pull-up;
+               };
+               pinctrl_uart3: uart3grp {
+                       function = "uart3";
+                       groups = "uart3grp0";
+                       bias-pull-up;
+               };
+       };
+
        amba@0 {
                compatible = "simple-bus";
                #address-cells = <0x1>;
                        clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>,
                                <&clkctrl ARTPEC6_CLK_UART_PCLK>;
                        clock-names = "uart_clk", "apb_pclk";
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&pinctrl_uart0>;
                        status = "disabled";
                };
                uart1: serial@f8037000 {
                        clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>,
                                <&clkctrl ARTPEC6_CLK_UART_PCLK>;
                        clock-names = "uart_clk", "apb_pclk";
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&pinctrl_uart1>;
                        status = "disabled";
                };
                uart2: serial@f8038000 {
                        clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>,
                                <&clkctrl ARTPEC6_CLK_UART_PCLK>;
                        clock-names = "uart_clk", "apb_pclk";
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&pinctrl_uart2>;
                        status = "disabled";
                };
                uart3: serial@f8039000 {
                        clocks = <&clkctrl ARTPEC6_CLK_UART_REFCLK>,
                                <&clkctrl ARTPEC6_CLK_UART_PCLK>;
                        clock-names = "uart_clk", "apb_pclk";
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&pinctrl_uart3>;
                        status = "disabled";
                };
        };