Hi Jack, On 8/30/2019 2:49 PM, Jack Mitchell wrote: > On 22/08/2019 17:06, Jack Mitchell wrote: >> I'm having issues on a Firefly rk3288 board when trying to use USB >> gadget ethernet on macOS. The dr_mode is set to "otg" and it works fine >> with my Linux desktop. >> >> If I set the dr_mode to "peripheral" macOS will work, but still takes >> around 10 seconds to enumerate the device which makes me think it's only >> just working. However, I need the port to be in "otg" mode as it will >> switch between peripheral/host use cases. >> >> I've attached a log from the dwc2 driver from mainline Linux 5.2 when >> being plugged into the macOS device for 30 seconds, then removed. The >> mac in this case is a 2013 macbook pro. Any pointers in the right >> direction would be greatly appreciated. >> >> Regards, >> Jack. >> Sorry, for late response. Could you please apply recently submitted patch "[PATCH] usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows" and test again. > > I've been poking about with this some more and I've managed to bisect > the issue down to the following commit > > 729cac693eecfebdb9e152eaddddd358ae2decb7 usb: dwc2: Change ISOC DDMA flow > > If I build before this commit everything works fine with a g_ether > gadget device on mac. Unfortunately it's a rather large change which I > can't just revert in master as it's got multiple dependant commits > later. So, any advice on what could be causing this or how to help debug > it would be much appreciated, as at the moment I've just forward ported > the working 4.16 version of the driver over the 5.3-rc6 broken driver > which isn't very sustainable in the long run. I don't think that issue root cause coming from mentioned by you above patch. Based on log you provided, SET_FEATURE control transfer not completed by gadget - ZLP on status stage not sent to host. > > Regards, > Jack. >