From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [V9,4/4] USB: serial: f81232: implement break control From: "Ji-Ze Hong \(Peter Hong\)" Message-Id: <84cff579-79bd-9456-aa85-cb4510d916ed@gmail.com> Date: Mon, 6 May 2019 10:52:27 +0800 To: Johan Hovold Cc: peter_hong@fintek.com.tw, gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, "Ji-Ze Hong \(Peter Hong\)" List-ID: SGkgSm9oYW4sCgpKb2hhbiBIb3ZvbGQg5pa8IDIwMTkvNS8zIOS4i+WNiCAwMjo1OSDlr6vpgZM6 Cj4+IEBAIC01MTksNiArNTMwLDcgQEAgc3RhdGljIGludCBmODEyMzJfcG9ydF9kaXNhYmxlKHN0 cnVjdCB1c2Jfc2VyaWFsX3BvcnQgKnBvcnQpCj4+ICAgc3RhdGljIHZvaWQgZjgxMjMyX3NldF90 ZXJtaW9zKHN0cnVjdCB0dHlfc3RydWN0ICp0dHksCj4+ICAgCQlzdHJ1Y3QgdXNiX3NlcmlhbF9w b3J0ICpwb3J0LCBzdHJ1Y3Qga3Rlcm1pb3MgKm9sZF90ZXJtaW9zKQo+PiAgIHsKPj4gKwlzdHJ1 Y3QgZjgxMjMyX3ByaXZhdGUgKnByaXYgPSB1c2JfZ2V0X3NlcmlhbF9wb3J0X2RhdGEocG9ydCk7 Cj4+ICAgCXU4IG5ld19sY3IgPSAwOwo+PiAgIAlpbnQgc3RhdHVzID0gMDsKPj4gICAJc3BlZWRf dCBiYXVkcmF0ZTsKPj4gQEAgLTU3MiwxMSArNTg0LDE2IEBAIHN0YXRpYyB2b2lkIGY4MTIzMl9z ZXRfdGVybWlvcyhzdHJ1Y3QgdHR5X3N0cnVjdCAqdHR5LAo+PiAgIAkJYnJlYWs7Cj4+ICAgCX0K Pj4gICAKPj4gKwltdXRleF9sb2NrKCZwcml2LT5sb2NrKTsKPj4gKwo+PiArCW5ld19sY3IgfD0g KHByaXYtPnNoYWRvd19sY3IgJiBVQVJUX0xDUl9TQkMpOwo+PiAgIAlzdGF0dXMgPSBmODEyMzJf c2V0X3JlZ2lzdGVyKHBvcnQsIExJTkVfQ09OVFJPTF9SRUdJU1RFUiwgbmV3X2xjcik7Cj4+ICAg CWlmIChzdGF0dXMpIHsKPj4gICAJCWRldl9lcnIoJnBvcnQtPmRldiwgIiVzIGZhaWxlZCB0byBz ZXQgTENSOiAlZFxuIiwKPj4gICAJCQlfX2Z1bmNfXywgc3RhdHVzKTsKPj4gICAJfQo+PiArCj4+ ICsJbXV0ZXhfdW5sb2NrKCZwcml2LT5sb2NrKTsKPiAKPiBZb3UgZm9yZ290IHRvIHVwZGF0ZSBz aGFkb3dfbGNyIGhlcmUgc28gdGhlIGxpbmUgc2V0dGluZ3Mgd291bGQgYmUKPiBjb3JydXB0ZWQg KGUuZyBzZXQgdG8gNSBiaXQgd29yZHMpIHdoZW5ldmVyIGEgYnJlYWsgaXMgc2lnbmFsbGVkLgo+ IAo+IERpZCB5b3Ugbm90IHRlc3QgdGhpcyB2ZXJzaW9uIG9mIHRoZSBwYXRjaD8KPiAKPiBJIGFk ZGVkIHRoZSBtaXNzaW5nIHVwZGF0ZSwgYnV0IHBsZWFzZSB0ZXN0IHRoZSBjb2RlIHRoYXQncyBp biBteQo+IHVzYi1uZXh0IGJyYW5jaCBpbiBhIG1pbnV0ZSBhbmQgY29uZmlybSBldmVyeXRoaW5n IHdvcmtzIGFzIGV4cGVjdGVkLgo+IAoKVGhhbmtzIGZvciBtZW50aW9uIGFuZCBwYXRjaCB0aGUg bG9zdCBwYXJ0cy4gSSBoYWQgb25seSB0ZXN0ZWQgdGhlCmJyZWFrIHNpZ25hbCBhbmQgZm9yZ290 IHRvIHRlc3QgZnVsbCBMQ1IuIEknbGwgYWRkIGl0IHRvIG15IHRlc3QgaXRlbXMKYW5kIGl0IHRl c3RlZCB3ZWxsIG9uIG5ldyB1c2ItbmV4dCBicmFuY2ggYWZ0ZXIgeW91ciBmaXguCgpCVFcsIFNo b3VsZCBJIGRpc2FibGUgYnJlYWsgY29udHJvbCB3aGVuIHBvcnQgY2xvc2UgPwoKVGhhbmtzLgo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 011F5C004C9 for ; Mon, 6 May 2019 02:52:40 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C5C532082F for ; Mon, 6 May 2019 02:52:39 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="JO3wJxv7" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726470AbfEFCwe (ORCPT ); Sun, 5 May 2019 22:52:34 -0400 Received: from mail-pf1-f193.google.com ([209.85.210.193]:37089 "EHLO mail-pf1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725813AbfEFCwe (ORCPT ); Sun, 5 May 2019 22:52:34 -0400 Received: by mail-pf1-f193.google.com with SMTP id g3so5951451pfi.4; Sun, 05 May 2019 19:52:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=CsgcPbm3Dp5JXoSh6cvFY36zj5G0VmTyOZ3CnWwDI0U=; b=JO3wJxv7ihXzs3bR3FH/sFfOzk3+azqzgyvUlBgXAbzXnxJ2p4TqNGLH3AUe+wHlPP UpDU9Sz+9FYm4VtfkJ0TQziNXcMZDhCGAk8NWRMGM91f2LlEmDBCavjTt4GMvhrCR407 WjtXli8JR0Tzl9L577vmPz8WkVjRj/LQLoWGsNIFIx+biBxEXTar+iqgd5Neeqru5vP5 su6S2hOhTUAqVJfI+K4/Xd30QRpy+jCpecfObGyUBtMxufZAm7iX4N51BeOiqxyMIKUY I83adWEKVydKz+mjXxpyh86hXy6Ofh7j1CDGLIpQOGXoVmICmb3gocaYIGA6fnftHax7 a36Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=CsgcPbm3Dp5JXoSh6cvFY36zj5G0VmTyOZ3CnWwDI0U=; b=d+4KXWMbjvUHB1JJH3DyhNRsSaN7bMjpX3fooSn0Rcw19xy9k6kUZZu4d4Z1/4TPwG Gvd9VZaTblgX0M+jzIAC/NCUKgzaiqhd8gCodBsTA45V+S9DUGLXvfiEcyvgrLTk6BYh ycmA8u8rL4ayVHK4bkgduR6p48WlMCwml5dO5oq3bHzHAsUdyaMq3exFEL8WiIl3jKK8 W6bAgjEnA2HRRtciByy4h00lfy5pvbTp5bbKdB+q46OtL2alOL2HVTWSr7pdtnfpkckG iNpEmatElKmmpXkmYzS9UscHWMmugoGiZveQSH/u5dXIDAilnYQ/eKYxNP/F9nGAPdJZ alyw== X-Gm-Message-State: APjAAAXK5foP/WGNnfooDhak02KZ03EPtDG2PevzwGMZ1oc3YP6bFnbp wpOovSfWUcr4dMP2sx1tkR4= X-Google-Smtp-Source: APXvYqy/Ta/53RuTG1MXgCarkn5vcAY72jk48KgAoascbD1BMXj8NzzrPpyGX4sZAu3WCC4E2NguPA== X-Received: by 2002:a65:6205:: with SMTP id d5mr29513098pgv.61.1557111153399; Sun, 05 May 2019 19:52:33 -0700 (PDT) Received: from [192.168.1.38] (59-120-186-245.HINET-IP.hinet.net. [59.120.186.245]) by smtp.gmail.com with ESMTPSA id q80sm19364518pfa.66.2019.05.05.19.52.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 05 May 2019 19:52:32 -0700 (PDT) Subject: Re: [PATCH V9 4/4] USB: serial: f81232: implement break control To: Johan Hovold Cc: peter_hong@fintek.com.tw, gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, "Ji-Ze Hong (Peter Hong)" References: <1556587352-19500-1-git-send-email-hpeter+linux_kernel@gmail.com> <1556587352-19500-4-git-send-email-hpeter+linux_kernel@gmail.com> <20190503065917.GA26546@localhost> From: "Ji-Ze Hong (Peter Hong)" Message-ID: <84cff579-79bd-9456-aa85-cb4510d916ed@gmail.com> Date: Mon, 6 May 2019 10:52:27 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <20190503065917.GA26546@localhost> Content-Type: text/plain; charset="UTF-8"; format="flowed" Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org Message-ID: <20190506025227.U1D859g3I2NU62YgBfzDasd0qLsVYOH3Q8cQd10-17Y@z> 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