mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-04 18:19:28 +09:00
usb: cdc-acm: send zero packet for intel 7260 modem
commit ffdb1e369a upstream.
For Intel 7260 modem, it is needed for host side to send zero
packet if the BULK OUT size is equal to USB endpoint max packet
length. Otherwise, modem side may still wait for more data and
cannot give response to host side.
Signed-off-by: Konrad Leszczynski <konrad.leszczynski@intel.com>
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
858e9d4a22
commit
dde53ae3ad
@@ -1405,6 +1405,8 @@ made_compressed_probe:
|
||||
usb_sndbulkpipe(usb_dev, epwrite->bEndpointAddress),
|
||||
NULL, acm->writesize, acm_write_bulk, snd);
|
||||
snd->urb->transfer_flags |= URB_NO_TRANSFER_DMA_MAP;
|
||||
if (quirks & SEND_ZERO_PACKET)
|
||||
snd->urb->transfer_flags |= URB_ZERO_PACKET;
|
||||
snd->instance = acm;
|
||||
}
|
||||
|
||||
@@ -1862,6 +1864,10 @@ static const struct usb_device_id acm_ids[] = {
|
||||
{ USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ACM,
|
||||
USB_CDC_ACM_PROTO_AT_CDMA) },
|
||||
|
||||
{ USB_DEVICE(0x1519, 0x0452), /* Intel 7260 modem */
|
||||
.driver_info = SEND_ZERO_PACKET,
|
||||
},
|
||||
|
||||
{ }
|
||||
};
|
||||
|
||||
|
||||
@@ -134,3 +134,4 @@ struct acm {
|
||||
#define IGNORE_DEVICE BIT(5)
|
||||
#define QUIRK_CONTROL_LINE_STATE BIT(6)
|
||||
#define CLEAR_HALT_CONDITIONS BIT(7)
|
||||
#define SEND_ZERO_PACKET BIT(8)
|
||||
|
||||
Reference in New Issue
Block a user