USB services: Difference between revisions

No edit summary
Line 610: Line 610:
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! Cmd || Name || Notes
! Cmd || Name
|-
|-
| 0 || [[#Open]] ([1.0.0] [[#SubmitOutRequest]]) ||
| 0 || [[#Open]] ([1.0.0] [[#SubmitOutRequest]])
|-
|-
| 1 || [[#Close]] ([1.0.0] [[#SubmitInRequest]]) ||
| 1 || [[#Close]] ([1.0.0] [[#SubmitInRequest]])
|-
|-
| 2 || || No input, returns an output handle. Signaled when [[#PostBufferAsync_2|#PostBufferAsync]] finishes. ([1.0.0] [[#Open]])
| 2 ||
|-
|-
| 3 || [[#Populate]] ([1.0.0] [[#Close]]) ||
| 3 || [[#Populate]] ([1.0.0] [[#Close]])
|-
|-
| [2.0.0+] 4 || [[#PostBufferAsync_2|#PostBufferAsync]] ||
| [2.0.0+] 4 || [[#PostBufferAsync_2|#PostBufferAsync]]
|-
|-
| [2.0.0+] 5 || [[#GetXferReport]] ||
| [2.0.0+] 5 || [[#GetXferReport]]
|-
|-
| [2.0.0+] 6 || [[#PostBufferMultiAsync]] ||
| [2.0.0+] 6 || [[#PostBufferMultiAsync]]
|-
|-
| [4.0.0+] 7 || || Takes a total of 0x10-bytes of input, no output.
| [4.0.0+] 7 ||
|-
|-
| [4.0.0+] 8 || || Takes a total of 0x4-bytes of input and an input handle, no output.
| [4.0.0+] 8 ||
|}
|}


Line 656: Line 656:


Used by official sw prior to closing the endpoint session.
Used by official sw prior to closing the endpoint session.
==== Cmd2 ====
No input, returns an output handle. Signaled when [[#PostBufferAsync_2|#PostBufferAsync]] finishes. ([1.0.0] [[#Open]])


==== Populate ====
==== Populate ====
Line 684: Line 687:


This uses the same func internally as [[#PostBufferAsync_2|#PostBufferAsync]] except multiple urbs are specified by the user: the input buffer contains an array of u32s for the size of each urb, where '''urbCount''' is the total number of entries in this array. With [[#PostBufferAsync_2|#PostBufferAsync]] the last 2 params passed to the internal func are hard-coded to 0, while with this command it's '''unk1''' and '''unk2'''.
This uses the same func internally as [[#PostBufferAsync_2|#PostBufferAsync]] except multiple urbs are specified by the user: the input buffer contains an array of u32s for the size of each urb, where '''urbCount''' is the total number of entries in this array. With [[#PostBufferAsync_2|#PostBufferAsync]] the last 2 params passed to the internal func are hard-coded to 0, while with this command it's '''unk1''' and '''unk2'''.
==== Cmd7 ====
Takes a total of 0x10-bytes of input, no output.
==== Cmd8 ====
Takes a total of 0x4-bytes of input and an input handle, no output.


= usb:pd =
= usb:pd =