Difference between revisions of "NV services"

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 2: Line 2:
  
 
= nvdrv:a =
 
= nvdrv:a =
 +
Main NVIDIA driver service.
 +
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 18: Line 20:
 
| 5 || MapSharedMem
 
| 5 || MapSharedMem
 
|-
 
|-
| 6 ||
+
| 6 || ?
 
|-
 
|-
| 7 ||
+
| 7 || ?
 
|-
 
|-
 
| 8 || Audio render related init?
 
| 8 || Audio render related init?
Line 38: Line 40:
 
! Device || Value || Description || Notes
 
! Device || Value || Description || Notes
 
|-
 
|-
| /dev/nvhost-* || 0xC0??0001 || NVHOST32_IOCTL_CHANNEL_SUBMIT || ?? == size is unknown
+
| /dev/nvhost-* || 0xC0??0001 || NVHOST32_IOCTL_CHANNEL_SUBMIT || ?? == size is variable
 
|-
 
|-
 
| /dev/nvhost-* || 0xC0080002 || NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ||
 
| /dev/nvhost-* || 0xC0080002 || NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT ||
Line 46: Line 48:
 
| /dev/nvhost-* || 0xC0080004 || NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ||
 
| /dev/nvhost-* || 0xC0080004 || NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX ||
 
|-
 
|-
| /dev/nvhost-* || 0xC01C0009 || NVHOST_IOCTL_CHANNEL_SUBMIT(?) ||
+
| /dev/nvhost-* || 0xC0??0009 || NVHOST_IOCTL_CHANNEL_MAP_BUFFER || ?? == size is variable
 
|-
 
|-
| /dev/nvhost-* || 0xC01C000A || NVHOST_IOCTL_CHANNEL_MODULE_REGRDWR(?) ||
+
| /dev/nvhost-* || 0xC0??000A || NVHOST_IOCTL_CHANNEL_UNMAP_BUFFER || ?? == size is variable
 
|-
 
|-
| /dev/nvhost-* || 0xC0080014 || NVHOST_IOCTL_CTRL_SYNCPT_READ ||
+
| /dev/nvhost-ctrl || 0xC0080014 || NVHOST_IOCTL_CTRL_SYNCPT_READ ||
 
|-
 
|-
| /dev/nvhost-* || 0x40040015 || NVHOST_IOCTL_CTRL_SYNCPT_INCR ||
+
| /dev/nvhost-ctrl || 0x40040015 || NVHOST_IOCTL_CTRL_SYNCPT_INCR ||
 
|-
 
|-
| /dev/nvhost-* || 0xC00C0016 || NVHOST_IOCTL_CTRL_SYNCPT_WAIT ||
+
| /dev/nvhost-ctrl || 0xC00C0016 || NVHOST_IOCTL_CTRL_SYNCPT_WAIT ||
 
|-
 
|-
| /dev/nvhost-* || 0x40080017 || NVHOST_IOCTL_CTRL_MODULE_MUTEX ||
+
| /dev/nvhost-ctrl || 0x40080017 || NVHOST_IOCTL_CTRL_MODULE_MUTEX ||
 
|-
 
|-
| /dev/nvhost-* || 0xC0180018 || NVHOST32_IOCTL_CTRL_MODULE_REGRDWR ||
+
| /dev/nvhost-ctrl || 0xC0180018 || NVHOST32_IOCTL_CTRL_MODULE_REGRDWR ||
 
|-
 
|-
| /dev/nvhost-* || 0xC0100019 || NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ||
+
| /dev/nvhost-ctrl || 0xC0100019 || NVHOST_IOCTL_CTRL_SYNCPT_WAITEX ||
 
|-
 
|-
| /dev/nvhost-* || 0xC008001A || NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ||
+
| /dev/nvhost-ctrl || 0xC008001A || NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX ||
 
|-
 
|-
| /dev/nvhost-* || 0xC004001C || NVHOST_IOCTL_CTRL_GET_VERSION(?) ||
+
| /dev/nvhost-ctrl || 0xC004001C || ||
 
|-
 
|-
| /dev/nvhost-* || 0xC010001D || || NvRmSyncWaitEvent (wait on event?)
+
| /dev/nvhost-ctrl || 0xC010001D || || NvRmSyncWaitEvent (wait on event?)
 
|-
 
|-
| /dev/nvhost-* || 0xC010001E || || NvRmSyncWaitEvent (wait on event?)
+
| /dev/nvhost-ctrl || 0xC010001E || || NvRmSyncWaitEvent (wait on event?)
 
|-
 
|-
| /dev/nvhost-* || 0xC004001F || || NvRmSyncWaitEvent (signal event?)
+
| /dev/nvhost-ctrl || 0xC004001F || || NvRmSyncWaitEvent (signal event?)
 
|-
 
|-
| /dev/nvhost-* || 0xC0040020 || || NvRmSyncWaitEvent (signal event?)
+
| /dev/nvhost-ctrl || 0xC0040020 || || NvRmSyncWaitEvent (signal event?)
 
|-
 
|-
| /dev/nvhost-* || 0x40080021 || || Returns busy?
+
| /dev/nvhost-ctrl || 0x40080021 || cancel_wait_event || Cancels all events
 
|-
 
|-
 
| /dev/nvmap || 0xC0080101 || NVMAP_IOC_CREATE ||
 
| /dev/nvmap || 0xC0080101 || NVMAP_IOC_CREATE ||
 +
|-
 +
| /dev/nvmap || 0x00000102 || || Returns NVERROR 0x02 (not supported)
 
|-
 
|-
 
| /dev/nvmap || 0xC0080103 || NVMAP_IOC_FROM_ID ||
 
| /dev/nvmap || 0xC0080103 || NVMAP_IOC_FROM_ID ||
Line 83: Line 87:
 
|-
 
|-
 
| /dev/nvmap || 0xC0180105 || NVMAP_IOC_FREE ||
 
| /dev/nvmap || 0xC0180105 || NVMAP_IOC_FREE ||
 +
|-
 +
| /dev/nvmap || 0xC0280106 || NVMAP_IOC_MMAP? || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0xC0280107 || NVMAP_IOC_WRITE? || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0xC0280108 || NVMAP_IOC_READ? || Returns NVERROR 0x02 (not supported)
 
|-
 
|-
 
| /dev/nvmap || 0xC00C0109 || NVMAP_IOC_PARAM ||
 
| /dev/nvmap || 0xC00C0109 || NVMAP_IOC_PARAM ||
 +
|-
 +
| /dev/nvmap || 0xC010010A || NVMAP_IOC_PIN_MULT? || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0xC010010B || NVMAP_IOC_UNPIN_MULT? || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0xC008010C || NVMAP_IOC_CACHE? || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0xC004010D || || Returns NVERROR 0x02 (not supported)
 
|-
 
|-
 
| /dev/nvmap || 0xC008010E || NVMAP_IOC_GET_ID ||
 
| /dev/nvmap || 0xC008010E || NVMAP_IOC_GET_ID ||
 +
|-
 +
| /dev/nvmap || 0xC004010F || || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0x40040110 || || Returns NVERROR 0x02 (not supported)
 +
|-
 +
| /dev/nvmap || 0x00000111 || || Returns NVERROR 0x02 (not supported)
 
|-
 
|-
 
| /dev/nvhost-as-gpu || 0x40044101 || NVGPU_AS_IOCTL_BIND_CHANNEL ||
 
| /dev/nvhost-as-gpu || 0x40044101 || NVGPU_AS_IOCTL_BIND_CHANNEL ||
 
|-
 
|-
| /dev/nvhost-as-gpu || 0xC0184102 || NVGPU32_AS_IOCTL_ALLOC_SPACE ||
+
| /dev/nvhost-as-gpu || 0xC0184102 || NVGPU_AS_IOCTL_ALLOC_SPACE ||
 
|-
 
|-
 
| /dev/nvhost-as-gpu || 0xC0104103 || NVGPU_AS_IOCTL_FREE_SPACE ||
 
| /dev/nvhost-as-gpu || 0xC0104103 || NVGPU_AS_IOCTL_FREE_SPACE ||
Line 98: Line 122:
 
| /dev/nvhost-as-gpu || 0xC0084105 || NVGPU_AS_IOCTL_UNMAP_BUFFER ||
 
| /dev/nvhost-as-gpu || 0xC0084105 || NVGPU_AS_IOCTL_UNMAP_BUFFER ||
 
|-
 
|-
| /dev/nvhost-as-gpu || 0xC0284106 || NVGPU_AS_IOCTL_ALLOC_SPACE ||
+
| /dev/nvhost-as-gpu || 0xC0284106 || NVGPU_AS_IOCTL_MAP_BUFFER_EX ||
 
|-
 
|-
| /dev/nvhost-as-gpu || 0x40104107 || ||
+
| /dev/nvhost-as-gpu || 0x40104107 || init_as_gpu || Initializes the as-gpu node
 
|-
 
|-
| /dev/nvhost-as-gpu || 0xC0404108 || ||
+
| /dev/nvhost-as-gpu || 0xC0404108 || NVGPU_AS_IOCTL_GET_VA_REGIONS? ||
 
|-
 
|-
| /dev/nvhost-as-gpu || 0x40284109 || ||
+
| /dev/nvhost-as-gpu || 0x40284109 || init_as_gpu_ex || Initializes the as-gpu node (with more params)
 
|-
 
|-
 
| /dev/nvhost-as-gpu || 0xC0144114 || ||
 
| /dev/nvhost-as-gpu || 0xC0144114 || ||
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0x40084401 || NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL ||
 
|-
 
|-
 
| /dev/nvhost-dbg-gpu || 0xC0??4402 || NVGPU_DBG_GPU_IOCTL_REG_OPS || ?? == size is unknown
 
| /dev/nvhost-dbg-gpu || 0xC0??4402 || NVGPU_DBG_GPU_IOCTL_REG_OPS || ?? == size is unknown
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0x40084403 || NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL ||
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0x40044404 || NVGPU_DBG_GPU_IOCTL_POWERGATE ||
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0x40044405 || NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE ||
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0xC0184407 || NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP ||
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0x40084408 || NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP ||
 +
|-
 +
| /dev/nvhost-dbg-gpu || 0x40084409 || NVGPU_DBG_GPU_IOCTL_PC_SAMPLING ||
 
|-
 
|-
 
| /dev/nvhost-ctrl-gpu || 0x80044701 || NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ||
 
| /dev/nvhost-ctrl-gpu || 0x80044701 || NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE ||
Line 120: Line 158:
 
| /dev/nvhost-ctrl-gpu || 0xC0B04705 || NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ||
 
| /dev/nvhost-ctrl-gpu || 0xC0B04705 || NVGPU_GPU_IOCTL_GET_CHARACTERISTICS ||
 
|-
 
|-
| /dev/nvhost-ctrl-gpu || 0xC0184706 || NVGPU_AS_IOCTL_ALLOC_SPACE ||
+
| /dev/nvhost-ctrl-gpu || 0xC0184706 || NVGPU_GPU_IOCTL_GET_TPC_MASKS ||
 
|-
 
|-
| /dev/nvhost-ctrl-gpu || 0x40084707 || ||
+
| /dev/nvhost-ctrl-gpu || 0x40084707 || NVGPU_GPU_IOCTL_OPEN_CHANNEL ||
 
|-
 
|-
 
| /dev/nvhost-ctrl-gpu || 0x4008470E || ||
 
| /dev/nvhost-ctrl-gpu || 0x4008470E || ||
Line 131: Line 169:
 
|-
 
|-
 
| /dev/nvhost-ctrl-gpu || 0x80084711 || ||
 
| /dev/nvhost-ctrl-gpu || 0x80084711 || ||
 +
|-
 +
| /dev/nvhost-ctrl-gpu || 0x80084712 || ||
 +
|-
 +
| /dev/nvhost-ctrl-gpu || 0xC0044713 || ||
 
|-
 
|-
 
| /dev/nvhost-ctrl-gpu || 0x80084714 || ||
 
| /dev/nvhost-ctrl-gpu || 0x80084714 || ||
 +
|-
 +
| /dev/nvhost-ctrl-gpu || 0x80044715 || ||
 
|-
 
|-
 
| /dev/nvhost-ctrl-gpu || 0xC008471B || ||
 
| /dev/nvhost-ctrl-gpu || 0xC008471B || ||
Line 140: Line 184:
 
| /dev/nvhost-* || 0x40044801 || NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ||
 
| /dev/nvhost-* || 0x40044801 || NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD ||
 
|-
 
|-
| /dev/nvhost-* || 0x40044803 || NVGPU_IOCTL_CHANNEL_SET_TIMEOUT(?) ||
+
| /dev/nvhost-* || 0x40044803 || NVGPU_IOCTL_CHANNEL_SET_PRIORITY ||
 
|-
 
|-
| /dev/nvhost-* || 0x40084805 || NVGPU_IOCTL_CHANNEL_SET_TIMEOUT_EX(?) ||
+
| /dev/nvhost-* || 0x40084805 || NVGPU_IOCTL_CHANNEL_SET_TIMEOUT_EX? ||
 
|-
 
|-
 
| /dev/nvhost-* || 0xC0044807 || NVGPU_IOCTL_CHANNEL_CYCLE_STATS ||
 
| /dev/nvhost-* || 0xC0044807 || NVGPU_IOCTL_CHANNEL_CYCLE_STATS ||
Line 174: Line 218:
 
| /dev/nvhost-* || 0xC0104817 || ||
 
| /dev/nvhost-* || 0xC0104817 || ||
 
|-
 
|-
| /dev/nvhost-* || 0x40204818 || ||
+
| /dev/nvhost-* || 0x40204818 || alloc_gpfifo? ||
 +
|-
 +
| /dev/nvhost-* || 0xC0484819 || ||
 +
|-
 +
| /dev/nvhost-* || 0xC020481A || alloc_gpfifo_ex? ||
 +
|}
 +
 
 +
= nvmemp =
 +
NVIDIA memory profiler (this service is not available on retail units).
 +
 
 +
= mm:u =
 +
NVIDIA multimedia (NvMM) platform service.
 +
 
 +
{| class="wikitable" border="1"
 +
|-
 +
! Cmd || Name
 +
|-
 +
| 0 || ?
 +
|-
 +
| 1 || ?
 +
|-
 +
| 2 || ?
 +
|-
 +
| 3 || ?
 +
|-
 +
| 4 || module_init_clk
 +
|-
 +
| 5 || module_deinit_clk
 
|-
 
|-
| /dev/nvhost-* || 0xC0184819 || ||
+
| 6 || module_set_clk_rate
 
|-
 
|-
| /dev/nvhost-* || 0xC020481A || ||
+
| 7 || module_get_clk_rate
 
|}
 
|}

Revision as of 16:58, 30 April 2017

The Switch makes use of a customized NVIDIA driver.

nvdrv:a

Main NVIDIA driver service.

Cmd Name
0 Open
1 Ioctl
2 Close
3 Initialize
4 QueryEvent
5 MapSharedMem
6 ?
7 ?
8 Audio render related init?
9 ?

Ioctls

The ioctl number is generated with the following primitive (see Linux kernel):

#define _IOC(inout, group, num, len) \
   (inout | ((len & IOCPARM_MASK) << 16) | ((group) << 8) | (num))

The following table contains known ioctls.

Device Value Description Notes
/dev/nvhost-* 0xC0??0001 NVHOST32_IOCTL_CHANNEL_SUBMIT ?? == size is variable
/dev/nvhost-* 0xC0080002 NVHOST_IOCTL_CHANNEL_GET_SYNCPOINT
/dev/nvhost-* 0xC0080003 NVHOST_IOCTL_CHANNEL_GET_WAITBASE
/dev/nvhost-* 0xC0080004 NVHOST_IOCTL_CHANNEL_SET_TIMEOUT_EX
/dev/nvhost-* 0xC0??0009 NVHOST_IOCTL_CHANNEL_MAP_BUFFER ?? == size is variable
/dev/nvhost-* 0xC0??000A NVHOST_IOCTL_CHANNEL_UNMAP_BUFFER ?? == size is variable
/dev/nvhost-ctrl 0xC0080014 NVHOST_IOCTL_CTRL_SYNCPT_READ
/dev/nvhost-ctrl 0x40040015 NVHOST_IOCTL_CTRL_SYNCPT_INCR
/dev/nvhost-ctrl 0xC00C0016 NVHOST_IOCTL_CTRL_SYNCPT_WAIT
/dev/nvhost-ctrl 0x40080017 NVHOST_IOCTL_CTRL_MODULE_MUTEX
/dev/nvhost-ctrl 0xC0180018 NVHOST32_IOCTL_CTRL_MODULE_REGRDWR
/dev/nvhost-ctrl 0xC0100019 NVHOST_IOCTL_CTRL_SYNCPT_WAITEX
/dev/nvhost-ctrl 0xC008001A NVHOST_IOCTL_CTRL_SYNCPT_READ_MAX
/dev/nvhost-ctrl 0xC004001C
/dev/nvhost-ctrl 0xC010001D NvRmSyncWaitEvent (wait on event?)
/dev/nvhost-ctrl 0xC010001E NvRmSyncWaitEvent (wait on event?)
/dev/nvhost-ctrl 0xC004001F NvRmSyncWaitEvent (signal event?)
/dev/nvhost-ctrl 0xC0040020 NvRmSyncWaitEvent (signal event?)
/dev/nvhost-ctrl 0x40080021 cancel_wait_event Cancels all events
/dev/nvmap 0xC0080101 NVMAP_IOC_CREATE
/dev/nvmap 0x00000102 Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC0080103 NVMAP_IOC_FROM_ID
/dev/nvmap 0xC0200104 NVMAP_IOC_ALLOC
/dev/nvmap 0xC0180105 NVMAP_IOC_FREE
/dev/nvmap 0xC0280106 NVMAP_IOC_MMAP? Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC0280107 NVMAP_IOC_WRITE? Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC0280108 NVMAP_IOC_READ? Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC00C0109 NVMAP_IOC_PARAM
/dev/nvmap 0xC010010A NVMAP_IOC_PIN_MULT? Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC010010B NVMAP_IOC_UNPIN_MULT? Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC008010C NVMAP_IOC_CACHE? Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC004010D Returns NVERROR 0x02 (not supported)
/dev/nvmap 0xC008010E NVMAP_IOC_GET_ID
/dev/nvmap 0xC004010F Returns NVERROR 0x02 (not supported)
/dev/nvmap 0x40040110 Returns NVERROR 0x02 (not supported)
/dev/nvmap 0x00000111 Returns NVERROR 0x02 (not supported)
/dev/nvhost-as-gpu 0x40044101 NVGPU_AS_IOCTL_BIND_CHANNEL
/dev/nvhost-as-gpu 0xC0184102 NVGPU_AS_IOCTL_ALLOC_SPACE
/dev/nvhost-as-gpu 0xC0104103 NVGPU_AS_IOCTL_FREE_SPACE
/dev/nvhost-as-gpu 0xC0184104 NVGPU_AS_IOCTL_MAP_BUFFER
/dev/nvhost-as-gpu 0xC0084105 NVGPU_AS_IOCTL_UNMAP_BUFFER
/dev/nvhost-as-gpu 0xC0284106 NVGPU_AS_IOCTL_MAP_BUFFER_EX
/dev/nvhost-as-gpu 0x40104107 init_as_gpu Initializes the as-gpu node
/dev/nvhost-as-gpu 0xC0404108 NVGPU_AS_IOCTL_GET_VA_REGIONS?
/dev/nvhost-as-gpu 0x40284109 init_as_gpu_ex Initializes the as-gpu node (with more params)
/dev/nvhost-as-gpu 0xC0144114
/dev/nvhost-dbg-gpu 0x40084401 NVGPU_DBG_GPU_IOCTL_BIND_CHANNEL
/dev/nvhost-dbg-gpu 0xC0??4402 NVGPU_DBG_GPU_IOCTL_REG_OPS ?? == size is unknown
/dev/nvhost-dbg-gpu 0x40084403 NVGPU_DBG_GPU_IOCTL_EVENTS_CTRL
/dev/nvhost-dbg-gpu 0x40044404 NVGPU_DBG_GPU_IOCTL_POWERGATE
/dev/nvhost-dbg-gpu 0x40044405 NVGPU_DBG_GPU_IOCTL_SMPC_CTXSW_MODE
/dev/nvhost-dbg-gpu 0xC0184407 NVGPU_DBG_GPU_IOCTL_PERFBUF_MAP
/dev/nvhost-dbg-gpu 0x40084408 NVGPU_DBG_GPU_IOCTL_PERFBUF_UNMAP
/dev/nvhost-dbg-gpu 0x40084409 NVGPU_DBG_GPU_IOCTL_PC_SAMPLING
/dev/nvhost-ctrl-gpu 0x80044701 NVGPU_GPU_IOCTL_ZCULL_GET_CTX_SIZE
/dev/nvhost-ctrl-gpu 0x80284702 NVGPU_GPU_IOCTL_ZCULL_GET_INFO
/dev/nvhost-ctrl-gpu 0x402C4703 NVGPU_GPU_IOCTL_ZBC_SET_TABLE
/dev/nvhost-ctrl-gpu 0xC0344704 NVGPU_GPU_IOCTL_ZBC_QUERY_TABLE
/dev/nvhost-ctrl-gpu 0xC0B04705 NVGPU_GPU_IOCTL_GET_CHARACTERISTICS
/dev/nvhost-ctrl-gpu 0xC0184706 NVGPU_GPU_IOCTL_GET_TPC_MASKS
/dev/nvhost-ctrl-gpu 0x40084707 NVGPU_GPU_IOCTL_OPEN_CHANNEL
/dev/nvhost-ctrl-gpu 0x4008470E
/dev/nvhost-ctrl-gpu 0x4010470F
/dev/nvhost-ctrl-gpu 0xC0084710
/dev/nvhost-ctrl-gpu 0x80084711
/dev/nvhost-ctrl-gpu 0x80084712
/dev/nvhost-ctrl-gpu 0xC0044713
/dev/nvhost-ctrl-gpu 0x80084714
/dev/nvhost-ctrl-gpu 0x80044715
/dev/nvhost-ctrl-gpu 0xC008471B
/dev/nvhost-ctrl-gpu 0xC010471C
/dev/nvhost-* 0x40044801 NVGPU_IOCTL_CHANNEL_SET_NVMAP_FD
/dev/nvhost-* 0x40044803 NVGPU_IOCTL_CHANNEL_SET_PRIORITY
/dev/nvhost-* 0x40084805 NVGPU_IOCTL_CHANNEL_SET_TIMEOUT_EX?
/dev/nvhost-* 0xC0044807 NVGPU_IOCTL_CHANNEL_CYCLE_STATS
/dev/nvhost-* 0xC0184808 NVGPU_IOCTL_CHANNEL_SUBMIT_GPFIFO
/dev/nvhost-* 0xC0104809 NVGPU_IOCTL_CHANNEL_ALLOC_OBJ_CTX
/dev/nvhost-* 0x4008480A NVGPU_IOCTL_CHANNEL_FREE_OBJ_CTX
/dev/nvhost-* 0xC010480B NVGPU_IOCTL_CHANNEL_ZCULL_BIND
/dev/nvhost-* 0xC018480C NVGPU_IOCTL_CHANNEL_SET_ERROR_NOTIFIER
/dev/nvhost-* 0x4004480D NVGPU_IOCTL_CHANNEL_OPEN
/dev/nvhost-* 0x0000480E NVGPU_IOCTL_CHANNEL_ENABLE
/dev/nvhost-* 0x0000480F NVGPU_IOCTL_CHANNEL_DISABLE
/dev/nvhost-* 0x00004810 NVGPU_IOCTL_CHANNEL_PREEMPT
/dev/nvhost-* 0x00004811 NVGPU_IOCTL_CHANNEL_FORCE_RESET
/dev/nvhost-* 0x40084812 NVGPU_IOCTL_CHANNEL_EVENTS_CTRL
/dev/nvhost-* 0xC0104813 NVGPU_IOCTL_CHANNEL_CYCLE_STATS_SNAPSHOT
/dev/nvhost-* 0x80804816
/dev/nvhost-* 0xC0104817
/dev/nvhost-* 0x40204818 alloc_gpfifo?
/dev/nvhost-* 0xC0484819
/dev/nvhost-* 0xC020481A alloc_gpfifo_ex?

nvmemp

NVIDIA memory profiler (this service is not available on retail units).

mm:u

NVIDIA multimedia (NvMM) platform service.

Cmd Name
0 ?
1 ?
2 ?
3 ?
4 module_init_clk
5 module_deinit_clk
6 module_set_clk_rate
7 module_get_clk_rate