| .. | .. |
|---|
| 480 | 480 | |
|---|
| 481 | 481 | if (intfdata->use_zlp && dir == USB_DIR_OUT) |
|---|
| 482 | 482 | urb->transfer_flags |= URB_ZERO_PACKET; |
|---|
| 483 | + |
|---|
| 484 | +#if 1 //Added by Quectel for Zero Packet |
|---|
| 485 | + if (dir == USB_DIR_OUT) { |
|---|
| 486 | + if (serial->dev->descriptor.idVendor == cpu_to_le16(0x05C6) && serial->dev->descriptor.idProduct == cpu_to_le16(0x9090)) |
|---|
| 487 | + urb->transfer_flags |= URB_ZERO_PACKET; |
|---|
| 488 | + if (serial->dev->descriptor.idVendor == cpu_to_le16(0x05C6) && serial->dev->descriptor.idProduct == cpu_to_le16(0x9003)) |
|---|
| 489 | + urb->transfer_flags |= URB_ZERO_PACKET; |
|---|
| 490 | + if (serial->dev->descriptor.idVendor == cpu_to_le16(0x05C6) && serial->dev->descriptor.idProduct == cpu_to_le16(0x9215)) |
|---|
| 491 | + urb->transfer_flags |= URB_ZERO_PACKET; |
|---|
| 492 | + if (serial->dev->descriptor.idVendor == cpu_to_le16(0x2C7C)) |
|---|
| 493 | + urb->transfer_flags |= URB_ZERO_PACKET; |
|---|
| 494 | + } |
|---|
| 495 | +#endif |
|---|
| 483 | 496 | |
|---|
| 484 | 497 | return urb; |
|---|
| 485 | 498 | } |
|---|