[PATCH 00/12] USB: serial: xr: add support for more device types

Johan Hovold
2021-03-30T14:40:28Z

This series adds support for another nine models of Maxlinerar/Exar USB
UARTs to the xr driver. The various models can be divided into four
types:

XR21V141X
XR21B142X
XR21B1411
XR22804

with different register layouts and features.

All types can be used in CDC-ACM mode but further features such as
hardware and software flow control and in-band line status are available
in a second "custom driver" mode.

The fact that hardware flow control is enabled by default in CDC-ACM
mode also prevents using the standard CDC-ACM driver in cases where the
hardware engineers have failed to properly connect the CTS input.

The currently supported XR21V141X type stands out from the other three
by not being able to accept CDC requests without always entering CDC-ACM
mode, requiring a different enable/disable sequence and by using a
distinct register layout for certain functionality.

Expect for the above, most differences can be handled by simply using
different set of register addresses.

Note that this series depends on the recently posted
multi-interface-function series.

Johan

Johan Hovold (11):
USB: serial: xr: add support for XR21V1412 and XR21V1414
USB: serial: xr: rename GPIO-mode defines
USB: serial: xr: rename GPIO-pin defines
USB: serial: xr: move pin configuration to probe
USB: serial: xr: drop type prefix from shared defines
USB: serial: xr: add type abstraction
USB: serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424
USB: serial: xr: add support for XR21B1411
USB: serial: xr: add support for XR22801, XR22802, XR22804
USB: serial: xr: reset FIFOs on open
USB: serial: xr: add copyright notice

Mauro Carvalho Chehab (1):
USB: cdc-acm: add more Maxlinear/Exar models to ignore list

drivers/usb/class/cdc-acm.c | 14 +-
drivers/usb/serial/xr_serial.c | 727 ++++++++++++++++++++++++++-------
2 files changed, 580 insertions(+), 161 deletions(-)

--
2.26.3