--- 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