linux/drivers/usb/serial
Johan Hovold f865e61460 USB: serial: xr: add type abstraction
There are at least four types of Maxlinear/Exar USB UARTs which differ
in various ways such as in their register layouts:

	XR21V141X
	XR21B142X
	XR21B1411
	XR22804

It is not clear whether the device type can be inferred from the
descriptors so encode it in the device-id table for now.

Add a type structure that can be used to abstract the register layout
and other features, and use it when accessing the XR21V141X UART
registers that are shared by all types.

Note that the currently supported XR21V141X type is the only type that
has a set of UART Manager registers and that these will need to be
handled specifically.

Similarly, XR21V141X is the only type which has the divisor registers
and that needs to use the format register when configuring the line
settings.

Signed-off-by: Johan Hovold <johan@kernel.org>
2021-04-13 18:36:31 +02:00
..
aircable.c USB: serial: drop redundant transfer-buffer casts 2020-07-09 09:20:17 +02:00
ark3116.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
belkin_sa.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
belkin_sa.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
bus.c USB: serial: drop bogus to_usb_serial_port() checks 2021-02-09 13:14:30 +01:00
ch341.c USB: serial: ch341: add new Product ID 2021-03-09 09:05:36 +01:00
console.c USB: serial: console: add support for flow control 2020-07-02 10:38:45 +02:00
cp210x.c USB: serial: cp210x: add gpio-configuration debug printk 2021-04-12 11:58:42 +02:00
cyberjack.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
cypress_m8.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
cypress_m8.h USB: serial: cypress_m8: enable Simply Automated UPB PIM 2020-06-23 09:56:17 +02:00
digi_acceleport.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
empeg.c docs: usb: rename files to .rst and add them to drivers-api 2019-06-20 14:28:36 +02:00
ezusb_convert.pl
f81232.c USB: serial: f81232: drop time-based drain delay 2021-04-13 18:19:28 +02:00
f81534.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
ftdi_sio_ids.h USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters 2020-09-29 09:40:11 +02:00
ftdi_sio.c USB: serial: ftdi_sio: clean up TIOCSSERIAL 2021-04-08 09:46:04 +02:00
ftdi_sio.h USB: Fix up terminology 2020-07-01 14:04:04 +02:00
garmin_gps.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
generic.c USB: serial: drop redundant transfer-buffer casts 2020-07-09 09:20:17 +02:00
io_16654.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
io_edgeport.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
io_edgeport.h USB: serial: io_edgeport: drop unused definitions 2021-04-08 09:50:04 +02:00
io_ionsp.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
io_ti.c USB: serial: io_ti: drop unnecessary packed attributes 2021-04-13 18:23:34 +02:00
io_ti.h USB: serial: io_ti: drop unnecessary packed attributes 2021-04-13 18:23:34 +02:00
io_usbvend.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
ipaq.c
ipw.c
ir-usb.c USB: serial: ir-usb: Silence harmless uninitialized variable warning 2020-02-10 10:06:51 +01:00
iuu_phoenix.c USB: serial: iuu_phoenix: remove redundant variable 'error' 2021-04-01 09:53:14 +02:00
iuu_phoenix.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
Kconfig USB: serial: add MaxLinear/Exar USB to Serial driver 2021-01-21 10:49:37 +01:00
keyspan_pda.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
keyspan_usa26msg.h USB: serial: keyspan_usa: add proper SPDX lines for .h files 2019-01-18 11:09:32 +01:00
keyspan_usa28msg.h USB: serial: keyspan_usa: add proper SPDX lines for .h files 2019-01-18 11:09:32 +01:00
keyspan_usa49msg.h USB: serial: keyspan_usa: add proper SPDX lines for .h files 2019-01-18 11:09:32 +01:00
keyspan_usa67msg.h USB: serial: keyspan_usa: add proper SPDX lines for .h files 2019-01-18 11:09:32 +01:00
keyspan_usa90msg.h USB: serial: keyspan_usa: add proper SPDX lines for .h files 2019-01-18 11:09:32 +01:00
keyspan.c USB: serial: keyspan: drop unneeded forward declarations 2021-03-15 09:29:47 +01:00
kl5kusb105.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
kl5kusb105.h USB: serial: kl5kusb105: remove KLSI device id 2018-07-11 10:11:29 +02:00
kobil_sct.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
kobil_sct.h
Makefile USB: serial: add MaxLinear/Exar USB to Serial driver 2021-01-21 10:49:37 +01:00
Makefile-keyspan_pda_fw
mct_u232.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
mct_u232.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
metro-usb.c USB: serial: do not use tty class device for debugging 2021-04-09 17:55:21 +02:00
mos7720.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
mos7840.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
mxuport.c USB: serial: mxuport: drop short control-transfer check 2021-01-18 14:26:14 +01:00
navman.c
omninet.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
opticon.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
option.c USB: serial: add generic support for TIOCSSERIAL 2021-04-08 09:46:02 +02:00
oti6858.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
oti6858.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
pl2303.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
pl2303.h USB: serial: pl2303: add device-id for HP GC device 2020-09-29 12:50:34 +02:00
qcaux.c
qcserial.c USB: serial: qcserial: fix altsetting probing 2020-10-01 09:37:30 +02:00
quatech2.c USB: serial: add generic support for TIOCSSERIAL 2021-04-08 09:46:02 +02:00
safe_serial.c
sierra.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
spcp8x5.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
ssu100.c USB: serial: add generic support for TIOCSSERIAL 2021-04-08 09:46:02 +02:00
symbolserial.c USB: serial: make remove callback return void 2021-02-09 13:13:58 +01:00
ti_usb_3410_5052.c USB: serial: ti_usb_3410_5052: clean up termios CSIZE handling 2021-04-13 18:24:51 +02:00
upd78f0730.c USB: serial: do not use tty class device for debugging 2021-04-09 17:55:21 +02:00
usb_debug.c
usb_wwan.c USB: serial: add generic support for TIOCSSERIAL 2021-04-08 09:46:02 +02:00
usb-serial-simple.c USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx 2020-01-13 15:04:35 +01:00
usb-serial.c USB: serial: do not use tty class device for debugging 2021-04-09 17:55:21 +02:00
usb-wwan.h USB: serial: add generic support for TIOCSSERIAL 2021-04-08 09:46:02 +02:00
visor.c docs: usb: rename files to .rst and add them to drivers-api 2019-06-20 14:28:36 +02:00
visor.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
whiteheat.c USB: serial: stop reporting legacy UART types 2021-04-08 09:46:02 +02:00
whiteheat.h USB: serial: Use the correct style for SPDX License Identifier 2020-04-22 09:26:47 +02:00
wishbone-serial.c
xr_serial.c USB: serial: xr: add type abstraction 2021-04-13 18:36:31 +02:00
xsens_mt.c