Changes

Jump to navigation Jump to search
177 bytes added ,  05:15, 22 November 2018
→‎OpenUsbEp: Debug print names.
Line 498: Line 498:  
Takes an input u16 and 4 input u32s, returns a 0x7-byte output struct and an [[#IClientEpSession]].
 
Takes an input u16 and 4 input u32s, returns a 0x7-byte output struct and an [[#IClientEpSession]].
   −
The user-process loads the input params from the endpoint descriptor. The u16 is '''unk'''. However, audio-sysmodule passes hard-coded values for wMaxPacketSize, including 0.
+
The u16 is '''maxUrbCount'''. The u32s are: '''epType''', '''epNumber''', '''epDirection''', and '''maxXferSize'''.
   −
The u32s are: '''libusb_transfer_type+1''', '''epNumber''', '''epDirection''', and '''wMaxPacketSize'''.
+
The user-process loads the input params from the endpoint descriptor. HID-sysmodule sets '''maxXferSize''' to wMaxPacketSize from the endpoint descriptor. However, other sysmodules pass hard-coded values for '''maxXferSize''', including 0.
   −
HID-sysmodule passes hard-coded value 0x1 for '''unk''', for bsd-sysmodule this is 0x2. For audio-sysmodule, this is 0x0, 0x3, or 0x6.
+
HID-sysmodule passes hard-coded value 0x1 for '''maxUrbCount''', for bsd-sysmodule this is 0x2. For audio-sysmodule, this is 0x0 (used when passing '''maxXferSize'''=0), 0x3, or 0x6.
   −
'''epNumber''' is <code>bEndpointAddress & LIBUSB_ENDPOINT_ADDRESS_MASK</code>. '''epDirection''' is 0x1 for LIBUSB_ENDPOINT_OUT, and 0x2 for LIBUSB_ENDPOINT_IN.
+
'''epType''' is <code>libusb_transfer_type+1</code>. '''epNumber''' is <code>bEndpointAddress & LIBUSB_ENDPOINT_ADDRESS_MASK</code>. '''epDirection''' is 0x1 for LIBUSB_ENDPOINT_OUT, and 0x2 for LIBUSB_ENDPOINT_IN.
    
=== IClientEpSession ===
 
=== IClientEpSession ===

Navigation menu