Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

usb: renesas: gadget: fixup: complete STATUS stage after receiving

Current usbhs gadget driver didn't complete STATUS stage after receiving.
It wasn't problem for us before, because some USB class doesn't use
DATA OUT stage in control transfer.
But, it is required on some device.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>

authored by

Kuninori Morimoto and committed by
Felipe Balbi
3fe15505 a9232076

+8
+8
drivers/usb/renesas_usbhs/fifo.c
··· 681 681 usbhs_pipe_number(pipe), 682 682 pkt->length, pkt->actual, *is_done, pkt->zero); 683 683 684 + /* 685 + * Transmission end 686 + */ 687 + if (*is_done) { 688 + if (usbhs_pipe_is_dcp(pipe)) 689 + usbhs_dcp_control_transfer_done(pipe); 690 + } 691 + 684 692 usbhs_fifo_read_busy: 685 693 usbhsf_fifo_unselect(pipe, fifo); 686 694