PCIe services: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
| (7 intermediate revisions by 2 users not shown) | |||
| Line 8: | Line 8: | ||
| 0 || [[#RegisterClassDriver]] | | 0 || [[#RegisterClassDriver]] | ||
|- | |- | ||
| 1 || [[# | | 1 || [[#QueryFunctionsUnregistered]] | ||
|} | |} | ||
| Line 16: | Line 16: | ||
Returns an event handle and session handle to a [[#ISession]]. | Returns an event handle and session handle to a [[#ISession]]. | ||
== | == QueryFunctionsUnregistered == | ||
Takes a type-6 buffer. | Takes a type-6 buffer. | ||
| Line 54: | Line 54: | ||
| 12 || UnmapDma | | 12 || UnmapDma | ||
|- | |- | ||
| 13 || | | 13 || UnmapDmaBusAddress | ||
|- | |- | ||
| 14 || GetDmaBusAddress | | 14 || GetDmaBusAddress | ||
| Line 69: | Line 69: | ||
|- | |- | ||
| 20 || SetAspmEnable | | 20 || SetAspmEnable | ||
|- | |||
| 21 || [3.0.0+] | |||
|- | |||
| 22 || [4.0.0+] | |||
|- | |||
| 23 || [7.0.0+] | |||
|} | |||
[5.0.0+] The buffer types for ReadBarRegion/WriteBarRegion were changed: 0x6 changed to 0x22, and 0x5 changed to 0x21. | |||
[7.0.0+] AcquireIrq now takes an additional 4-bytes of input, and no longer returns an output handle. SetAspmEnable now returns an output handle. | |||
= pcie:log = | |||
This was added with [6.0.0+]. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || | |||
|- | |||
| 1 || | |||
|} | |} | ||
[[Category:Services]] | [[Category:Services]] | ||
Revision as of 01:13, 15 May 2019
pcie
This is "nn::pcie::detail::IManager".
| Cmd | Name |
|---|---|
| 0 | #RegisterClassDriver |
| 1 | #QueryFunctionsUnregistered |
RegisterClassDriver
Takes the current process handle (0xFFFF8001).
Returns an event handle and session handle to a #ISession.
QueryFunctionsUnregistered
Takes a type-6 buffer.
Returns a list of connected PCIe endpoint devices.
ISession
This is "nn::pcie::detail::ISession".
| Cmd | Name |
|---|---|
| 0 | QueryFunctions |
| 1 | AcquireFunction |
| 2 | ReleaseFunction |
| 3 | GetFunctionState |
| 4 | GetBarProfile |
| 5 | ReadConfig |
| 6 | WriteConfig |
| 7 | ReadBarRegion |
| 8 | WriteBarRegion |
| 9 | FindCapability |
| 10 | FindExtendedCapability |
| 11 | MapDma |
| 12 | UnmapDma |
| 13 | UnmapDmaBusAddress |
| 14 | GetDmaBusAddress |
| 15 | GetDmaBusAddressRange |
| 16 | SetDmaEnable |
| 17 | AcquireIrq |
| 18 | ReleaseIrq |
| 19 | SetIrqEnable |
| 20 | SetAspmEnable |
| 21 | [3.0.0+] |
| 22 | [4.0.0+] |
| 23 | [7.0.0+] |
[5.0.0+] The buffer types for ReadBarRegion/WriteBarRegion were changed: 0x6 changed to 0x22, and 0x5 changed to 0x21.
[7.0.0+] AcquireIrq now takes an additional 4-bytes of input, and no longer returns an output handle. SetAspmEnable now returns an output handle.
pcie:log
This was added with [6.0.0+].
| Cmd | Name |
|---|---|
| 0 | |
| 1 |