From f5f1818f45e5cd9c6a9efb4c3154dd120bd6179a Mon Sep 17 00:00:00 2001 From: Sasha Levin Date: Thu, 25 May 2023 10:38:22 -0400 Subject: [PATCH] Fixes for 5.10 Signed-off-by: Sasha Levin --- ...x-do_sqbs-inline-assembly-constraint.patch | 66 +++++++ .../s390-qdio-get-rid-of-register-asm.patch | 172 ++++++++++++++++++ ...r-add-support-for-usr298x-pci-modems.patch | 79 ++++++++ ...-derive-nr_ports-from-pci-id-for-acc.patch | 86 +++++++++ ...support-for-sealevel-7xxxc-serial-ca.patch | 68 +++++++ queue-5.10/series | 5 + 6 files changed, 476 insertions(+) create mode 100644 queue-5.10/s390-qdio-fix-do_sqbs-inline-assembly-constraint.patch create mode 100644 queue-5.10/s390-qdio-get-rid-of-register-asm.patch create mode 100644 queue-5.10/serial-8250_exar-add-support-for-usr298x-pci-modems.patch create mode 100644 queue-5.10/serial-8250_exar-derive-nr_ports-from-pci-id-for-acc.patch create mode 100644 queue-5.10/serial-exar-add-support-for-sealevel-7xxxc-serial-ca.patch diff --git a/queue-5.10/s390-qdio-fix-do_sqbs-inline-assembly-constraint.patch b/queue-5.10/s390-qdio-fix-do_sqbs-inline-assembly-constraint.patch new file mode 100644 index 00000000000..b362398111d --- /dev/null +++ b/queue-5.10/s390-qdio-fix-do_sqbs-inline-assembly-constraint.patch @@ -0,0 +1,66 @@ +From 7eb6a81bd3b018bad613c38beadae7eb464c0bb9 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 11 May 2023 17:04:41 +0200 +Subject: s390/qdio: fix do_sqbs() inline assembly constraint + +From: Heiko Carstens + +[ Upstream commit 2862a2fdfae875888e3c1c3634e3422e01d98147 ] + +Use "a" constraint instead of "d" constraint to pass the state parameter to +the do_sqbs() inline assembly. This prevents that general purpose register +zero is used for the state parameter. + +If the compiler would select general purpose register zero this would be +problematic for the used instruction in rsy format: the register used for +the state parameter is a base register. If the base register is general +purpose register zero the contents of the register are unexpectedly ignored +when the instruction is executed. + +This only applies to z/VM guests using QIOASSIST with dedicated (pass through) +QDIO-based devices such as FCP [zfcp driver] as well as real OSA or +HiperSockets [qeth driver]. + +A possible symptom for this case using zfcp is the following repeating kernel +message pattern: + +zfcp : A QDIO problem occurred +zfcp : A QDIO problem occurred +zfcp : qdio: ZFCP on SC using AI:1 QEBSM:1 PRI:1 TDD:1 SIGA: W +zfcp : A QDIO problem occurred +zfcp : A QDIO problem occurred + +Each of the qdio problem message can be accompanied by the following entries +for the affected subchannel in +/sys/kernel/debug/s390dbf/qdio_error/hex_ascii for zfcp or qeth: + + ccq: 69.... + SQBS ERROR. + +Reviewed-by: Benjamin Block +Cc: Steffen Maier +Fixes: 8129ee164267 ("[PATCH] s390: qdio V=V pass-through") +Cc: +Signed-off-by: Heiko Carstens +Signed-off-by: Alexander Gordeev +Signed-off-by: Sasha Levin +--- + drivers/s390/cio/qdio.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/s390/cio/qdio.h b/drivers/s390/cio/qdio.h +index 854a21e1d3b7b..919d106141664 100644 +--- a/drivers/s390/cio/qdio.h ++++ b/drivers/s390/cio/qdio.h +@@ -95,7 +95,7 @@ static inline int do_sqbs(u64 token, unsigned char state, int queue, + " lgr 1,%[token]\n" + " .insn rsy,0xeb000000008a,%[qs],%[ccq],0(%[state])" + : [ccq] "+&d" (_ccq), [qs] "+&d" (_queuestart) +- : [state] "d" ((unsigned long)state), [token] "d" (token) ++ : [state] "a" ((unsigned long)state), [token] "d" (token) + : "memory", "cc", "1"); + *count = _ccq & 0xff; + *start = _queuestart & 0xff; +-- +2.39.2 + diff --git a/queue-5.10/s390-qdio-get-rid-of-register-asm.patch b/queue-5.10/s390-qdio-get-rid-of-register-asm.patch new file mode 100644 index 00000000000..8b101a4463e --- /dev/null +++ b/queue-5.10/s390-qdio-get-rid-of-register-asm.patch @@ -0,0 +1,172 @@ +From 1719e9b200f7fcaf87888e6b67429db1f78c2fb7 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 22 Jun 2021 15:26:16 +0200 +Subject: s390/qdio: get rid of register asm + +From: Heiko Carstens + +[ Upstream commit d3e2ff5436d6ee38b572ba5c01dc7994769bec54 ] + +Reviewed-by: Benjamin Block +Signed-off-by: Heiko Carstens +Signed-off-by: Vasily Gorbik +Stable-dep-of: 2862a2fdfae8 ("s390/qdio: fix do_sqbs() inline assembly constraint") +Signed-off-by: Sasha Levin +--- + drivers/s390/cio/qdio.h | 25 ++++++++------- + drivers/s390/cio/qdio_main.c | 62 +++++++++++++++++++----------------- + 2 files changed, 46 insertions(+), 41 deletions(-) + +diff --git a/drivers/s390/cio/qdio.h b/drivers/s390/cio/qdio.h +index cd2df4ff8e0ef..854a21e1d3b7b 100644 +--- a/drivers/s390/cio/qdio.h ++++ b/drivers/s390/cio/qdio.h +@@ -88,15 +88,15 @@ enum qdio_irq_states { + static inline int do_sqbs(u64 token, unsigned char state, int queue, + int *start, int *count) + { +- register unsigned long _ccq asm ("0") = *count; +- register unsigned long _token asm ("1") = token; + unsigned long _queuestart = ((unsigned long)queue << 32) | *start; ++ unsigned long _ccq = *count; + + asm volatile( +- " .insn rsy,0xeb000000008A,%1,0,0(%2)" +- : "+d" (_ccq), "+d" (_queuestart) +- : "d" ((unsigned long)state), "d" (_token) +- : "memory", "cc"); ++ " lgr 1,%[token]\n" ++ " .insn rsy,0xeb000000008a,%[qs],%[ccq],0(%[state])" ++ : [ccq] "+&d" (_ccq), [qs] "+&d" (_queuestart) ++ : [state] "d" ((unsigned long)state), [token] "d" (token) ++ : "memory", "cc", "1"); + *count = _ccq & 0xff; + *start = _queuestart & 0xff; + +@@ -106,16 +106,17 @@ static inline int do_sqbs(u64 token, unsigned char state, int queue, + static inline int do_eqbs(u64 token, unsigned char *state, int queue, + int *start, int *count, int ack) + { +- register unsigned long _ccq asm ("0") = *count; +- register unsigned long _token asm ("1") = token; + unsigned long _queuestart = ((unsigned long)queue << 32) | *start; + unsigned long _state = (unsigned long)ack << 63; ++ unsigned long _ccq = *count; + + asm volatile( +- " .insn rrf,0xB99c0000,%1,%2,0,0" +- : "+d" (_ccq), "+d" (_queuestart), "+d" (_state) +- : "d" (_token) +- : "memory", "cc"); ++ " lgr 1,%[token]\n" ++ " .insn rrf,0xb99c0000,%[qs],%[state],%[ccq],0" ++ : [ccq] "+&d" (_ccq), [qs] "+&d" (_queuestart), ++ [state] "+&d" (_state) ++ : [token] "d" (token) ++ : "memory", "cc", "1"); + *count = _ccq & 0xff; + *start = _queuestart & 0xff; + *state = _state & 0xff; +diff --git a/drivers/s390/cio/qdio_main.c b/drivers/s390/cio/qdio_main.c +index 3e29c26f01856..e3c55fc2363ac 100644 +--- a/drivers/s390/cio/qdio_main.c ++++ b/drivers/s390/cio/qdio_main.c +@@ -31,38 +31,41 @@ MODULE_DESCRIPTION("QDIO base support"); + MODULE_LICENSE("GPL"); + + static inline int do_siga_sync(unsigned long schid, +- unsigned int out_mask, unsigned int in_mask, ++ unsigned long out_mask, unsigned long in_mask, + unsigned int fc) + { +- register unsigned long __fc asm ("0") = fc; +- register unsigned long __schid asm ("1") = schid; +- register unsigned long out asm ("2") = out_mask; +- register unsigned long in asm ("3") = in_mask; + int cc; + + asm volatile( ++ " lgr 0,%[fc]\n" ++ " lgr 1,%[schid]\n" ++ " lgr 2,%[out]\n" ++ " lgr 3,%[in]\n" + " siga 0\n" +- " ipm %0\n" +- " srl %0,28\n" +- : "=d" (cc) +- : "d" (__fc), "d" (__schid), "d" (out), "d" (in) : "cc"); ++ " ipm %[cc]\n" ++ " srl %[cc],28\n" ++ : [cc] "=&d" (cc) ++ : [fc] "d" (fc), [schid] "d" (schid), ++ [out] "d" (out_mask), [in] "d" (in_mask) ++ : "cc", "0", "1", "2", "3"); + return cc; + } + +-static inline int do_siga_input(unsigned long schid, unsigned int mask, +- unsigned int fc) ++static inline int do_siga_input(unsigned long schid, unsigned long mask, ++ unsigned long fc) + { +- register unsigned long __fc asm ("0") = fc; +- register unsigned long __schid asm ("1") = schid; +- register unsigned long __mask asm ("2") = mask; + int cc; + + asm volatile( ++ " lgr 0,%[fc]\n" ++ " lgr 1,%[schid]\n" ++ " lgr 2,%[mask]\n" + " siga 0\n" +- " ipm %0\n" +- " srl %0,28\n" +- : "=d" (cc) +- : "d" (__fc), "d" (__schid), "d" (__mask) : "cc"); ++ " ipm %[cc]\n" ++ " srl %[cc],28\n" ++ : [cc] "=&d" (cc) ++ : [fc] "d" (fc), [schid] "d" (schid), [mask] "d" (mask) ++ : "cc", "0", "1", "2"); + return cc; + } + +@@ -78,23 +81,24 @@ static inline int do_siga_input(unsigned long schid, unsigned int mask, + * Note: For IQDC unicast queues only the highest priority queue is processed. + */ + static inline int do_siga_output(unsigned long schid, unsigned long mask, +- unsigned int *bb, unsigned int fc, ++ unsigned int *bb, unsigned long fc, + unsigned long aob) + { +- register unsigned long __fc asm("0") = fc; +- register unsigned long __schid asm("1") = schid; +- register unsigned long __mask asm("2") = mask; +- register unsigned long __aob asm("3") = aob; + int cc; + + asm volatile( ++ " lgr 0,%[fc]\n" ++ " lgr 1,%[schid]\n" ++ " lgr 2,%[mask]\n" ++ " lgr 3,%[aob]\n" + " siga 0\n" +- " ipm %0\n" +- " srl %0,28\n" +- : "=d" (cc), "+d" (__fc), "+d" (__aob) +- : "d" (__schid), "d" (__mask) +- : "cc"); +- *bb = __fc >> 31; ++ " lgr %[fc],0\n" ++ " ipm %[cc]\n" ++ " srl %[cc],28\n" ++ : [cc] "=&d" (cc), [fc] "+&d" (fc) ++ : [schid] "d" (schid), [mask] "d" (mask), [aob] "d" (aob) ++ : "cc", "0", "1", "2", "3"); ++ *bb = fc >> 31; + return cc; + } + +-- +2.39.2 + diff --git a/queue-5.10/serial-8250_exar-add-support-for-usr298x-pci-modems.patch b/queue-5.10/serial-8250_exar-add-support-for-usr298x-pci-modems.patch new file mode 100644 index 00000000000..c8e17b4e07d --- /dev/null +++ b/queue-5.10/serial-8250_exar-add-support-for-usr298x-pci-modems.patch @@ -0,0 +1,79 @@ +From 6ab60999e41a3043acecd7b3ab27500dc9e8da70 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 20 Apr 2023 11:02:09 -0500 +Subject: serial: 8250_exar: Add support for USR298x PCI Modems + +From: Andrew Davis + +[ Upstream commit 95d698869b404772cc8b72560df71548491c10bc ] + +Possibly the last PCI controller-based (i.e. not a soft/winmodem) +dial-up modem one can still buy. + +Looks to have a stock XR17C154 PCI UART chip for communication, but for +some reason when provisioning the PCI IDs they swapped the vendor and +subvendor IDs. Otherwise this card would have worked out of the box. + +Searching online, some folks seem to not have this issue and others do, +so it is possible only some batches of cards have this error. + +Create a new macro to handle the switched IDs and add support here. + +Signed-off-by: Andrew Davis +Cc: stable +Reviewed-by: Andy Shevchenko +Link: https://lore.kernel.org/r/20230420160209.28221-1-afd@ti.com +Signed-off-by: Greg Kroah-Hartman +Signed-off-by: Sasha Levin +--- + drivers/tty/serial/8250/8250_exar.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/drivers/tty/serial/8250/8250_exar.c b/drivers/tty/serial/8250/8250_exar.c +index 2c9f721091125..5c2adf14049b7 100644 +--- a/drivers/tty/serial/8250/8250_exar.c ++++ b/drivers/tty/serial/8250/8250_exar.c +@@ -40,9 +40,13 @@ + #define PCI_DEVICE_ID_COMMTECH_4224PCIE 0x0020 + #define PCI_DEVICE_ID_COMMTECH_4228PCIE 0x0021 + #define PCI_DEVICE_ID_COMMTECH_4222PCIE 0x0022 ++ + #define PCI_DEVICE_ID_EXAR_XR17V4358 0x4358 + #define PCI_DEVICE_ID_EXAR_XR17V8358 0x8358 + ++#define PCI_SUBDEVICE_ID_USR_2980 0x0128 ++#define PCI_SUBDEVICE_ID_USR_2981 0x0129 ++ + #define PCI_DEVICE_ID_SEALEVEL_710xC 0x1001 + #define PCI_DEVICE_ID_SEALEVEL_720xC 0x1002 + #define PCI_DEVICE_ID_SEALEVEL_740xC 0x1004 +@@ -791,6 +795,15 @@ static const struct exar8250_board pbn_exar_XR17V8358 = { + (kernel_ulong_t)&bd \ + } + ++#define USR_DEVICE(devid, sdevid, bd) { \ ++ PCI_DEVICE_SUB( \ ++ PCI_VENDOR_ID_USR, \ ++ PCI_DEVICE_ID_EXAR_##devid, \ ++ PCI_VENDOR_ID_EXAR, \ ++ PCI_SUBDEVICE_ID_USR_##sdevid), 0, 0, \ ++ (kernel_ulong_t)&bd \ ++ } ++ + static const struct pci_device_id exar_pci_tbl[] = { + EXAR_DEVICE(ACCESSIO, COM_2S, pbn_exar_XR17C15x), + EXAR_DEVICE(ACCESSIO, COM_4S, pbn_exar_XR17C15x), +@@ -815,6 +828,10 @@ static const struct pci_device_id exar_pci_tbl[] = { + + IBM_DEVICE(XR17C152, SATURN_SERIAL_ONE_PORT, pbn_exar_ibm_saturn), + ++ /* USRobotics USR298x-OEM PCI Modems */ ++ USR_DEVICE(XR17C152, 2980, pbn_exar_XR17C15x), ++ USR_DEVICE(XR17C152, 2981, pbn_exar_XR17C15x), ++ + /* Exar Corp. XR17C15[248] Dual/Quad/Octal UART */ + EXAR_DEVICE(EXAR, XR17C152, pbn_exar_XR17C15x), + EXAR_DEVICE(EXAR, XR17C154, pbn_exar_XR17C15x), +-- +2.39.2 + diff --git a/queue-5.10/serial-8250_exar-derive-nr_ports-from-pci-id-for-acc.patch b/queue-5.10/serial-8250_exar-derive-nr_ports-from-pci-id-for-acc.patch new file mode 100644 index 00000000000..75905e64f23 --- /dev/null +++ b/queue-5.10/serial-8250_exar-derive-nr_ports-from-pci-id-for-acc.patch @@ -0,0 +1,86 @@ +From 9b96d21eaaa414a8f55ded852d83c8943225debb Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 27 Jan 2022 20:06:08 +0200 +Subject: serial: 8250_exar: derive nr_ports from PCI ID for Acces I/O cards + +From: Andy Shevchenko + +[ Upstream commit 8e4413aaf6a2e3a46e99a0718ca54c0cf8609cb2 ] + +In the similar way how it's done in 8250_pericom, derive the number of +the UART ports from PCI ID for Acces I/O cards. + +Signed-off-by: Andy Shevchenko +Link: https://lore.kernel.org/r/20220127180608.71509-1-andriy.shevchenko@linux.intel.com +Signed-off-by: Greg Kroah-Hartman +Stable-dep-of: 95d698869b40 ("serial: 8250_exar: Add support for USR298x PCI Modems") +Signed-off-by: Sasha Levin +--- + drivers/tty/serial/8250/8250_exar.c | 37 ++++++++++------------------- + 1 file changed, 13 insertions(+), 24 deletions(-) + +diff --git a/drivers/tty/serial/8250/8250_exar.c b/drivers/tty/serial/8250/8250_exar.c +index 2d0e7c7e408dc..3d82902bfe5b9 100644 +--- a/drivers/tty/serial/8250/8250_exar.c ++++ b/drivers/tty/serial/8250/8250_exar.c +@@ -596,7 +596,12 @@ exar_pci_probe(struct pci_dev *pcidev, const struct pci_device_id *ent) + + maxnr = pci_resource_len(pcidev, bar) >> (board->reg_shift + 3); + +- nr_ports = board->num_ports ? board->num_ports : pcidev->device & 0x0f; ++ if (pcidev->vendor == PCI_VENDOR_ID_ACCESSIO) ++ nr_ports = BIT(((pcidev->device & 0x38) >> 3) - 1); ++ else if (board->num_ports) ++ nr_ports = board->num_ports; ++ else ++ nr_ports = pcidev->device & 0x0f; + + priv = devm_kzalloc(&pcidev->dev, struct_size(priv, line, nr_ports), GFP_KERNEL); + if (!priv) +@@ -695,22 +700,6 @@ static int __maybe_unused exar_resume(struct device *dev) + + static SIMPLE_DEV_PM_OPS(exar_pci_pm, exar_suspend, exar_resume); + +-static const struct exar8250_board acces_com_2x = { +- .num_ports = 2, +- .setup = pci_xr17c154_setup, +-}; +- +-static const struct exar8250_board acces_com_4x = { +- .num_ports = 4, +- .setup = pci_xr17c154_setup, +-}; +- +-static const struct exar8250_board acces_com_8x = { +- .num_ports = 8, +- .setup = pci_xr17c154_setup, +-}; +- +- + static const struct exar8250_board pbn_fastcom335_2 = { + .num_ports = 2, + .setup = pci_fastcom335_setup, +@@ -795,13 +784,13 @@ static const struct exar8250_board pbn_exar_XR17V8358 = { + } + + static const struct pci_device_id exar_pci_tbl[] = { +- EXAR_DEVICE(ACCESSIO, COM_2S, acces_com_2x), +- EXAR_DEVICE(ACCESSIO, COM_4S, acces_com_4x), +- EXAR_DEVICE(ACCESSIO, COM_8S, acces_com_8x), +- EXAR_DEVICE(ACCESSIO, COM232_8, acces_com_8x), +- EXAR_DEVICE(ACCESSIO, COM_2SM, acces_com_2x), +- EXAR_DEVICE(ACCESSIO, COM_4SM, acces_com_4x), +- EXAR_DEVICE(ACCESSIO, COM_8SM, acces_com_8x), ++ EXAR_DEVICE(ACCESSIO, COM_2S, pbn_exar_XR17C15x), ++ EXAR_DEVICE(ACCESSIO, COM_4S, pbn_exar_XR17C15x), ++ EXAR_DEVICE(ACCESSIO, COM_8S, pbn_exar_XR17C15x), ++ EXAR_DEVICE(ACCESSIO, COM232_8, pbn_exar_XR17C15x), ++ EXAR_DEVICE(ACCESSIO, COM_2SM, pbn_exar_XR17C15x), ++ EXAR_DEVICE(ACCESSIO, COM_4SM, pbn_exar_XR17C15x), ++ EXAR_DEVICE(ACCESSIO, COM_8SM, pbn_exar_XR17C15x), + + CONNECT_DEVICE(XR17C152, UART_2_232, pbn_connect), + CONNECT_DEVICE(XR17C154, UART_4_232, pbn_connect), +-- +2.39.2 + diff --git a/queue-5.10/serial-exar-add-support-for-sealevel-7xxxc-serial-ca.patch b/queue-5.10/serial-exar-add-support-for-sealevel-7xxxc-serial-ca.patch new file mode 100644 index 00000000000..f60cdf39cf1 --- /dev/null +++ b/queue-5.10/serial-exar-add-support-for-sealevel-7xxxc-serial-ca.patch @@ -0,0 +1,68 @@ +From a2720e22408230e58e78f949c7b00a11f3082657 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Thu, 19 Jan 2023 14:40:29 -0500 +Subject: serial: exar: Add support for Sealevel 7xxxC serial cards + +From: Matthew Howell + +[ Upstream commit 14ee78d5932afeb710c8305196a676a715bfdea8 ] + +Add support for Sealevel 7xxxC serial cards. + +This patch: +* Adds IDs to recognize 7xxxC cards from Sealevel Systems. +* Updates exar_pci_probe() to set nr_ports to last two bytes of primary + dev ID for these cards. + +Signed-off-by: Matthew Howell +Cc: stable +Link: https://lore.kernel.org/r/alpine.DEB.2.21.2301191440010.22558@tstest-VirtualBox +Signed-off-by: Greg Kroah-Hartman +Stable-dep-of: 95d698869b40 ("serial: 8250_exar: Add support for USR298x PCI Modems") +Signed-off-by: Sasha Levin +--- + drivers/tty/serial/8250/8250_exar.c | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/drivers/tty/serial/8250/8250_exar.c b/drivers/tty/serial/8250/8250_exar.c +index 3d82902bfe5b9..2c9f721091125 100644 +--- a/drivers/tty/serial/8250/8250_exar.c ++++ b/drivers/tty/serial/8250/8250_exar.c +@@ -43,6 +43,12 @@ + #define PCI_DEVICE_ID_EXAR_XR17V4358 0x4358 + #define PCI_DEVICE_ID_EXAR_XR17V8358 0x8358 + ++#define PCI_DEVICE_ID_SEALEVEL_710xC 0x1001 ++#define PCI_DEVICE_ID_SEALEVEL_720xC 0x1002 ++#define PCI_DEVICE_ID_SEALEVEL_740xC 0x1004 ++#define PCI_DEVICE_ID_SEALEVEL_780xC 0x1008 ++#define PCI_DEVICE_ID_SEALEVEL_716xC 0x1010 ++ + #define UART_EXAR_INT0 0x80 + #define UART_EXAR_8XMODE 0x88 /* 8X sampling rate select */ + #define UART_EXAR_SLEEP 0x8b /* Sleep mode */ +@@ -600,6 +606,8 @@ exar_pci_probe(struct pci_dev *pcidev, const struct pci_device_id *ent) + nr_ports = BIT(((pcidev->device & 0x38) >> 3) - 1); + else if (board->num_ports) + nr_ports = board->num_ports; ++ else if (pcidev->vendor == PCI_VENDOR_ID_SEALEVEL) ++ nr_ports = pcidev->device & 0xff; + else + nr_ports = pcidev->device & 0x0f; + +@@ -826,6 +834,12 @@ static const struct pci_device_id exar_pci_tbl[] = { + EXAR_DEVICE(COMMTECH, 4224PCI335, pbn_fastcom335_4), + EXAR_DEVICE(COMMTECH, 2324PCI335, pbn_fastcom335_4), + EXAR_DEVICE(COMMTECH, 2328PCI335, pbn_fastcom335_8), ++ ++ EXAR_DEVICE(SEALEVEL, 710xC, pbn_exar_XR17V35x), ++ EXAR_DEVICE(SEALEVEL, 720xC, pbn_exar_XR17V35x), ++ EXAR_DEVICE(SEALEVEL, 740xC, pbn_exar_XR17V35x), ++ EXAR_DEVICE(SEALEVEL, 780xC, pbn_exar_XR17V35x), ++ EXAR_DEVICE(SEALEVEL, 716xC, pbn_exar_XR17V35x), + { 0, } + }; + MODULE_DEVICE_TABLE(pci, exar_pci_tbl); +-- +2.39.2 + diff --git a/queue-5.10/series b/queue-5.10/series index d0b634eff6d..6b2ac89c929 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -151,3 +151,8 @@ hid-wacom-force-pen-out-of-prox-if-no-events-have-been-received-in-a-while.patch hid-wacom-add-new-intuos-pro-small-pth-460-device-ids.patch hid-wacom-add-three-styli-to-wacom_intuos_get_tool_type.patch kvm-arm64-link-position-independent-string-routines-into-.hyp.text.patch +serial-8250_exar-derive-nr_ports-from-pci-id-for-acc.patch +serial-exar-add-support-for-sealevel-7xxxc-serial-ca.patch +serial-8250_exar-add-support-for-usr298x-pci-modems.patch +s390-qdio-get-rid-of-register-asm.patch +s390-qdio-fix-do_sqbs-inline-assembly-constraint.patch -- 2.47.3