From 48e899d2d5d7adfccecbde5b75b7d8e7a1394af4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Tue, 21 Jan 2014 10:44:08 +0200 Subject: [PATCH] usbdebug: Fix data toggle on receive MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit USB device end toggles data PID when we ACK'd the zero-length data packet. As USB host we need to toggle data PID too or the next data received would get discarded. Change-Id: I3203bc874c7ded9244c7548a666d7041a0fbb379 Signed-off-by: Kyösti Mälkki Reviewed-on: http://review.coreboot.org/4775 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/drivers/usb/ehci_debug.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/drivers/usb/ehci_debug.c b/src/drivers/usb/ehci_debug.c index b28208df28..7413a8abd5 100644 --- a/src/drivers/usb/ehci_debug.c +++ b/src/drivers/usb/ehci_debug.c @@ -204,8 +204,7 @@ host_retry: /* If I get an ACK or in-sync DATA PID, we are done. */ if ((lpid == USB_PID_ACK) || (lpid == pipe->pid)) { - if (DBGP_LEN(rd_ctrl)) - pipe->pid ^= USB_PID_DATA_TOGGLE; + pipe->pid ^= USB_PID_DATA_TOGGLE; } /* If the port is getting full or it has dropped data