NV services: Difference between revisions
→NVMAP_IOC_FREE: Fix incorrect comment about flags |
No edit summary |
||
Line 273: | Line 273: | ||
| 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]] | | 0xC004001C || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT]] | ||
|- | |- | ||
| 0xC010001D || Inout || 16 || [[# | | 0xC010001D || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT]] | ||
|- | |- | ||
| 0xC010001E || Inout || 16 || [[# | | 0xC010001E || Inout || 16 || [[#NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE]] | ||
|- | |- | ||
| 0xC004001F || Inout || 4 || [[# | | 0xC004001F || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT]] | ||
|- | |- | ||
| 0xC0040020 || Inout || 4 || [[# | | 0xC0040020 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT]] | ||
|- | |- | ||
| 0x40080021 || In || 8 || [[# | | 0x40080021 || In || 8 || [[#NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH]] | ||
|- | |- | ||
| 0xC0040022 || Inout || 4 || [[# | | 0xC0040022 || Inout || 4 || [[#NVHOST_IOCTL_CTRL_SYNCPT_GET_MAX_EVENT_FIFO_CHANNEL]] | ||
|} | |} | ||
Line 352: | Line 352: | ||
struct { | struct { | ||
__in char | __in char name[0x41]; // "nv" | ||
__in char | __in char key[0x41]; | ||
__out char | __out char value[0x101]; | ||
}; | }; | ||
=== NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT === | === NVHOST_IOCTL_CTRL_SYNCPT_CLEAR_EVENT_WAIT === | ||
Clears the wait signal of | Clears the wait signal of a syncpt event. | ||
struct { | struct { | ||
__in u32 | __in u32 event_id; // 0x00 to 0x3F | ||
}; | }; | ||
=== | === NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT === | ||
Waits on | Waits on a syncpt using events. If waiting fails, returns error code 0x05 (Timeout) and sets '''value''' to (((('''id''' & 0xFFF) << 0x10) | 0x10000000) | '''event_id'''). | ||
struct { | struct { | ||
__in | __in u32 id; | ||
__in | __in u32 thresh; | ||
__in | __in s32 timeout; | ||
__out u32 value; | |||
}; | }; | ||
=== | === NVHOST_IOCTL_CTRL_SYNCPT_WAIT_EVENT_SINGLE === | ||
Waits on | Waits on a syncpt using a specific event. If waiting fails, returns error code 0x05 (Timeout) and sets '''value''' to (('''id''' * 0x10) | '''event_id'''). | ||
struct { | struct { | ||
__in u32 | __in u32 id; | ||
__in u32 | __in u32 thresh; | ||
__in | __in s32 timeout; | ||
__inout u32 value; // in= | __inout u32 value; // in=event_id; out=syncpt_value | ||
}; | }; | ||
=== | === NVHOST_IOCTL_CTRL_SYNCPT_ALLOC_EVENT === | ||
Allocates a new syncpt event. | |||
struct { | struct { | ||
__in u32 | __in u32 event_id; // 0x00 to 0x3F | ||
}; | }; | ||
=== | === NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT === | ||
Frees an existing syncpt event. | |||
struct { | struct { | ||
__in u32 | __in u32 event_id; // 0x00 to 0x3F | ||
}; | }; | ||
=== | === NVHOST_IOCTL_CTRL_SYNCPT_FREE_EVENT_BATCH === | ||
Frees events | Frees multiple syncpt events. | ||
struct { | struct { | ||
__in u64 | __in u64 event_id_mask; // 64-bit bitfield where each bit represents one event | ||
}; | }; | ||
=== | === NVHOST_IOCTL_CTRL_SYNCPT_GET_MAX_EVENT_FIFO_CHANNEL === | ||
If event FIFO is enabled, returns the maximum channel number | If event FIFO is enabled, returns the maximum channel number. | ||
struct { | struct { |