GPIO Services
Jump to navigation
Jump to search
GPIO Service Names
Service name | Permitted interrupts bitmasks |
---|---|
gpio:CDC | 0x48 |
gpio:MCU | 0x48020 |
gpio:HID | 0x4301 |
gpio:NWM | 0x40020 |
gpio:IR | 0xEC0 |
gpio:NFC | 0x13000 |
gpio:QTM | 0x20000 |
For the mapping between interrupts bitmasks and IRQs see: GPIO:BindInterrupt#Supported_values.
The commands for these services are identical.
CDC Service
Command Header | Description |
---|---|
0x00020080 | void unknown_0x2(u32 unk, u32 unk) |
0x00040080 | void unknown_0x4(u32 unk, u32 unk) |
0x00060080 | void unknown_0x6(u32 unk, u32 unk) |
0x00090082 | BindInterrupt |
HID Service
Command Header | Description |
---|---|
0x00020080 | void unknown_0x2(u32 unk, u32 unk) |
0x00040080 | void unknown_0x4(u32 unk, u32 unk) |
0x00060080 | void unknown_0x6(u32 unk, u32 unk) |
0x00070040 | u32 unknown_0x7(u32 unk). Parameter and return value might be some mask of the same kind? |
I2C Service
Command Header | Description |
---|---|
0x0001.... | ?(u32 unk1,u32* ret) //reads from 0x1ec47020 |
0x0002.... | ?(u32 unk1,u32 unk2) |
0x0003.... | ?(u32 unk1,u32* ret) |
0x0004.... | ?(u32 unk1,u32 unk2) |
0x0005.... | ?(u32 unk1,u32* ret) |
0x0006.... | ?(u32 unk1,u32 unk2) |
0x0007.... | GetIRGPIO(u32 unk1,u32* ret) |
0x0008.... | SetIRGPIO(u32 unk1,u32 unk2) |
0x00090082 | BindInterrupt |
0x000A0042 | UnbindInterrupt |