From 00cef8280ada085bb4216727e87b7cb65a9b9cfd Mon Sep 17 00:00:00 2001 From: Denis Kirjanov Date: Feb 02 2024 08:11:24 +0000 Subject: Merge branch 'users/oneukum/SLE12-SP5/for-next' into SLE12-SP5 Pull usb driver fixes from Oliver Neukum --- diff --git a/patches.suse/USB-serial-option-add-Fibocom-to-DELL-custom-modem-F.patch b/patches.suse/USB-serial-option-add-Fibocom-to-DELL-custom-modem-F.patch new file mode 100644 index 0000000..fb1ad7c --- /dev/null +++ b/patches.suse/USB-serial-option-add-Fibocom-to-DELL-custom-modem-F.patch @@ -0,0 +1,82 @@ +From 52480e1f1a259c93d749ba3961af0bffedfe7a7a Mon Sep 17 00:00:00 2001 +From: Puliang Lu +Date: Mon, 16 Oct 2023 15:36:16 +0800 +Subject: [PATCH] USB: serial: option: add Fibocom to DELL custom modem + FM101R-GL +Git-commit: 52480e1f1a259c93d749ba3961af0bffedfe7a7a +References: git-fixes +Patch-mainline: v6.6-rc7 + +Update the USB serial option driver support for the Fibocom +FM101R-GL LTE modules as there are actually several different variants. + +- VID:PID 413C:8213, FM101R-GL are laptop M.2 cards (with + MBIM interfaces for Linux) + +- VID:PID 413C:8215, FM101R-GL ESIM are laptop M.2 cards (with + MBIM interface for Linux) + +0x8213: mbim, tty +0x8215: mbim, tty + +T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=5000 MxCh= 0 +D: Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1 +P: Vendor=413c ProdID=8213 Rev= 5.04 +S: Manufacturer=Fibocom Wireless Inc. +S: Product=Fibocom FM101-GL Module +S: SerialNumber=a3b7cbf0 +C:* #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=896mA +A: FirstIf#= 0 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00 +I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=cdc_mbim +E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=32ms +I: If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim +I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim +E: Ad=8e(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms +E: Ad=0f(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms +I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=40 Driver=(none) +E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms +E: Ad=82(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms +E: Ad=01(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms + +T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 +P: Vendor=413c ProdID=8215 Rev= 5.04 +C:* #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=896mA +I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=cdc_mbim +I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim +I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=40 Driver=(none) + +Signed-off-by: Puliang Lu +Cc: stable@vger.kernel.org +Signed-off-by: Johan Hovold +Signed-off-by: Oliver Neukum + +--- + drivers/usb/serial/option.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c +index c0908e6d4921..45dcfaadaf98 100644 +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -203,6 +203,9 @@ static void option_instat_callback(struct urb *urb); + #define DELL_PRODUCT_5829E_ESIM 0x81e4 + #define DELL_PRODUCT_5829E 0x81e6 + ++#define DELL_PRODUCT_FM101R 0x8213 ++#define DELL_PRODUCT_FM101R_ESIM 0x8215 ++ + #define KYOCERA_VENDOR_ID 0x0c88 + #define KYOCERA_PRODUCT_KPC650 0x17da + #define KYOCERA_PRODUCT_KPC680 0x180a +@@ -1108,6 +1111,8 @@ static const struct usb_device_id option_ids[] = { + .driver_info = RSVD(0) | RSVD(6) }, + { USB_DEVICE(DELL_VENDOR_ID, DELL_PRODUCT_5829E_ESIM), + .driver_info = RSVD(0) | RSVD(6) }, ++ { USB_DEVICE_INTERFACE_CLASS(DELL_VENDOR_ID, DELL_PRODUCT_FM101R, 0xff) }, ++ { USB_DEVICE_INTERFACE_CLASS(DELL_VENDOR_ID, DELL_PRODUCT_FM101R_ESIM, 0xff) }, + { USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_E100A) }, /* ADU-E100, ADU-310 */ + { USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_500A) }, + { USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_620UW) }, +-- +2.43.0 + diff --git a/patches.suse/USB-serial-option-add-Telit-LE910C4-WWX-0x1035-compo.patch b/patches.suse/USB-serial-option-add-Telit-LE910C4-WWX-0x1035-compo.patch new file mode 100644 index 0000000..882693d --- /dev/null +++ b/patches.suse/USB-serial-option-add-Telit-LE910C4-WWX-0x1035-compo.patch @@ -0,0 +1,58 @@ +From 6a7be48e9bd18d309ba25c223a27790ad1bf0fa3 Mon Sep 17 00:00:00 2001 +From: Fabio Porcedda +Date: Tue, 5 Sep 2023 09:37:24 +0200 +Subject: [PATCH] USB: serial: option: add Telit LE910C4-WWX 0x1035 composition +Git-commit: 6a7be48e9bd18d309ba25c223a27790ad1bf0fa3 +References: git-fixes +Patch-mainline: v6.6-rc7 + +Add support for the following Telit LE910C4-WWX composition: + +0x1035: TTY, TTY, ECM + +T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 5 Spd=480 MxCh= 0 +D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 +P: Vendor=1bc7 ProdID=1035 Rev=00.00 +S: Manufacturer=Telit +S: Product=LE910C4-WWX +S: SerialNumber=e1b117c7 +C: #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=500mA +I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=option +E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=2ms +E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=fe Prot=ff Driver=option +E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=83(I) Atr=03(Int.) MxPS= 64 Ivl=2ms +E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms +I: If#= 2 Alt= 0 #EPs= 1 Cls=02(commc) Sub=06 Prot=00 Driver=cdc_ether +E: Ad=85(I) Atr=03(Int.) MxPS= 64 Ivl=2ms +I: If#= 3 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether +E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms +E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms + +Signed-off-by: Fabio Porcedda +Cc: stable@vger.kernel.org +Reviewed-by: Daniele Palmas +Signed-off-by: Johan Hovold +Signed-off-by: Oliver Neukum + +--- + drivers/usb/serial/option.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c +index 7994a4549a6c..f612bc9129bd 100644 +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -1290,6 +1290,7 @@ static const struct usb_device_id option_ids[] = { + .driver_info = NCTRL(0) | RSVD(3) }, + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1033, 0xff), /* Telit LE910C1-EUX (ECM) */ + .driver_info = NCTRL(0) }, ++ { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1035, 0xff) }, /* Telit LE910C4-WWX (ECM) */ + { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG0), + .driver_info = RSVD(0) | RSVD(1) | NCTRL(2) | RSVD(3) }, + { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG1), +-- +2.43.0 + diff --git a/patches.suse/USB-serial-option-add-entry-for-Sierra-EM9191-with-n.patch b/patches.suse/USB-serial-option-add-entry-for-Sierra-EM9191-with-n.patch new file mode 100644 index 0000000..96331b1 --- /dev/null +++ b/patches.suse/USB-serial-option-add-entry-for-Sierra-EM9191-with-n.patch @@ -0,0 +1,51 @@ +From 064f6e2ba9eb59b2c87b866e1e968e79ccedf9dd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Beno=C3=AEt=20Monin?= +Date: Mon, 2 Oct 2023 17:51:40 +0200 +Subject: [PATCH] USB: serial: option: add entry for Sierra EM9191 with new + firmware +Mime-version: 1.0 +Content-type: text/plain; charset=UTF-8 +Content-transfer-encoding: 8bit +Git-commit: 064f6e2ba9eb59b2c87b866e1e968e79ccedf9dd +References: git-fixes +Patch-mainline: v6.6-rc7 + +Following a firmware update of the modem, the interface for the AT +command port changed, so add it back. + +T: Bus=08 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 2 Spd=5000 MxCh= 0 +D: Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1 +P: Vendor=1199 ProdID=90d3 Rev=00.06 +S: Manufacturer=Sierra Wireless, Incorporated +S: Product=Sierra Wireless EM9191 +S: SerialNumber=xxxxxxxxxxxxxxxx +C: #Ifs= 4 Cfg#= 1 Atr=a0 MxPwr=896mA +I: If#=0x0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0e Prot=00 Driver=cdc_mbim +I: If#=0x1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim +I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=(none) +I: If#=0x4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option + +Signed-off-by: BenoƮt Monin +Cc: stable@vger.kernel.org +Signed-off-by: Johan Hovold +Signed-off-by: Oliver Neukum + +--- + drivers/usb/serial/option.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c +index f612bc9129bd..c0908e6d4921 100644 +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -2263,6 +2263,7 @@ static const struct usb_device_id option_ids[] = { + { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1406, 0xff) }, /* GosunCn GM500 ECM/NCM */ + { USB_DEVICE_AND_INTERFACE_INFO(OPPO_VENDOR_ID, OPPO_PRODUCT_R11, 0xff, 0xff, 0x30) }, + { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0xff, 0x30) }, ++ { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0xff, 0x40) }, + { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0, 0) }, + { USB_DEVICE_AND_INTERFACE_INFO(UNISOC_VENDOR_ID, TOZED_PRODUCT_LT70C, 0xff, 0, 0) }, + { } /* Terminating entry */ +-- +2.43.0 + diff --git a/patches.suse/USB-serial-option-fix-FM101R-GL-defines.patch b/patches.suse/USB-serial-option-fix-FM101R-GL-defines.patch new file mode 100644 index 0000000..ab88e3f --- /dev/null +++ b/patches.suse/USB-serial-option-fix-FM101R-GL-defines.patch @@ -0,0 +1,51 @@ +From a1092619dd28ac0fcf23016160a2fdccd98ef935 Mon Sep 17 00:00:00 2001 +From: Puliang Lu +Date: Thu, 26 Oct 2023 20:35:06 +0800 +Subject: [PATCH] USB: serial: option: fix FM101R-GL defines +Git-commit: a1092619dd28ac0fcf23016160a2fdccd98ef935 +References: git-fixes +Patch-mainline: v6.7-rc3 + +Modify the definition of the two Fibocom FM101R-GL PID macros, which had +their PIDs switched. + +The correct PIDs are: + +- VID:PID 413C:8213, FM101R-GL ESIM are laptop M.2 cards (with + MBIM interfaces for Linux) + +- VID:PID 413C:8215, FM101R-GL are laptop M.2 cards (with + MBIM interface for Linux) + +0x8213: mbim, tty +0x8215: mbim, tty + +Signed-off-by: Puliang Lu +Fixes: 52480e1f1a25 ("USB: serial: option: add Fibocom to DELL custom modem FM101R-GL") +Link: https://lore.kernel.org/lkml/TYZPR02MB508845BAD7936A62A105CE5D89DFA@TYZPR02MB5088.apcprd02.prod.outlook.com/ +Cc: stable@vger.kernel.org +Signed-off-by: Johan Hovold +Signed-off-by: Oliver Neukum + +--- + drivers/usb/serial/option.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c +index ff9049db6e65..9c76095ebfe1 100644 +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -203,8 +203,8 @@ static void option_instat_callback(struct urb *urb); + #define DELL_PRODUCT_5829E_ESIM 0x81e4 + #define DELL_PRODUCT_5829E 0x81e6 + +-#define DELL_PRODUCT_FM101R 0x8213 +-#define DELL_PRODUCT_FM101R_ESIM 0x8215 ++#define DELL_PRODUCT_FM101R_ESIM 0x8213 ++#define DELL_PRODUCT_FM101R 0x8215 + + #define KYOCERA_VENDOR_ID 0x0c88 + #define KYOCERA_PRODUCT_KPC650 0x17da +-- +2.43.0 + diff --git a/series.conf b/series.conf index f09aad8..a26ce2b 100644 --- a/series.conf +++ b/series.conf @@ -64712,6 +64712,9 @@ patches.suse/xfrm6-fix-inet6_dev-refcount-underflow-problem.patch patches.suse/nvme-sanitize-metadata-bounce-buffer-for-reads.patch patches.suse/scsi-qla2xxx-Fix-double-free-of-dsd_list-during-driv.patch + patches.suse/USB-serial-option-add-Telit-LE910C4-WWX-0x1035-compo.patch + patches.suse/USB-serial-option-add-entry-for-Sierra-EM9191-with-n.patch + patches.suse/USB-serial-option-add-Fibocom-to-DELL-custom-modem-F.patch patches.suse/s390-pci-fix-iommu-bitmap-allocation.patch patches.suse/perf-Disallow-mis-matched-inherited-group-reads.patch patches.suse/net-usb-smsc95xx-Fix-uninit-value-access-in-smsc95xx.patch @@ -64743,6 +64746,7 @@ patches.suse/s390-dasd-protect-device-queue-against-concurrent-access.patch patches.suse/nvmet-nul-terminate-the-NQNs-passed-in-the-connect-c.patch patches.suse/usb-config-fix-iteration-issue-in-usb_get_bos_descri.patch + patches.suse/USB-serial-option-fix-FM101R-GL-defines.patch patches.suse/ipv4-igmp-fix-refcnt-uaf-issue-when-receiving-igmp-q.patch patches.suse/dm-verity-don-t-perform-FEC-for-failed-readahead-IO-0193.patch patches.suse/dm-verity-align-struct-dm_verity_fec_io-properly-38bc.patch