I have read a lot of posts in this community and on the internet
and the datasheet but I'm still confused about the RTS/CTS management with i.MX6.
Looks line any board is supporting these signals properly nor anybody really cares about them,
so I wonder if someone out there has experienced and solved this problem.
https://community.freescale.com/docs/DOC-97509
I need to reproduce the behaviour I have connecting two PCs with a
Loopback handshaking null modem cable
https://en.wikipedia.org/wiki/Null_modem#Loopback_handshaking
If I use 2 PCs I see RTS low during the transmission of data on TX
Using an i.MX6 UART3 (/dev/ttymxc2) configured in the Device Tree as follows
I get this 2 different behaviours depending on the "fsl,dte-mode" only.
TX and RTS are normally low
If I set "fsl,dte-mode" I see RTS going high during a period of time similar to the trasmission of data
but there is no data exiting out on TX
If I comment (unset) "fsl,dte-mode" I see data exiting out on TX
but RTS is always low not moving and not handshaking data.
Would be possible to use RTS/CTS like a PC does?
I tested this with linux kernel 3.14.28 and 4.1.15 without success.
pinctrl_uart3_mh: uart3grp-mh {
fsl,pins = <
MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
MX6QDL_PAD_EIM_D23__UART3_CTS_B 0x1b0b1
MX6QDL_PAD_EIM_D31__UART3_RTS_B 0x1b0b1
>;
};
&uart3 { // /dev/ttymxc2
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3_mh>;
fsl,uart-has-rtscts;
fsl,dte-mode;
status = "okay";
};
Any hint would be greatly appreciated.
TIA