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: [v2,2/2] USB: serial: ark3116: Move TIOCGSERIAL ioctl case to function. From: Mikhail Zaytsev Message-Id: <20180106201522.7a542d44@debian> Date: Sat, 6 Jan 2018 20:15:22 +0300 To: Johan Hovold Cc: Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org List-ID: VGhlIHBhdGNoIG1vdmVzIFRJT0NHU0VSSUFMIGlvY3RsIGNhc2UgdG8gZ2V0X3NlcmlhbF9pbmZv IGZ1bmN0aW9uLgoKU2lnbmVkLW9mZi1ieTogTWlraGFpbCBaYXl0c2V2IDxmbGFzaGVkQG1haWwu cnU+Ci0tLQogZHJpdmVycy91c2Ivc2VyaWFsL2FyazMxMTYuYyB8IDM0ICsrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCAx NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9zZXJpYWwvYXJrMzExNi5j IGIvZHJpdmVycy91c2Ivc2VyaWFsL2FyazMxMTYuYwppbmRleCAyZTk1N2M3NmYuLjc2ODNjNzZh MSAxMDA2NDQKLS0tIGEvZHJpdmVycy91c2Ivc2VyaWFsL2FyazMxMTYuYworKysgYi9kcml2ZXJz L3VzYi9zZXJpYWwvYXJrMzExNi5jCkBAIC0zOTcsMjcgKzM5NywzMyBAQCBzdGF0aWMgaW50IGFy azMxMTZfb3BlbihzdHJ1Y3QgdHR5X3N0cnVjdCAqdHR5LCBzdHJ1Y3QgdXNiX3NlcmlhbF9wb3J0 ICpwb3J0KQogCXJldHVybiByZXN1bHQ7CiB9CiAKK3N0YXRpYyBpbnQgYXJrMzExNl9nZXRfc2Vy aWFsX2luZm8oc3RydWN0IHVzYl9zZXJpYWxfcG9ydCAqcG9ydCwKKwkJCXN0cnVjdCBzZXJpYWxf c3RydWN0IF9fdXNlciAqcmV0aW5mbykKK3sKKwlzdHJ1Y3Qgc2VyaWFsX3N0cnVjdCB0bXA7CisK KwltZW1zZXQoJnRtcCwgMCwgc2l6ZW9mKHRtcCkpOworCisJdG1wLnR5cGUgPSBQT1JUXzE2NjU0 OworCXRtcC5saW5lID0gcG9ydC0+bWlub3I7CisJdG1wLnBvcnQgPSBwb3J0LT5wb3J0X251bWJl cjsKKwl0bXAuYmF1ZF9iYXNlID0gNDYwODAwOworCisJaWYgKGNvcHlfdG9fdXNlcihyZXRpbmZv LCAmdG1wLCBzaXplb2YodG1wKSkpCisJCXJldHVybiAtRUZBVUxUOworCisJcmV0dXJuIDA7Cit9 CisKIHN0YXRpYyBpbnQgYXJrMzExNl9pb2N0bChzdHJ1Y3QgdHR5X3N0cnVjdCAqdHR5LAogCQkJ IHVuc2lnbmVkIGludCBjbWQsIHVuc2lnbmVkIGxvbmcgYXJnKQogewogCXN0cnVjdCB1c2Jfc2Vy aWFsX3BvcnQgKnBvcnQgPSB0dHktPmRyaXZlcl9kYXRhOwotCXN0cnVjdCBzZXJpYWxfc3RydWN0 IHNlcnN0cnVjdDsKLQl2b2lkIF9fdXNlciAqdXNlcl9hcmcgPSAodm9pZCBfX3VzZXIgKilhcmc7 CiAKIAlzd2l0Y2ggKGNtZCkgewogCWNhc2UgVElPQ0dTRVJJQUw6Ci0JCS8qIFhYWDogU29tZSBv ZiB0aGVzZSB2YWx1ZXMgYXJlIHByb2JhYmx5IHdyb25nLiAqLwotCQltZW1zZXQoJnNlcnN0cnVj dCwgMCwgc2l6ZW9mKHNlcnN0cnVjdCkpOwotCQlzZXJzdHJ1Y3QudHlwZSA9IFBPUlRfMTY2NTQ7 Ci0JCXNlcnN0cnVjdC5saW5lID0gcG9ydC0+bWlub3I7Ci0JCXNlcnN0cnVjdC5wb3J0ID0gcG9y dC0+cG9ydF9udW1iZXI7Ci0JCXNlcnN0cnVjdC5jdXN0b21fZGl2aXNvciA9IDA7Ci0JCXNlcnN0 cnVjdC5iYXVkX2Jhc2UgPSA0NjA4MDA7Ci0KLQkJaWYgKGNvcHlfdG9fdXNlcih1c2VyX2FyZywg JnNlcnN0cnVjdCwgc2l6ZW9mKHNlcnN0cnVjdCkpKQotCQkJcmV0dXJuIC1FRkFVTFQ7Ci0KLQkJ cmV0dXJuIDA7CisJCXJldHVybiBhcmszMTE2X2dldF9zZXJpYWxfaW5mbyhwb3J0LAorCQkJCQko c3RydWN0IHNlcmlhbF9zdHJ1Y3QgX191c2VyICopYXJnKTsKIAlkZWZhdWx0OgogCQlicmVhazsK IAl9Cg== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753895AbeAFRVq (ORCPT + 1 other); Sat, 6 Jan 2018 12:21:46 -0500 Received: from smtp5.mail.ru ([94.100.179.24]:37222 "EHLO smtp5.mail.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753630AbeAFRVo (ORCPT ); Sat, 6 Jan 2018 12:21:44 -0500 Date: Sat, 6 Jan 2018 20:15:22 +0300 From: Mikhail Zaytsev To: Johan Hovold Cc: Greg Kroah-Hartman , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2 2/2] USB: serial: ark3116: Move TIOCGSERIAL ioctl case to function. Message-ID: <20180106201522.7a542d44@debian> In-Reply-To: <20180106200809.41cdd723@debian> References: <20180106200809.41cdd723@debian> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Authentication-Results: smtp5.mail.ru; auth=pass smtp.auth=flashed@mail.ru smtp.mailfrom=flashed@mail.ru X-7FA49CB5: 0D63561A33F958A5500092420D6EFFF3555A02C7C5A5ABA05A2BAF710C52507E725E5C173C3A84C3F82DE84504A19E5EB5DC9C531D24782780CB4917E5AABA03C4224003CC836476C0CAF46E325F83A50BF2EBBBDD9D6B0F2AF38021CC9F462D574AF45C6390F7469DAA53EE0834AAEE X-Mailru-Sender: 159DE679A9C6F657CB201B87257888728960882E8FDF78DEA3F667C07E7C5E7986DBAD2B03DF710135240BD9E37F4C362F445727719BCECB540ECE9B597817E15BECAF0817D12387B4A721A3011E896F X-Mras: OK Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: The patch moves TIOCGSERIAL ioctl case to get_serial_info function. Signed-off-by: Mikhail Zaytsev --- drivers/usb/serial/ark3116.c | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/drivers/usb/serial/ark3116.c b/drivers/usb/serial/ark3116.c index 2e957c76f..7683c76a1 100644 --- a/drivers/usb/serial/ark3116.c +++ b/drivers/usb/serial/ark3116.c @@ -397,27 +397,33 @@ static int ark3116_open(struct tty_struct *tty, struct usb_serial_port *port) return result; } +static int ark3116_get_serial_info(struct usb_serial_port *port, + struct serial_struct __user *retinfo) +{ + struct serial_struct tmp; + + memset(&tmp, 0, sizeof(tmp)); + + tmp.type = PORT_16654; + tmp.line = port->minor; + tmp.port = port->port_number; + tmp.baud_base = 460800; + + if (copy_to_user(retinfo, &tmp, sizeof(tmp))) + return -EFAULT; + + return 0; +} + static int ark3116_ioctl(struct tty_struct *tty, unsigned int cmd, unsigned long arg) { struct usb_serial_port *port = tty->driver_data; - struct serial_struct serstruct; - void __user *user_arg = (void __user *)arg; switch (cmd) { case TIOCGSERIAL: - /* XXX: Some of these values are probably wrong. */ - memset(&serstruct, 0, sizeof(serstruct)); - serstruct.type = PORT_16654; - serstruct.line = port->minor; - serstruct.port = port->port_number; - serstruct.custom_divisor = 0; - serstruct.baud_base = 460800; - - if (copy_to_user(user_arg, &serstruct, sizeof(serstruct))) - return -EFAULT; - - return 0; + return ark3116_get_serial_info(port, + (struct serial_struct __user *)arg); default: break; } -- 2.11.0