Hello,
Using configfs and functionfs I configured a 3-endpoints gadget the
following way:
- OUT f_fs ep: 1 real ep: 1 | OUT (0x01)
- IN f_fs ep: 2 real ep: 1 | IN (0x81)
- IN f_fs ep: 3 real ep: 2 | IN (0x82)
When connected to host:
- Real ep 0x01 works.
- Real ep 0x81 is silent (all URBs timeout).
- Real ep 0x82 works.
Plugging my usb analyser, I see no bus activity at all for the last
one, though I do see transactions for the others. I also see this
message on host:
Jan 15 09:52:30 localhost kernel: [232403.009744] xhci_hcd 0000:00:14.0: WARN
Event TRB for slot 24 ep 4 with no TDs queued?
Would xhci_hcd (or the HCD itlsef ?) fail when a single endpoint works
in both directions ?
"ep 4" seems to be an endpoint offset, which may be consistent with EP1
IN being the 4th endpoint:
EP0 OUT, EP0 IN, EP1 OUT, EP1 IN
$ uname -a
Linux x2 4.8.0-2-amd64 #1 SMP Debian 4.8.11-1 (2016-12-02) x86_64 GNU/Linux
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI
Controller (rev 31)
Subsystem: ASRock Incorporation Sunrise Point-H USB 3.0 xHCI Controller
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci
Regards,
--
Vincent Pelletier
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html