[WP7605][SW] Reason to control UART1 CTS by TIOCM_RTS

Back Ground:
The customer try to control UART1 CTS, but it seems that CTS should be controlled by TIOCM_RTS, not TIOCM_CTS.

According to the following ticket, it seems that should be controlled by TIOCM_RTS, but we’ re not sure why CTS was not controlled by TIOCM_CTS.

Q1:
Could you tell me the reason of it?
Usually, CTS should be controlled by same signal name as TIOCM_CTS.

Q2:
As you know, customer use “gpiolib-sysfs.c” that can be controlled 8-wire UART by using not ioctrl().
In this case, is it necessary to enable “crtscts”?
In the other words, if I would like to control UART1 to external device, it is NOT worked 2-wire UART, in specification of WP point of view.
Is that correct?

Best Regards,

Q1:
According to WP76 product technical specification, UART1_CTS is output pin.
And if you see the wiki page here about DTE/DCE, the CTS pin for DCE is output pin which means that the WP module is regarded as DCE device.

However when you do the open UART port process in linux application, it will regard the device to be DTE, that is why you need to switch the naming in order to do what you want on CTS pin.

Q2:
“gpiolib-sysfs.c” did not change the behavior of CTS RTS.
So it is not related.
When you do the open UART port process in linux application, you should be able to choose the flow control setting.

You are introducing UART1_test.rar in another ticket.
This app uses “options.c_cflag | = CRTSCTS ;”.
Is this setting necessary when using UART1 with 8wire?
Please tell me why this setting is necessary.

According to below, CRTSCTS enables RTS/CTS (hardware) flow control