Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP1:GA
u-boot-a20-olinuxino-lime.16979
0025-dwc2-USB-controller-hangs-with-lan7.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0025-dwc2-USB-controller-hangs-with-lan7.patch of Package u-boot-a20-olinuxino-lime.16979
From 073d4fbc048e5a7339e42369b3612be73f89c3cd Mon Sep 17 00:00:00 2001 From: Andrew Thomas <andrew.thomas@oracle.com> Date: Mon, 18 Jun 2018 11:56:06 -0700 Subject: [PATCH] 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> Signed-off-by: Alexander Graf <agraf@suse.de> --- drivers/usb/eth/lan78xx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/usb/eth/lan78xx.c b/drivers/usb/eth/lan78xx.c index d1e61c32da..11431381cb 100644 --- a/drivers/usb/eth/lan78xx.c +++ b/drivers/usb/eth/lan78xx.c @@ -297,7 +297,7 @@ static int lan78xx_basic_reset(struct usb_device *udev, ret = lan7x_read_reg(udev, LAN78XX_USB_CFG0, &val); if (ret) return ret; - val |= LAN78XX_USB_CFG0_BIR; + val &= ~LAN78XX_USB_CFG0_BIR; return lan7x_write_reg(udev, LAN78XX_USB_CFG0, val); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor