GPIO Services: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
|  Add permitted interrupts bitmask | No edit summary | ||
| Line 6: | Line 6: | ||
| !  Permitted interrupts bitmasks | !  Permitted interrupts bitmasks | ||
| |- | |- | ||
| | gpio:CDC | |||
| | 0x48 | |||
| |- | |- | ||
| | gpio:MCU | |||
| | 0x48020 | |||
| |- | |- | ||
| | gpio:HID | |||
| | 0x4301 | |||
| |- | |- | ||
| | gpio:NWM | |||
| | 0x40020 | |||
| |- | |- | ||
| | gpio:IR | |||
| | 0xEC0 | |||
| |- | |- | ||
| | gpio:NFC | |||
| | 0x13000 | |||
| |- | |- | ||
| | gpio:QTM | |||
| | 0x20000 | |||
| |} | |} | ||
Revision as of 11:28, 19 July 2016
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 |