]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: ti: am64-phyboard-electra: Add DT overlay for X27 connector
authorDaniel Schultz <d.schultz@phytec.de>
Tue, 28 Jan 2025 10:03:56 +0000 (02:03 -0800)
committerVignesh Raghavendra <vigneshr@ti.com>
Wed, 5 Mar 2025 04:16:09 +0000 (09:46 +0530)
Add a device tree overlay for SPI1 , UART3 and GPIO1 on
X27 connector.

By default, not all interfaces on the X27 connector are accessible
due to being disabled or set to alternative pin mux configurations.
This overlay activates and configures these interfaces to support
connections with external devices.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Link: https://lore.kernel.org/r/20250128100356.462934-1-d.schultz@phytec.de
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
arch/arm64/boot/dts/ti/Makefile
arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-x27-gpio1-spi1-uart3.dtso [new file with mode: 0644]

index 8a4bdf87e2d41aeecb1c064de3e962bf68b71c8a..03d4cecfc001c5c14884a23cb0eecbc5a4d7bc36 100644 (file)
@@ -54,6 +54,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am642-evm-nand.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am642-phyboard-electra-rdk.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am642-phyboard-electra-gpio-fan.dtbo
 dtb-$(CONFIG_ARCH_K3) += k3-am642-phyboard-electra-pcie-usb2.dtbo
+dtb-$(CONFIG_ARCH_K3) += k3-am642-phyboard-electra-x27-gpio1-spi1-uart3.dtbo
 dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am642-tqma64xxl-mbax4xxl.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am64-tqma64xxl-mbax4xxl-sdcard.dtbo
@@ -185,6 +186,8 @@ k3-am642-phyboard-electra-gpio-fan-dtbs := \
        k3-am642-phyboard-electra-rdk.dtb k3-am642-phyboard-electra-gpio-fan.dtbo
 k3-am642-phyboard-electra-pcie-usb2-dtbs := \
        k3-am642-phyboard-electra-rdk.dtb k3-am642-phyboard-electra-pcie-usb2.dtbo
+k3-am642-phyboard-electra-x27-gpio1-spi1-uart3-dtbs := \
+       k3-am642-phyboard-electra-rdk.dtb k3-am642-phyboard-electra-x27-gpio1-spi1-uart3.dtbo
 k3-am642-tqma64xxl-mbax4xxl-sdcard-dtbs := \
        k3-am642-tqma64xxl-mbax4xxl.dtb k3-am64-tqma64xxl-mbax4xxl-sdcard.dtbo
 k3-am642-tqma64xxl-mbax4xxl-wlan-dtbs := \
diff --git a/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-x27-gpio1-spi1-uart3.dtso b/arch/arm64/boot/dts/ti/k3-am642-phyboard-electra-x27-gpio1-spi1-uart3.dtso
new file mode 100644 (file)
index 0000000..996c42e
--- /dev/null
@@ -0,0 +1,63 @@
+// SPDX-License-Identifier: GPL-2.0-only OR MIT
+/*
+ * Copyright (C) 2025 PHYTEC Messtechnik GmbH
+ * Authors:
+ *   Wadim Egorov <w.egorov@phytec.de>
+ *   Daniel Schultz <d.schultz@phytec.de>
+ *
+ * GPIO, SPI and UART examples for the X27 expansion connector.
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include "k3-pinctrl.h"
+
+&{/} {
+       aliases {
+               serial5 = "/bus@f4000/serial@2830000";
+       };
+};
+
+&main_pmx0 {
+       main_gpio1_exp_header_gpio_pins_default: main-gpio1-exp-header-gpio-pins-default {
+               pinctrl-single,pins = <
+                       AM64X_IOPAD(0x0220, PIN_INPUT, 7)       /* (D14) SPI1_CS1.GPIO1_48 */
+               >;
+       };
+
+       main_spi1_pins_default: main-spi1-pins-default {
+               pinctrl-single,pins = <
+                       AM64X_IOPAD(0x0224, PIN_INPUT, 0)       /* (C14) SPI1_CLK */
+                       AM64X_IOPAD(0x021C, PIN_OUTPUT, 0)      /* (B14) SPI1_CS0 */
+                       AM64X_IOPAD(0x0228, PIN_OUTPUT, 0)      /* (B15) SPI1_D0 */
+                       AM64X_IOPAD(0x022C, PIN_INPUT, 0)       /* (A15) SPI1_D1 */
+               >;
+       };
+
+       main_uart3_pins_default: main-uart3-pins-default {
+               pinctrl-single,pins = <
+                       AM64X_IOPAD(0x0048, PIN_INPUT, 2)       /* (U20) GPMC0_AD3.UART3_RXD */
+                       AM64X_IOPAD(0x004c, PIN_OUTPUT, 2)      /* (U18) GPMC0_AD4.UART3_TXD */
+               >;
+       };
+};
+
+&main_gpio1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&main_gpio1_exp_header_gpio_pins_default>;
+       status = "okay";
+};
+
+&main_spi1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&main_spi1_pins_default>;
+       ti,pindir-d0-out-d1-in = <1>;
+       status = "okay";
+};
+
+&main_uart3 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&main_uart3_pins_default>;
+       status = "okay";
+};