usb: usb_bam: Check null callback pointer before call

When BAM IRQ fires to wake up system from power collapse,
usb_bam_work is called.
If bus resume occurs before usb_bam_work is scheduled,
bam_data_resume will set the callback to NULL.
This change prevents call of null pointer callback.

CRs-Fixed: 480707
Change-Id: I8d2bca7059c4006a0dd84d35dfb592d4caaf5a63
Signed-off-by: Amit Blay <ablay@codeaurora.org>
usb: gadget: Allow transfer of large packets over SMD

This fix solve an issue where QMI packets larger than
1024 bytes over SMD were ignored. This fix allows the
driver to read large packets in multiple smd_read calls
before sending them over USB to the host.

Change-Id: Ie2f7ffb798dc82b62eb90f8e12757012d6212c22
CRs-Fixed: 484688
Signed-off-by: Bar Weiner <bweiner@codeaurora.org>
usb: gadget: Add remote wakeup support to f_qc_ecm

On USB suspend, f_qc_ecm will register for BAM wakeup notification.
Upon wakeup event from the BAM, the u_bam_data will trigger a USB
remote wakeup.

Change-Id: I8a12030a9b9e5aeb584617280341ab4a6170adcb
Signed-off-by: Lena Salman <esalman@codeaurora.org>
Signed-off-by: Amit Blay <ablay@codeaurora.org>
Merge "usb: gadget: Add remote wakeup support to f_qc_ecm"
Merge "usb: usb_bam: Check null callback pointer before call"
Merge "usb: gadget: Allow transfer of large packets over SMD"