Hello, On Tue, 24 Jan 2017 11:02:10 +0200, Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> wrote: > that's correct. Maybe I should always set bulk capability. Thanks for > catching that, I'll send v2 shortly. I just tested v2 from your branch, but the original "else" contains several inits which are now skipped for IN endpoints, making them unavailable and causing a NULL pointer dereference in dwc3_ep_trb_ring_show. Replacing the original usb_ep_set_maxpacket_limit call with: int size; if (direction) { ... size /= num; } else { size = 1024; } usb_ep_set_maxpacket_limit(&dep->endpoint, size); seems to do the trick. Also, I noticed there are two (consistent) macros to extract MDWIDTH, each used once: core.h:#define DWC3_GHWPARAMS0_MDWIDTH(n) (((n) >> 8) & 0xff) core.h:#define DWC3_MDWIDTH(n) (((n) & 0xff00) >> 8) Neither a bug nor new, but I thought I should mention it. Regards, -- Vincent Pelletier
Attachment:
pgp9dcWZ9ei84.pgp
Description: Signature digitale OpenPGP