]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ARM: dts: ti: omap: am335x-regor: Fix RS485 settings
authorSteffen Hemer <s.hemer@phytec.de>
Tue, 30 Jul 2024 09:23:52 +0000 (11:23 +0200)
committerKevin Hilman <khilman@baylibre.com>
Tue, 30 Jul 2024 22:19:13 +0000 (15:19 -0700)
RTS pin seems to have inverted behavior on am335x, other than expected
with default "rs485-rts-active-high" (instead of low on idle, high on send,
it is the opposite). Transceiver datasheet also suggests a pulldown.
Add includes to pin definitions that are used.

Signed-off-by: Steffen Hemer <s.hemer@phytec.de>
Signed-off-by: Dominik Haller <d.haller@phytec.de>
Link: https://lore.kernel.org/r/20240730092353.10209-1-d.haller@phytec.de
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
arch/arm/boot/dts/ti/omap/am335x-regor.dtsi

index 625db3bcd3656dc60545d7865a6c40b7ffae9f87..287d209a0ea92bb41cc33672037b274e5a0ca625 100644 (file)
@@ -5,6 +5,9 @@
  *
  */
 
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/pinctrl/am33xx.h>
+
 / {
        model = "Phytec AM335x phyBOARD-REGOR";
        compatible = "phytec,am335x-regor", "phytec,am335x-phycore-som", "ti,am33xx";
                pinctrl-single,pins = <
                        AM33XX_PADCONF(AM335X_PIN_UART1_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
                        AM33XX_PADCONF(AM335X_PIN_UART1_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
-                       AM33XX_PADCONF(AM335X_PIN_UART1_RTSN, PIN_OUTPUT_PULLUP, MUX_MODE0)
+                       AM33XX_PADCONF(AM335X_PIN_UART1_RTSN, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
                >;
        };
 };
        pinctrl-0 = <&uart1_rs485_pins>;
        status = "okay";
        linux,rs485-enabled-at-boot-time;
+       /*
+        * un-intuitively, yet with the default (active-high),
+        * am335x RTS is high on idle and gets low on active !
+        */
+       rs485-rts-active-low;
 };