AnsweredAssumed Answered

RTS not working on i.MX6 UART

Question asked by Marco Cavallini on Apr 30, 2015
Latest reply on May 14, 2018 by Marco Cavallini

Hello,

I am using a linux kernel-3.10.17 and I'm trying to communicate between two UARTS on a i.MX6S CPU.

I am using RS485 adapters and the problem is that the RTS signal is always high when I transmit and receive.

Do I need any special setting to manage RTS/CTS?

This is my device tree excerpt

 

Thank you

 

uart2m {

pinctrl_uart2_m: uart2grp-m {

  fsl,pins = <

   MX6QDL_PAD_GPIO_7__UART2_RX_DATA  0x1b0b1    // new (ALT4)

   MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1    // default

   MX6QDL_PAD_EIM_D28__UART2_CTS_B   0x1b0b1    // new (ALT4)

   MX6QDL_PAD_EIM_D29__UART2_RTS_B   0x1b0b1    // new (ALT4)

  >;

};

};

 

uart3m {

pinctrl_uart3_m: uart3grp-m {

  fsl,pins = <

   MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1    // new (ALT2)

   MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1    // new (ALT2)

   MX6QDL_PAD_EIM_D23__UART3_CTS_B   0x1b0b1    // new (ALT2)

   MX6QDL_PAD_EIM_D31__UART3_RTS_B   0x1b0b1    // new (ALT4)

  >;

};

};

 

&uart2 {

pinctrl-names = "default";

pinctrl-0 = <&pinctrl_uart2_m>;

fsl,uart-has-rtscts;

status = "okay";

};

 

&uart3 {

pinctrl-names = "default";

pinctrl-0 = <&pinctrl_uart3_m>;

fsl,uart-has-rtscts;

status = "okay";

};

Outcomes