| .. | .. |
|---|
| 162 | 162 | #define NOVATELWIRELESS_PRODUCT_G2 0xA010 |
|---|
| 163 | 163 | #define NOVATELWIRELESS_PRODUCT_MC551 0xB001 |
|---|
| 164 | 164 | |
|---|
| 165 | +#define UBLOX_VENDOR_ID 0x1546 |
|---|
| 166 | + |
|---|
| 165 | 167 | /* AMOI PRODUCTS */ |
|---|
| 166 | 168 | #define AMOI_VENDOR_ID 0x1614 |
|---|
| 167 | 169 | #define AMOI_PRODUCT_H01 0x0800 |
|---|
| .. | .. |
|---|
| 240 | 242 | #define QUECTEL_PRODUCT_UC15 0x9090 |
|---|
| 241 | 243 | /* These u-blox products use Qualcomm's vendor ID */ |
|---|
| 242 | 244 | #define UBLOX_PRODUCT_R410M 0x90b2 |
|---|
| 243 | | -#define UBLOX_PRODUCT_R6XX 0x90fa |
|---|
| 244 | 245 | /* These Yuga products use Qualcomm's vendor ID */ |
|---|
| 245 | 246 | #define YUGA_PRODUCT_CLM920_NC5 0x9625 |
|---|
| 246 | 247 | |
|---|
| .. | .. |
|---|
| 252 | 253 | #define QUECTEL_PRODUCT_EG95 0x0195 |
|---|
| 253 | 254 | #define QUECTEL_PRODUCT_BG96 0x0296 |
|---|
| 254 | 255 | #define QUECTEL_PRODUCT_EP06 0x0306 |
|---|
| 256 | +#define QUECTEL_PRODUCT_EM05G 0x030a |
|---|
| 257 | +#define QUECTEL_PRODUCT_EM060K 0x030b |
|---|
| 258 | +#define QUECTEL_PRODUCT_EM05G_SG 0x0311 |
|---|
| 255 | 259 | #define QUECTEL_PRODUCT_EM12 0x0512 |
|---|
| 256 | 260 | #define QUECTEL_PRODUCT_RM500Q 0x0800 |
|---|
| 261 | +#define QUECTEL_PRODUCT_RM520N 0x0801 |
|---|
| 257 | 262 | #define QUECTEL_PRODUCT_EC200S_CN 0x6002 |
|---|
| 258 | 263 | #define QUECTEL_PRODUCT_EC200T 0x6026 |
|---|
| 264 | +#define QUECTEL_PRODUCT_RM500K 0x7001 |
|---|
| 259 | 265 | |
|---|
| 260 | 266 | #define CMOTECH_VENDOR_ID 0x16d8 |
|---|
| 261 | 267 | #define CMOTECH_PRODUCT_6001 0x6001 |
|---|
| .. | .. |
|---|
| 432 | 438 | #define CINTERION_PRODUCT_CLS8 0x00b0 |
|---|
| 433 | 439 | #define CINTERION_PRODUCT_MV31_MBIM 0x00b3 |
|---|
| 434 | 440 | #define CINTERION_PRODUCT_MV31_RMNET 0x00b7 |
|---|
| 441 | +#define CINTERION_PRODUCT_MV31_2_MBIM 0x00b8 |
|---|
| 442 | +#define CINTERION_PRODUCT_MV31_2_RMNET 0x00b9 |
|---|
| 443 | +#define CINTERION_PRODUCT_MV32_WA 0x00f1 |
|---|
| 444 | +#define CINTERION_PRODUCT_MV32_WB 0x00f2 |
|---|
| 445 | +#define CINTERION_PRODUCT_MV32_WA_RMNET 0x00f3 |
|---|
| 446 | +#define CINTERION_PRODUCT_MV32_WB_RMNET 0x00f4 |
|---|
| 435 | 447 | |
|---|
| 436 | 448 | /* Olivetti products */ |
|---|
| 437 | 449 | #define OLIVETTI_VENDOR_ID 0x0b3c |
|---|
| .. | .. |
|---|
| 567 | 579 | #define WETELECOM_PRODUCT_6802 0x6802 |
|---|
| 568 | 580 | #define WETELECOM_PRODUCT_WMD300 0x6803 |
|---|
| 569 | 581 | |
|---|
| 582 | +/* OPPO products */ |
|---|
| 583 | +#define OPPO_VENDOR_ID 0x22d9 |
|---|
| 584 | +#define OPPO_PRODUCT_R11 0x276c |
|---|
| 585 | + |
|---|
| 586 | +/* Sierra Wireless products */ |
|---|
| 587 | +#define SIERRA_VENDOR_ID 0x1199 |
|---|
| 588 | +#define SIERRA_PRODUCT_EM9191 0x90d3 |
|---|
| 570 | 589 | |
|---|
| 571 | 590 | /* Device flags */ |
|---|
| 572 | 591 | |
|---|
| .. | .. |
|---|
| 587 | 606 | |
|---|
| 588 | 607 | |
|---|
| 589 | 608 | static const struct usb_device_id option_ids[] = { |
|---|
| 590 | | - { USB_DEVICE(0x1286, 0x4e3c) }, |
|---|
| 591 | 609 | { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_COLT) }, |
|---|
| 592 | 610 | { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA) }, |
|---|
| 593 | 611 | { USB_DEVICE(OPTION_VENDOR_ID, OPTION_PRODUCT_RICOLA_LIGHT) }, |
|---|
| .. | .. |
|---|
| 1111 | 1129 | /* u-blox products using Qualcomm vendor ID */ |
|---|
| 1112 | 1130 | { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R410M), |
|---|
| 1113 | 1131 | .driver_info = RSVD(1) | RSVD(3) }, |
|---|
| 1114 | | - { USB_DEVICE(QUALCOMM_VENDOR_ID, UBLOX_PRODUCT_R6XX), |
|---|
| 1132 | + { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x908b), /* u-blox LARA-R6 00B */ |
|---|
| 1133 | + .driver_info = RSVD(4) }, |
|---|
| 1134 | + { USB_DEVICE(QUALCOMM_VENDOR_ID, 0x90fa), |
|---|
| 1115 | 1135 | .driver_info = RSVD(3) }, |
|---|
| 1136 | + /* u-blox products */ |
|---|
| 1137 | + { USB_DEVICE(UBLOX_VENDOR_ID, 0x1341) }, /* u-blox LARA-L6 */ |
|---|
| 1138 | + { USB_DEVICE(UBLOX_VENDOR_ID, 0x1342), /* u-blox LARA-L6 (RMNET) */ |
|---|
| 1139 | + .driver_info = RSVD(4) }, |
|---|
| 1140 | + { USB_DEVICE(UBLOX_VENDOR_ID, 0x1343), /* u-blox LARA-L6 (ECM) */ |
|---|
| 1141 | + .driver_info = RSVD(4) }, |
|---|
| 1116 | 1142 | /* Quectel products using Quectel vendor ID */ |
|---|
| 1117 | 1143 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC21, 0xff, 0xff, 0xff), |
|---|
| 1118 | 1144 | .driver_info = NUMEP2 }, |
|---|
| .. | .. |
|---|
| 1126 | 1152 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0xff, 0xff), |
|---|
| 1127 | 1153 | .driver_info = NUMEP2 }, |
|---|
| 1128 | 1154 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EG95, 0xff, 0, 0) }, |
|---|
| 1155 | + { USB_DEVICE_INTERFACE_CLASS(QUECTEL_VENDOR_ID, 0x0203, 0xff), /* BG95-M3 */ |
|---|
| 1156 | + .driver_info = ZLP }, |
|---|
| 1129 | 1157 | { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), |
|---|
| 1130 | 1158 | .driver_info = RSVD(4) }, |
|---|
| 1131 | 1159 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0xff, 0xff), |
|---|
| 1132 | 1160 | .driver_info = RSVD(1) | RSVD(2) | RSVD(3) | RSVD(4) | NUMEP2 }, |
|---|
| 1133 | 1161 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EP06, 0xff, 0, 0) }, |
|---|
| 1162 | + { USB_DEVICE_INTERFACE_CLASS(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM05G, 0xff), |
|---|
| 1163 | + .driver_info = RSVD(6) | ZLP }, |
|---|
| 1164 | + { USB_DEVICE_INTERFACE_CLASS(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM05G_SG, 0xff), |
|---|
| 1165 | + .driver_info = RSVD(6) | ZLP }, |
|---|
| 1166 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM060K, 0xff, 0x00, 0x40) }, |
|---|
| 1167 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM060K, 0xff, 0xff, 0x30) }, |
|---|
| 1168 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM060K, 0xff, 0xff, 0x40) }, |
|---|
| 1134 | 1169 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM12, 0xff, 0xff, 0xff), |
|---|
| 1135 | 1170 | .driver_info = RSVD(1) | RSVD(2) | RSVD(3) | RSVD(4) | NUMEP2 }, |
|---|
| 1136 | 1171 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EM12, 0xff, 0, 0) }, |
|---|
| 1137 | 1172 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, 0x0620, 0xff, 0xff, 0x30) }, /* EM160R-GL */ |
|---|
| 1138 | 1173 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, 0x0620, 0xff, 0, 0) }, |
|---|
| 1174 | + { USB_DEVICE_INTERFACE_CLASS(QUECTEL_VENDOR_ID, 0x0700, 0xff), /* BG95 */ |
|---|
| 1175 | + .driver_info = RSVD(3) | ZLP }, |
|---|
| 1139 | 1176 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500Q, 0xff, 0xff, 0x30) }, |
|---|
| 1140 | 1177 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500Q, 0xff, 0, 0) }, |
|---|
| 1141 | 1178 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500Q, 0xff, 0xff, 0x10), |
|---|
| 1142 | 1179 | .driver_info = ZLP }, |
|---|
| 1180 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM520N, 0xff, 0xff, 0x30) }, |
|---|
| 1181 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM520N, 0xff, 0, 0x40) }, |
|---|
| 1182 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM520N, 0xff, 0, 0) }, |
|---|
| 1143 | 1183 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200S_CN, 0xff, 0, 0) }, |
|---|
| 1144 | 1184 | { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_EC200T, 0xff, 0, 0) }, |
|---|
| 1185 | + { USB_DEVICE_AND_INTERFACE_INFO(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_RM500K, 0xff, 0x00, 0x00) }, |
|---|
| 1145 | 1186 | |
|---|
| 1146 | 1187 | { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_6001) }, |
|---|
| 1147 | 1188 | { USB_DEVICE(CMOTECH_VENDOR_ID, CMOTECH_PRODUCT_CMU_300) }, |
|---|
| .. | .. |
|---|
| 1218 | 1259 | .driver_info = NCTRL(0) | RSVD(1) }, |
|---|
| 1219 | 1260 | { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1056, 0xff), /* Telit FD980 */ |
|---|
| 1220 | 1261 | .driver_info = NCTRL(2) | RSVD(3) }, |
|---|
| 1262 | + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1057, 0xff), /* Telit FN980 */ |
|---|
| 1263 | + .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, |
|---|
| 1264 | + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1058, 0xff), /* Telit FN980 (PCIe) */ |
|---|
| 1265 | + .driver_info = NCTRL(0) | RSVD(1) }, |
|---|
| 1221 | 1266 | { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1060, 0xff), /* Telit LN920 (rmnet) */ |
|---|
| 1222 | 1267 | .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, |
|---|
| 1223 | 1268 | { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1061, 0xff), /* Telit LN920 (MBIM) */ |
|---|
| .. | .. |
|---|
| 1234 | 1279 | .driver_info = NCTRL(2) | RSVD(3) }, |
|---|
| 1235 | 1280 | { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1073, 0xff), /* Telit FN990 (ECM) */ |
|---|
| 1236 | 1281 | .driver_info = NCTRL(0) | RSVD(1) }, |
|---|
| 1282 | + { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1075, 0xff), /* Telit FN990 (PCIe) */ |
|---|
| 1283 | + .driver_info = RSVD(0) }, |
|---|
| 1237 | 1284 | { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910), |
|---|
| 1238 | 1285 | .driver_info = NCTRL(0) | RSVD(1) | RSVD(3) }, |
|---|
| 1239 | 1286 | { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_ME910_DUAL_MODEM), |
|---|
| .. | .. |
|---|
| 1268 | 1315 | .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, |
|---|
| 1269 | 1316 | { USB_DEVICE_INTERFACE_CLASS(TELIT_VENDOR_ID, 0x1231, 0xff), /* Telit LE910Cx (RNDIS) */ |
|---|
| 1270 | 1317 | .driver_info = NCTRL(2) | RSVD(3) }, |
|---|
| 1318 | + { USB_DEVICE_AND_INTERFACE_INFO(TELIT_VENDOR_ID, 0x1250, 0xff, 0x00, 0x00) }, /* Telit LE910Cx (rmnet) */ |
|---|
| 1271 | 1319 | { USB_DEVICE(TELIT_VENDOR_ID, 0x1260), |
|---|
| 1272 | 1320 | .driver_info = NCTRL(0) | RSVD(1) | RSVD(2) }, |
|---|
| 1273 | 1321 | { USB_DEVICE(TELIT_VENDOR_ID, 0x1261), |
|---|
| .. | .. |
|---|
| 1970 | 2018 | .driver_info = RSVD(3)}, |
|---|
| 1971 | 2019 | { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV31_RMNET, 0xff), |
|---|
| 1972 | 2020 | .driver_info = RSVD(0)}, |
|---|
| 2021 | + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV31_2_MBIM, 0xff), |
|---|
| 2022 | + .driver_info = RSVD(3)}, |
|---|
| 2023 | + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV31_2_RMNET, 0xff), |
|---|
| 2024 | + .driver_info = RSVD(0)}, |
|---|
| 2025 | + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV32_WA, 0xff), |
|---|
| 2026 | + .driver_info = RSVD(3)}, |
|---|
| 2027 | + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV32_WA_RMNET, 0xff), |
|---|
| 2028 | + .driver_info = RSVD(0) }, |
|---|
| 2029 | + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV32_WB, 0xff), |
|---|
| 2030 | + .driver_info = RSVD(3)}, |
|---|
| 2031 | + { USB_DEVICE_INTERFACE_CLASS(CINTERION_VENDOR_ID, CINTERION_PRODUCT_MV32_WB_RMNET, 0xff), |
|---|
| 2032 | + .driver_info = RSVD(0) }, |
|---|
| 1973 | 2033 | { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD100), |
|---|
| 1974 | 2034 | .driver_info = RSVD(4) }, |
|---|
| 1975 | 2035 | { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD120), |
|---|
| .. | .. |
|---|
| 2112 | 2172 | .driver_info = RSVD(3) }, |
|---|
| 2113 | 2173 | { USB_DEVICE(0x1508, 0x1001), /* Fibocom NL668 (IOT version) */ |
|---|
| 2114 | 2174 | .driver_info = RSVD(4) | RSVD(5) | RSVD(6) }, |
|---|
| 2175 | + { USB_DEVICE(0x1782, 0x4d10) }, /* Fibocom L610 (AT mode) */ |
|---|
| 2176 | + { USB_DEVICE_INTERFACE_CLASS(0x1782, 0x4d11, 0xff) }, /* Fibocom L610 (ECM/RNDIS mode) */ |
|---|
| 2115 | 2177 | { USB_DEVICE(0x2cb7, 0x0104), /* Fibocom NL678 series */ |
|---|
| 2116 | 2178 | .driver_info = RSVD(4) | RSVD(5) }, |
|---|
| 2117 | 2179 | { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x0105, 0xff), /* Fibocom NL678 series */ |
|---|
| 2118 | 2180 | .driver_info = RSVD(6) }, |
|---|
| 2181 | + { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x0106, 0xff) }, /* Fibocom MA510 (ECM mode w/ diag intf.) */ |
|---|
| 2182 | + { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x010a, 0xff) }, /* Fibocom MA510 (ECM mode) */ |
|---|
| 2119 | 2183 | { USB_DEVICE_AND_INTERFACE_INFO(0x2cb7, 0x010b, 0xff, 0xff, 0x30) }, /* Fibocom FG150 Diag */ |
|---|
| 2120 | 2184 | { USB_DEVICE_AND_INTERFACE_INFO(0x2cb7, 0x010b, 0xff, 0, 0) }, /* Fibocom FG150 AT */ |
|---|
| 2185 | + { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x0111, 0xff) }, /* Fibocom FM160 (MBIM mode) */ |
|---|
| 2121 | 2186 | { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x01a0, 0xff) }, /* Fibocom NL668-AM/NL652-EU (laptop MBIM) */ |
|---|
| 2122 | 2187 | { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x01a2, 0xff) }, /* Fibocom FM101-GL (laptop MBIM) */ |
|---|
| 2123 | 2188 | { USB_DEVICE_INTERFACE_CLASS(0x2cb7, 0x01a4, 0xff), /* Fibocom FM101-GL (laptop MBIM) */ |
|---|
| .. | .. |
|---|
| 2126 | 2191 | { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1404, 0xff) }, /* GosunCn GM500 RNDIS */ |
|---|
| 2127 | 2192 | { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1405, 0xff) }, /* GosunCn GM500 MBIM */ |
|---|
| 2128 | 2193 | { USB_DEVICE_INTERFACE_CLASS(0x305a, 0x1406, 0xff) }, /* GosunCn GM500 ECM/NCM */ |
|---|
| 2194 | + { USB_DEVICE_AND_INTERFACE_INFO(OPPO_VENDOR_ID, OPPO_PRODUCT_R11, 0xff, 0xff, 0x30) }, |
|---|
| 2195 | + { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0xff, 0x30) }, |
|---|
| 2196 | + { USB_DEVICE_AND_INTERFACE_INFO(SIERRA_VENDOR_ID, SIERRA_PRODUCT_EM9191, 0xff, 0, 0) }, |
|---|
| 2129 | 2197 | { } /* Terminating entry */ |
|---|
| 2130 | 2198 | }; |
|---|
| 2131 | 2199 | MODULE_DEVICE_TABLE(usb, option_ids); |
|---|
| .. | .. |
|---|
| 2151 | 2219 | .chars_in_buffer = usb_wwan_chars_in_buffer, |
|---|
| 2152 | 2220 | .tiocmget = usb_wwan_tiocmget, |
|---|
| 2153 | 2221 | .tiocmset = usb_wwan_tiocmset, |
|---|
| 2154 | | - .ioctl = usb_wwan_ioctl, |
|---|
| 2222 | + .get_serial = usb_wwan_get_serial_info, |
|---|
| 2223 | + .set_serial = usb_wwan_set_serial_info, |
|---|
| 2155 | 2224 | .attach = option_attach, |
|---|
| 2156 | 2225 | .release = option_release, |
|---|
| 2157 | 2226 | .port_probe = usb_wwan_port_probe, |
|---|
| .. | .. |
|---|
| 2264 | 2333 | dev_dbg(dev, "%s: urb %p port %p has data %p\n", __func__, urb, port, portdata); |
|---|
| 2265 | 2334 | |
|---|
| 2266 | 2335 | if (status == 0) { |
|---|
| 2267 | | - struct usb_ctrlrequest *req_pkt = |
|---|
| 2268 | | - (struct usb_ctrlrequest *)urb->transfer_buffer; |
|---|
| 2336 | + struct usb_ctrlrequest *req_pkt = urb->transfer_buffer; |
|---|
| 2269 | 2337 | |
|---|
| 2270 | 2338 | if (!req_pkt) { |
|---|
| 2271 | 2339 | dev_dbg(dev, "%s: NULL req_pkt\n", __func__); |
|---|