On Thu, Feb 17, 2022 at 12:05:49AM -0800, daniel.starke@xxxxxxxxxxx wrote: > n_gsm is based on the 3GPP 07.010 and its newer version is the 3GPP 27.010. > See https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=1516 > The changes from 07.010 to 27.010 are non-functional. Therefore, I refer to > the newer 27.010 here. Chapter 5.4.6.3.7 describes the encoding of the > control signal octet used by the MSC (modem status command). The same > encoding is also used in convergence layer type 2 as described in chapter > 5.5.2. Table 7 and 24 both require the DV (data valid) bit to be set 1 for > outgoing control signal octets sent by the DTE (data terminal equipment), > i.e. for the initiator side. > Currently, the DV bit is only set if CD (carrier detect) is on, regardless > of the side. > > This patch fixes this behavior by setting the DV bit on the initiator side > unconditionally. > > Fixes: e1eaea46bb40 ("tty: n_gsm line discipline") > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Daniel Starke <daniel.starke@xxxxxxxxxxx> > --- > drivers/tty/n_gsm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/tty/n_gsm.c b/drivers/tty/n_gsm.c > index 0b1808e3a912..e199315a158e 100644 > --- a/drivers/tty/n_gsm.c > +++ b/drivers/tty/n_gsm.c > @@ -439,7 +439,7 @@ static u8 gsm_encode_modem(const struct gsm_dlci *dlci) > modembits |= MDM_RTR; > if (dlci->modem_tx & TIOCM_RI) > modembits |= MDM_IC; > - if (dlci->modem_tx & TIOCM_CD) > + if (dlci->modem_tx & TIOCM_CD || dlci->gsm->initiator) > modembits |= MDM_DV; > return modembits; > } > -- > 2.25.1 > All of these are patch 1/1, which is odd :( Please renumber them properly and resend. thanks, greg k-h