lkml.org 
[lkml]   [2022]   [Feb]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/5] UART_LCR_WLEN cleanups
    Date
    Many drivers currently do:
    switch (cflag & CSIZE) {
    case CS5:
    lcr = UART_LCR_WLEN5;
    break;
    case CS6:
    lcr = UART_LCR_WLEN6;
    break;
    case CS7:
    lcr = UART_LCR_WLEN7;
    break;
    default:
    case CS8:
    lcr = UART_LCR_WLEN8;
    break;
    }

    We can simplify it to:
    lcr = UART_LCR_WLEN(tty_get_char_size(cflag));
    if we define UART_LCR_WLEN() properly first.

    So UART_LCR_WLEN is defined in this series and all such drivers are
    converted too.

    We could go even further: to define something like uart_compute_LCR()
    and compute there whole LCR based even on parity+stop fields in cflag. I
    will try if it is worth it later. But this series on its own drops some
    duplicated lines already.

    Jiri Slaby (5):
    tty: serial: define UART_LCR_WLEN() macro
    tty: serial: make use of UART_LCR_WLEN() + tty_get_char_size()
    USB: serial: make use of UART_LCR_WLEN() + tty_get_char_size()
    sdio_uart: make use of UART_LCR_WLEN() + tty_get_char_size()
    mxser: make use of UART_LCR_WLEN() + tty_get_char_size()

    drivers/mmc/core/sdio_uart.c | 16 +---------------
    drivers/tty/mxser.c | 16 +---------------
    drivers/tty/serial/8250/8250_omap.c | 16 +---------------
    drivers/tty/serial/8250/8250_port.c | 16 +---------------
    drivers/tty/serial/jsm/jsm_cls.c | 16 +---------------
    drivers/tty/serial/jsm/jsm_neo.c | 16 +---------------
    drivers/tty/serial/omap-serial.c | 16 +---------------
    drivers/tty/serial/pxa.c | 16 +---------------
    drivers/tty/serial/serial-tegra.c | 22 ++++------------------
    drivers/tty/serial/vr41xx_siu.c | 15 +--------------
    drivers/usb/serial/ark3116.c | 17 ++---------------
    drivers/usb/serial/f81232.c | 16 +---------------
    drivers/usb/serial/f81534.c | 16 +---------------
    drivers/usb/serial/mos7720.c | 20 +-------------------
    drivers/usb/serial/quatech2.c | 16 +---------------
    drivers/usb/serial/ssu100.c | 16 +---------------
    include/uapi/linux/serial_reg.h | 1 +
    17 files changed, 21 insertions(+), 246 deletions(-)

    --
    2.35.1

    \
     
     \ /
      Last update: 2022-02-24 10:56    [W:5.718 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site