Bus services: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
thx BotW |
||
Line 4: | Line 4: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || OpenSessionForDev | | 0 || [[#OpenSessionForDev]] | ||
|- | |- | ||
| 1 || [[#OpenSession]] | | 1 || [[#OpenSession]] | ||
Line 18: | Line 18: | ||
| 6 || | | 6 || | ||
|} | |} | ||
== OpenSessionForDev == | |||
Takes a raw GpioPadDescriptor and returns a [[#IPadSession]] session for it. | |||
== OpenSession == | == OpenSession == | ||
Same thing as OpenSessionForDev except the descriptor is looked up in | Same thing as OpenSessionForDev except the descriptor is looked up in the table below. | ||
Returns an [[#IPadSession]] session. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 45: | Line 49: | ||
== OpenSessionForTest == | == OpenSessionForTest == | ||
Same as [[#OpenSession]] but panics on failure. | Same as [[#OpenSession]] but panics on failure. | ||
== IPadSession == | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || SetDirection | |||
|- | |||
| 1 || GetDirection | |||
|- | |||
| 2 || SetInterruptMode | |||
|- | |||
| 3 || GetInterruptMode | |||
|- | |||
| 4 || SetInterruptEnable | |||
|- | |||
| 5 || GetInterruptEnable | |||
|- | |||
| 6 || GetInterruptStatus | |||
|- | |||
| 7 || ClearInterruptStatus | |||
|- | |||
| 8 || SetValue | |||
|- | |||
| 9 || GetValue | |||
|- | |||
| 10 || BindInterrupt | |||
|- | |||
| 11 || UnbindInterrupt | |||
|- | |||
| 12 || SetDebounceEnabled | |||
|- | |||
| 13 || GetDebounceEnabled | |||
|- | |||
| 14 || SetDebounceTime | |||
|- | |||
| 15 || GetDebounceTime | |||
|} | |||
== GpioPadDescriptor == | == GpioPadDescriptor == |
Revision as of 19:14, 2 July 2017
gpio
Cmd | Name |
---|---|
0 | #OpenSessionForDev |
1 | #OpenSession |
2 | #OpenSessionForTest |
3 | IsWakeEventActive |
4 | GetWakeEventActiveFlagSet |
5 | SetWakeEventActiveFlagSetForDebug |
6 |
OpenSessionForDev
Takes a raw GpioPadDescriptor and returns a #IPadSession session for it.
OpenSession
Same thing as OpenSessionForDev except the descriptor is looked up in the table below. Returns an #IPadSession session.
GpioPadName | GpioPadDescriptor |
---|---|
2 | 0x24 |
4 | 0xDA |
5 | 0xDB |
6 | 0xDC |
7 | 0x25 |
8 | 0x90 |
9 | 0x91 |
.. | .. |
OpenSessionForTest
Same as #OpenSession but panics on failure.
IPadSession
Cmd | Name |
---|---|
0 | SetDirection |
1 | GetDirection |
2 | SetInterruptMode |
3 | GetInterruptMode |
4 | SetInterruptEnable |
5 | GetInterruptEnable |
6 | GetInterruptStatus |
7 | ClearInterruptStatus |
8 | SetValue |
9 | GetValue |
10 | BindInterrupt |
11 | UnbindInterrupt |
12 | SetDebounceEnabled |
13 | GetDebounceEnabled |
14 | SetDebounceTime |
15 | GetDebounceTime |
GpioPadDescriptor
Bits | Description |
---|---|
7-5 | Controller index |
4-3 | Port index |
2-0 | Pin number |
i2c
Cmd | Name | Notes |
---|---|---|
0 | Black screen hang. | |
1 | Takes a word. Returns a session handle. | |
2 | Returns a u8/bool. | |
3 | Black screen hang. |
i2c:pcv
uart
Cmd | Name | Notes |
---|---|---|
0 | Returns a u8/bool. | |
1 | Returns a u8/bool. | |
2 | Returns a u8/bool. | |
3 | Returns a u8/bool. | |
4 | Takes marshalled arguments. | |
5 | Takes marshalled arguments. | |
6 | Returns a handle to an IPC session #IUartSubinterface. |
IUartSubinterface
Cmd | Name | Notes |
---|---|---|
0 | Takes marshalled arguments | |
1 | Takes marshalled arguments | |
2 | ||
3 | Takes marshalled arguments | |
4 | Returns 2x u64. Both zero. |