Changes

Jump to navigation Jump to search
767 bytes added ,  16:56, 20 November 2018
Line 422: Line 422:  
== CreateInterfaceAvailableEvent ==
 
== CreateInterfaceAvailableEvent ==
 
Takes an input u8 and returns an output handle.
 
Takes an input u8 and returns an output handle.
 +
 +
Value 0: when signaled, this indicates that the user-process should use [[#QueryAvailableInterfaces]] and [[#AcquireUsbIf]] with the output interfaces (and the rest of interface setup).
    
== DestroyInterfaceAvailableEvent ==
 
== DestroyInterfaceAvailableEvent ==
Line 428: Line 430:  
== GetInterfaceStateChangeEvent ==
 
== GetInterfaceStateChangeEvent ==
 
No input, returns an output event handle with autoclear disabled.
 
No input, returns an output event handle with autoclear disabled.
 +
 +
When signaled, this indicates that the user-process should use [[#QueryAcquiredInterfaces]] and cleanup state for interfaces which were already initialized.
    
== AcquireUsbIf ==
 
== AcquireUsbIf ==
Line 453: Line 457:  
| 5 || [[#CtrlXferAsync]] ||  
 
| 5 || [[#CtrlXferAsync]] ||  
 
|-
 
|-
| 6 || || No input, returns an output handle.
+
| 6 || || No input, returns an output handle. Signaled when [[#CtrlXferAsync]] finishes.
 
|-
 
|-
 
| 7 || [[#GetCtrlXferReport]] ||  
 
| 7 || [[#GetCtrlXferReport]] ||  
Line 461: Line 465:  
| 9 || [[#OpenUsbEp]] ||  
 
| 9 || [[#OpenUsbEp]] ||  
 
|}
 
|}
 +
 +
Official sw uses autoclear=false for the above events.
    
=== SetInterface ===
 
=== SetInterface ===
Line 503: Line 509:  
| 1 || [[#Close]] ||  
 
| 1 || [[#Close]] ||  
 
|-
 
|-
| 2 || || No input, returns an output handle.
+
| 2 || || No input, returns an output handle. Signaled when [[#PostBufferAsync_2|#PostBufferAsync]] finishes.
 
|-
 
|-
 
| 3 || [[#Populate]] ||  
 
| 3 || [[#Populate]] ||  
Line 517: Line 523:  
| 8 || [4.0.0+] ||  
 
| 8 || [4.0.0+] ||  
 
|}
 
|}
 +
 +
Official sw uses autoclear=false for the above event.
 +
 +
Immediately after opening the endpoint session, official sw uses [[#Populate]] and cmd2.
    
==== Open ====
 
==== Open ====
Line 523: Line 533:  
==== Close ====
 
==== Close ====
 
No input/output.
 
No input/output.
 +
 +
Used by official sw prior to closing the endpoint session.
    
==== Populate ====
 
==== Populate ====
 
No input/output.
 
No input/output.
 +
 +
Used after opening the endpoint session (see above).
    
==== PostBufferAsync ====
 
==== PostBufferAsync ====

Navigation menu