[PATCH 2/2] Make cp210x register GPS PPS signals on the RI pin.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---
 drivers/usb/serial/cp210x.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/usb/serial/cp210x.c b/drivers/usb/serial/cp210x.c
index af96d592456b..458360851a71 100644
--- a/drivers/usb/serial/cp210x.c
+++ b/drivers/usb/serial/cp210x.c
@@ -857,6 +857,15 @@ static void cp210x_process_msr(struct usb_serial_port *port, unsigned char msr,
 
 	if(msr & CP210X_MSR_DELTA_RI_BIT) {
 		port->icount.rng++;
+
+		// Support PPS signal on Ring Indicator pin. While uncommon, this is
+		// found on some devices, like the Adafruit Ultimate GPS USB-C edition.
+		tty = tty_port_tty_get(&port->port);
+		if (tty) {
+			usb_serial_handle_dcd_change(port, tty,
+				(msr) & CP210X_MSR_RI_STATE_BIT);
+		}
+		tty_kref_put(tty);
 	}
 
 	if(msr & CP210X_MSR_DELTA_DCD_BIT) {
-- 
2.34.1





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux