Skip to content
  • Johan Hovold's avatar
    USB: serial: add generic support for TIOCSSERIAL · 01fd45f6
    Johan Hovold authored
    
    
    TIOCSSERIAL is a horrid, underspecified, legacy interface which for most
    serial devices is only useful for setting the close_delay and
    closing_wait parameters.
    
    The closing_wait parameter determines how long to wait for the transfer
    buffers to drain during close and the default timeout of 30 seconds may
    not be sufficient at low line speeds. In other cases, when for example
    flow is stopped, the default timeout may instead be too long.
    
    Add generic support for TIOCSSERIAL and TIOCGSERIAL with handling of the
    three common parameters close_delay, closing_wait and line for the
    benefit of all USB serial drivers while still allowing drivers to
    implement further functionality through the existing callbacks.
    
    This currently includes a few drivers that report their base baud clock
    rate even if that is really only of interest when setting custom
    divisors through the deprecated ASYNC_SPD_CUST interface; an interface
    which only the FTDI driver actually implements.
    
    Some drivers have also been reporting back a fake UART type, something
    which should no longer be needed and will be dropped by a follow-on
    patch.
    
    Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
    01fd45f6