Skip to content

Commit bfd4704

Browse files
committed
Merge tag 'usb-6.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
Pull USB / Thunderbolt fixes and ids from Greg KH: "Here are four small patches for USB and Thunderbolt for 6.6-rc7 that do the following: - new usb-serial device ids - thunderbolt driver fix for reported issue All of these have been in linux-next with no reported problems" * tag 'usb-6.6-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: USB: serial: option: add Fibocom to DELL custom modem FM101R-GL USB: serial: option: add entry for Sierra EM9191 with new firmware USB: serial: option: add Telit LE910C4-WWX 0x1035 composition thunderbolt: Call tb_switch_put() once DisplayPort bandwidth request is finished
2 parents f1de9ac + 21a68b6 commit bfd4704

File tree

2 files changed

+13
-4
lines changed

2 files changed

+13
-4
lines changed

drivers/thunderbolt/tb.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1907,14 +1907,14 @@ static void tb_handle_dp_bandwidth_request(struct work_struct *work)
19071907
in = &sw->ports[ev->port];
19081908
if (!tb_port_is_dpin(in)) {
19091909
tb_port_warn(in, "bandwidth request to non-DP IN adapter\n");
1910-
goto unlock;
1910+
goto put_sw;
19111911
}
19121912

19131913
tb_port_dbg(in, "handling bandwidth allocation request\n");
19141914

19151915
if (!usb4_dp_port_bandwidth_mode_enabled(in)) {
19161916
tb_port_warn(in, "bandwidth allocation mode not enabled\n");
1917-
goto unlock;
1917+
goto put_sw;
19181918
}
19191919

19201920
ret = usb4_dp_port_requested_bandwidth(in);
@@ -1923,7 +1923,7 @@ static void tb_handle_dp_bandwidth_request(struct work_struct *work)
19231923
tb_port_dbg(in, "no bandwidth request active\n");
19241924
else
19251925
tb_port_warn(in, "failed to read requested bandwidth\n");
1926-
goto unlock;
1926+
goto put_sw;
19271927
}
19281928
requested_bw = ret;
19291929

@@ -1932,7 +1932,7 @@ static void tb_handle_dp_bandwidth_request(struct work_struct *work)
19321932
tunnel = tb_find_tunnel(tb, TB_TUNNEL_DP, in, NULL);
19331933
if (!tunnel) {
19341934
tb_port_warn(in, "failed to find tunnel\n");
1935-
goto unlock;
1935+
goto put_sw;
19361936
}
19371937

19381938
out = tunnel->dst_port;
@@ -1959,6 +1959,8 @@ static void tb_handle_dp_bandwidth_request(struct work_struct *work)
19591959
tb_recalc_estimated_bandwidth(tb);
19601960
}
19611961

1962+
put_sw:
1963+
tb_switch_put(sw);
19621964
unlock:
19631965
mutex_unlock(&tb->lock);
19641966

drivers/usb/serial/option.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,9 @@ static void option_instat_callback(struct urb *urb);
203203
#define DELL_PRODUCT_5829E_ESIM 0x81e4
204204
#define DELL_PRODUCT_5829E 0x81e6
205205

206+
#define DELL_PRODUCT_FM101R 0x8213
207+
#define DELL_PRODUCT_FM101R_ESIM 0x8215
208+
206209
#define KYOCERA_VENDOR_ID 0x0c88
207210
#define KYOCERA_PRODUCT_KPC650 0x17da
208211
#define KYOCERA_PRODUCT_KPC680 0x180a
@@ -1108,6 +1111,8 @@ static const struct usb_device_id option_ids[] = {
11081111
.driver_info = RSVD(0) | RSVD(6) },
11091112
{ USB_DEVICE(DELL_VENDOR_ID, DELL_PRODUCT_5829E_ESIM),
11101113
.driver_info = RSVD(0) | RSVD(6) },
1114+
{ USB_DEVICE_INTERFACE_CLASS(DELL_VENDOR_ID, DELL_PRODUCT_FM101R, 0xff) },
1115+
{ USB_DEVICE_INTERFACE_CLASS(DELL_VENDOR_ID, DELL_PRODUCT_FM101R_ESIM, 0xff) },
11111116
{ USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_E100A) }, /* ADU-E100, ADU-310 */
11121117
{ USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_500A) },
11131118
{ USB_DEVICE(ANYDATA_VENDOR_ID, ANYDATA_PRODUCT_ADU_620UW) },
@@ -1290,6 +1295,7 @@ static const struct usb_device_id option_ids[] = {
12901295
.driver_info = NCTRL(0) | RSVD(3) },
12911296
{ USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1033, 0xff), /* Telit LE910C1-EUX (ECM) */
12921297
.driver_info = NCTRL(0) },
1298+
{ USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1035, 0xff) }, /* Telit LE910C4-WWX (ECM) */
12931299
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG0),
12941300
.driver_info = RSVD(0) | RSVD(1) | NCTRL(2) | RSVD(3) },
12951301
{ USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE922_USBCFG1),
@@ -2262,6 +2268,7 @@ static const struct usb_device_id option_ids[] = {
22622268
{ USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1406, 0xff) }, /* GosunCn GM500 ECM/NCM */
22632269
{ USB_DEVICE_AND_INTERFACE_INFO(OPPO_VENDOR_ID, OPPO_PRODUCT_R11, 0xff, 0xff, 0x30) },
22642270
{ USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0xff, 0x30) },
2271+
{ USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0xff, 0x40) },
22652272
{ USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0, 0) },
22662273
{ USB_DEVICE_AND_INTERFACE_INFO(UNISOC_VENDOR_ID, TOZED_PRODUCT_LT70C, 0xff, 0, 0) },
22672274
{ } /* Terminating entry */

0 commit comments

Comments
 (0)