]> git.baikalelectronics.ru Git - uboot.git/commit
dwc2 USB controller hangs with lan78xx
authorAndrew Thomas <andrew.thomas@oracle.com>
Mon, 18 Jun 2018 18:56:06 +0000 (11:56 -0700)
committerTom Rini <trini@konsulko.com>
Thu, 28 Jun 2018 02:21:25 +0000 (22:21 -0400)
commitb4393e5aa24c8a2da638a91246fff81079535578
tree959969d9e40776a9094755a8c030ea60e77fd1f0
parentd3861faebcf3f985854d1ced61ad309f9dea04f3
dwc2 USB controller hangs with lan78xx

This bug is the combination of dwc2 USB controller and lan78xx
USB ethernet controller, which is the combination in use on
the Raspberry Pi Model 3 B+.

When the host attempts to receive a packet, but a packet has not
arrived, the lan78xx controller responds by setting BIR
(Bulk-In Empty Response) to NAK. Unfortunately, this hangs
the USB controller and requires the USB controller to
be reset.

The fix proposed is to have the lan78xx controller respond
by setting BIR to ZLP.

Signed-off-by: Andrew Thomas <andrew.thomas@oracle.com>
Tested-by: Peter Robinson <pbrobinson@gmail.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
drivers/usb/eth/lan78xx.c