From: "Ji-Ze Hong \(Peter Hong\)" <hpeter@gmail.com>
To: Johan Hovold <johan@kernel.org>
Cc: peter_hong@fintek.com.tw, gregkh@linuxfoundation.org,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
"Ji-Ze Hong \(Peter Hong\)" <hpeter+linux_kernel@gmail.com>
Subject: [V9,4/4] USB: serial: f81232: implement break control
Date: Mon, 6 May 2019 10:52:27 +0800 [thread overview]
Message-ID: <84cff579-79bd-9456-aa85-cb4510d916ed@gmail.com> (raw)
Hi Johan,
Johan Hovold 於 2019/5/3 下午 02:59 寫道:
>> @@ -519,6 +530,7 @@ static int f81232_port_disable(struct usb_serial_port *port)
>> static void f81232_set_termios(struct tty_struct *tty,
>> struct usb_serial_port *port, struct ktermios *old_termios)
>> {
>> + struct f81232_private *priv = usb_get_serial_port_data(port);
>> u8 new_lcr = 0;
>> int status = 0;
>> speed_t baudrate;
>> @@ -572,11 +584,16 @@ static void f81232_set_termios(struct tty_struct *tty,
>> break;
>> }
>>
>> + mutex_lock(&priv->lock);
>> +
>> + new_lcr |= (priv->shadow_lcr & UART_LCR_SBC);
>> status = f81232_set_register(port, LINE_CONTROL_REGISTER, new_lcr);
>> if (status) {
>> dev_err(&port->dev, "%s failed to set LCR: %d\n",
>> __func__, status);
>> }
>> +
>> + mutex_unlock(&priv->lock);
>
> You forgot to update shadow_lcr here so the line settings would be
> corrupted (e.g set to 5 bit words) whenever a break is signalled.
>
> Did you not test this version of the patch?
>
> I added the missing update, but please test the code that's in my
> usb-next branch in a minute and confirm everything works as expected.
>
Thanks for mention and patch the lost parts. I had only tested the
break signal and forgot to test full LCR. I'll add it to my test items
and it tested well on new usb-next branch after your fix.
BTW, Should I disable break control when port close ?
Thanks.
WARNING: multiple messages have this Message-ID (diff)
From: "Ji-Ze Hong (Peter Hong)" <hpeter@gmail.com>
To: Johan Hovold <johan@kernel.org>
Cc: peter_hong@fintek.com.tw, gregkh@linuxfoundation.org,
linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
"Ji-Ze Hong (Peter Hong)" <hpeter+linux_kernel@gmail.com>
Subject: Re: [PATCH V9 4/4] USB: serial: f81232: implement break control
Date: Mon, 6 May 2019 10:52:27 +0800 [thread overview]
Message-ID: <84cff579-79bd-9456-aa85-cb4510d916ed@gmail.com> (raw)
Message-ID: <20190506025227.U1D859g3I2NU62YgBfzDasd0qLsVYOH3Q8cQd10-17Y@z> (raw)
In-Reply-To: <20190503065917.GA26546@localhost>
Hi Johan,
Johan Hovold 於 2019/5/3 下午 02:59 寫道:
>> @@ -519,6 +530,7 @@ static int f81232_port_disable(struct usb_serial_port *port)
>> static void f81232_set_termios(struct tty_struct *tty,
>> struct usb_serial_port *port, struct ktermios *old_termios)
>> {
>> + struct f81232_private *priv = usb_get_serial_port_data(port);
>> u8 new_lcr = 0;
>> int status = 0;
>> speed_t baudrate;
>> @@ -572,11 +584,16 @@ static void f81232_set_termios(struct tty_struct *tty,
>> break;
>> }
>>
>> + mutex_lock(&priv->lock);
>> +
>> + new_lcr |= (priv->shadow_lcr & UART_LCR_SBC);
>> status = f81232_set_register(port, LINE_CONTROL_REGISTER, new_lcr);
>> if (status) {
>> dev_err(&port->dev, "%s failed to set LCR: %d\n",
>> __func__, status);
>> }
>> +
>> + mutex_unlock(&priv->lock);
>
> You forgot to update shadow_lcr here so the line settings would be
> corrupted (e.g set to 5 bit words) whenever a break is signalled.
>
> Did you not test this version of the patch?
>
> I added the missing update, but please test the code that's in my
> usb-next branch in a minute and confirm everything works as expected.
>
Thanks for mention and patch the lost parts. I had only tested the
break signal and forgot to test full LCR. I'll add it to my test items
and it tested well on new usb-next branch after your fix.
BTW, Should I disable break control when port close ?
Thanks.
--
With Best Regards,
Peter Hong
next prev reply other threads:[~2019-05-06 2:52 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-30 1:22 [V9,1/4] USB: serial: f81232: fix interrupt worker not stop Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [PATCH V9 1/4] " Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [V9,2/4] USB: serial: f81232: clear overrun flag Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [PATCH V9 2/4] " Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [V9,3/4] USB: serial: f81232: add high baud rate support Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [PATCH V9 3/4] " Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [V9,4/4] USB: serial: f81232: implement break control Ji-Ze Hong (Peter Hong)
2019-04-30 1:22 ` [PATCH V9 4/4] " Ji-Ze Hong (Peter Hong)
2019-05-03 6:59 ` [V9,4/4] " Johan Hovold
2019-05-03 6:59 ` [PATCH V9 4/4] " Johan Hovold
2019-05-06 2:52 ` Ji-Ze Hong (Peter Hong) [this message]
2019-05-06 2:52 ` Ji-Ze Hong (Peter Hong)
2019-05-07 9:16 ` Johan Hovold
2019-05-03 6:53 ` [V9,1/4] USB: serial: f81232: fix interrupt worker not stop Johan Hovold
2019-05-03 6:53 ` [PATCH V9 1/4] " Johan Hovold
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=84cff579-79bd-9456-aa85-cb4510d916ed@gmail.com \
--to=hpeter@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=hpeter+linux_kernel@gmail.com \
--cc=johan@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=peter_hong@fintek.com.tw \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).