ARM: dts: sun8i: r40: add pinmux settings for MMC3 and UARTs 2, 4, 5&7
authorIvan Uvarov <i.uvarov@cognitivepilot.com>
Wed, 7 Apr 2021 11:14:25 +0000 (14:14 +0300)
committerMaxime Ripard <maxime@cerno.tech>
Mon, 10 May 2021 07:14:42 +0000 (09:14 +0200)
The Forlinx OKA40i-C devboard makes use of UARTs 0,2,3,4,5 and 7 of the R40
SoC, of which UART 0 is connected to an RS232 converter, UART 5 routed to
an RS485 converter, and the rest broken out directly via labeled headers.
The board also contains a micro-SD slot connected to SDC3.

This patch adds settings to R40's pinmux node for MMC3 and those UARTs that
were not already mapped, which would allow us to make use of all available
UARTs and the micro-SD slot on this board in a further patch.

Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Ivan Uvarov <i.uvarov@cognitivepilot.com>
 1 file changed, 41 insertions(+)

Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20210407111428.3755684-3-i.uvarov@cognitivepilot.com
arch/arm/boot/dts/sun8i-r40.dtsi

index 0b257a0..03e054c 100644 (file)
                        clock-names = "ahb", "mmc";
                        resets = <&ccu RST_BUS_MMC3>;
                        reset-names = "ahb";
+                       pinctrl-0 = <&mmc3_pins>;
+                       pinctrl-names = "default";
                        interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
                        status = "disabled";
                        #address-cells = <1>;
                        };
 
                        /omit-if-no-ref/
+                       mmc3_pins: mmc3-pins {
+                               pins = "PI4", "PI5", "PI6",
+                                      "PI7", "PI8", "PI9";
+                               function = "mmc3";
+                               drive-strength = <30>;
+                               bias-pull-up;
+                       };
+
+                       /omit-if-no-ref/
                        spi0_pc_pins: spi0-pc-pins {
                                pins = "PC0", "PC1", "PC2";
                                function = "spi0";
                        };
 
                        /omit-if-no-ref/
+                       uart2_pi_pins: uart2-pi-pins {
+                               pins = "PI18", "PI19";
+                               function = "uart2";
+                       };
+
+                       /omit-if-no-ref/
+                       uart2_rts_cts_pi_pins: uart2-rts-cts-pi-pins{
+                               pins = "PI16", "PI17";
+                               function = "uart2";
+                       };
+
+                       /omit-if-no-ref/
                        uart3_pg_pins: uart3-pg-pins {
                                pins = "PG6", "PG7";
                                function = "uart3";
                                pins = "PG8", "PG9";
                                function = "uart3";
                        };
+
+                       /omit-if-no-ref/
+                       uart4_pg_pins: uart4-pg-pins {
+                               pins = "PG10", "PG11";
+                               function = "uart4";
+                       };
+
+                       /omit-if-no-ref/
+                       uart5_ph_pins: uart5-ph-pins {
+                               pins = "PH6", "PH7";
+                               function = "uart5";
+                       };
+
+                       /omit-if-no-ref/
+                       uart7_pi_pins: uart7-pi-pins {
+                               pins = "PI20", "PI21";
+                               function = "uart7";
+                       };
                };
 
                wdt: watchdog@1c20c90 {