Re: functionfs on dwc3, xhci host: endpoint cannot be used in both directions ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux