Changes

1,844 bytes added ,  15:45, 19 August 2020
no edit summary
Line 119: Line 119:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Bits
 
!  Bits
 +
!  Name
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0
 
| 0
 +
| NvDrvPermission_Gpu
 
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].
 
| Can access [[#Channels|/dev/nvhost-gpu]], [[#/dev/nvhost-ctrl-gpu|/dev/nvhost-ctrl-gpu]] and [[#/dev/nvhost-as-gpu|/dev/nvhost-as-gpu]].
 
|-
 
|-
 
| 1
 
| 1
 +
| NvDrvPermission_GpuDebug
 
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].
 
| Can access [[#/dev/nvhost-dbg-gpu|/dev/nvhost-dbg-gpu]] and [[#/dev/nvhost-prof-gpu|/dev/nvhost-prof-gpu]].
 
|-
 
|-
 
| 2
 
| 2
 +
| NvDrvPermission_GpuSchedule
 
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].
 
| Can access [[#/dev/nvsched-ctrl|/dev/nvsched-ctrl]].
 
|-
 
|-
 
| 3
 
| 3
 +
| NvDrvPermission_VIC
 
| Can access [[#Channels|/dev/nvhost-vic]].
 
| Can access [[#Channels|/dev/nvhost-vic]].
 
|-
 
|-
 
| 4
 
| 4
 +
| NvDrvPermission_VideoEncoder
 
| Can access [[#Channels|/dev/nvhost-msenc]].
 
| Can access [[#Channels|/dev/nvhost-msenc]].
 
|-
 
|-
 
| 5
 
| 5
 +
| NvDrvPermission_VideoDecoder
 
| Can access [[#Channels|/dev/nvhost-nvdec]].
 
| Can access [[#Channels|/dev/nvhost-nvdec]].
 
|-
 
|-
 
| 6
 
| 6
|  
+
| NvDrvPermission_TSEC
 +
| Can access [[#Channels|/dev/nvhost-tsec]].
 
|-
 
|-
 
| 7
 
| 7
 +
| NvDrvPermission_JPEG
 
| Can access [[#Channels|/dev/nvhost-nvjpg]].
 
| Can access [[#Channels|/dev/nvhost-nvjpg]].
 
|-
 
|-
 
| 8
 
| 8
 +
| NvDrvPermission_Display
 
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].
 
| Can access [[#Channels|/dev/nvhost-display]], [[#/dev/nvcec-ctrl|/dev/nvcec-ctrl]], [[#/dev/nvhdcp_up-ctrl|/dev/nvhdcp_up-ctrl]], [[#/dev/nvdisp-ctrl|/dev/nvdisp-ctrl]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp0]], [[#/dev/nvdisp-disp0, /dev/nvdisp-disp1|/dev/nvdisp-disp1]], [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp0]] and [[#/dev/nvdcutil-disp0, /dev/nvdcutil-disp1|/dev/nvdcutil-disp1]].
 
|-
 
|-
 
| 9
 
| 9
 +
| NvDrvPermission_ImportMemory
 
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].
 
| Can duplicate [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].
 
|-
 
|-
 
| 10
 
| 10
 +
| NvDrvPermission_NoCheckedAruid
 
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].
 
| Can use [[#SetAruidWithoutCheck|SetAruidWithoutCheck]].
 
|-
 
|-
 
| 11
 
| 11
 +
|
 
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]].  
 
| Can use [[#SetGraphicsFirmwareMemoryMarginEnabled|SetGraphicsFirmwareMemoryMarginEnabled]].  
 
|-
 
|-
 
| 12
 
| 12
 +
|
 
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].
 
| Can duplicate exported [[#/dev/nvmap|nvmap]] handles from other processes with [[#NVMAP_IOC_FROM_ID|NVMAP_IOC_FROM_ID]].
 
|-
 
|-
 
| 13
 
| 13
 +
|
 
|  
 
|  
 
|-
 
|-
 
| 14
 
| 14
 +
|
 
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].
 
| Can use [[#NVMAP_IOC_EXPORT_FOR_ARUID|NVMAP_IOC_EXPORT_FOR_ARUID]] and [[#NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID|NVMAP_IOC_REMOVE_EXPORT_FOR_ARUID]].
 
|-
 
|-
 
| 15
 
| 15
 +
|
 
|  
 
|  
|-
  −
| 16-31
  −
| Unused.
   
|}
 
|}
   Line 1,971: Line 1,985:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Cmd || Name
+
! Value || Name
 +
|-
 +
| 0x0 || NvError_Success
 +
|-
 +
| 0x1 || NvError_NotImplemented
 +
|-
 +
| 0x2 || NvError_NotSupported
 +
|-
 +
| 0x3 || NvError_NotInitialized
 +
|-
 +
| 0x4 || NvError_BadParameter
 +
|-
 +
| 0x5 || NvError_Timeout
 +
|-
 +
| 0x6 || NvError_InsufficientMemory
 +
|-
 +
| 0x7 || NvError_ReadOnlyAttribute
 +
|-
 +
| 0x8 || NvError_InvalidState
 +
|-
 +
| 0x9 || NvError_InvalidAddress
 +
|-
 +
| 0xA || NvError_InvalidSize
 +
|-
 +
| 0xB || NvError_BadValue
 +
|-
 +
| 0xD || NvError_AlreadyAllocated
 +
|-
 +
| 0xE || NvError_Busy
 +
|-
 +
| 0xF || NvError_ResourceError
 +
|-
 +
| 0x10 || NvError_CountMismatch
 +
|-
 +
| 0x11 || NvError_OverFlow
 +
|-
 +
| 0x1000 || NvError_InsufficientTransferMemory
 +
|-
 +
| 0x10000 || NvError_InsufficientVideoMemory
 +
|-
 +
| 0x10001 || NvError_BadSurfaceColorScheme
 +
|-
 +
| 0x10002 || NvError_InvalidSurface
 +
|-
 +
| 0x10003 || NvError_SurfaceNotSupported
 +
|-
 +
| 0x20000 || NvError_DispInitFailed
 +
|-
 +
| 0x20001 || NvError_DispAlreadyAttached
 +
|-
 +
| 0x20002 || NvError_DispTooManyDisplays
 +
|-
 +
| 0x20003 || NvError_DispNoDisplaysAttached
 +
|-
 +
| 0x20004 || NvError_DispModeNotSupported
 +
|-
 +
| 0x20005 || NvError_DispNotFound
 +
|-
 +
| 0x20006 || NvError_DispAttachDissallowed
 +
|-
 +
| 0x20007 || NvError_DispTypeNotSupported
 +
|-
 +
| 0x20008 || NvError_DispAuthenticationFailed
 
|-
 
|-
| 0 || Success
+
| 0x20009 || NvError_DispNotAttached
 
|-
 
|-
| 1 || NotImplemented
+
| 0x2000A || NvError_DispSamePwrState
 
|-
 
|-
| 2 || NotSupported
+
| 0x2000B || NvError_DispEdidFailure
 
|-
 
|-
| 3 || NotInitialized
+
| 0x2000C || NvError_DispDsiReadAckError
 
|-
 
|-
| 4 || BadParameter
+
| 0x2000D || NvError_DispDsiReadInvalidResp
 
|-
 
|-
| 5 || Timeout
+
| 0x30000 || NvError_FileWriteFailed
 
|-
 
|-
| 6 || InsufficientMemory
+
| 0x30001 || NvError_FileReadFailed
 
|-
 
|-
| 7 || ReadOnlyAttribute
+
| 0x30002 || NvError_EndOfFile
 
|-
 
|-
| 8 || InvalidState
+
| 0x30003 || NvError_FileOperationFailed
 
|-
 
|-
| 9 || InvalidAddress
+
| 0x30004 || NvError_DirOperationFailed
 
|-
 
|-
| 0xA || InvalidSize
+
| 0x30005 || NvError_EndOfDirList
 
|-
 
|-
| 0xB || BadValue
+
| 0x30006 || NvError_ConfigVarNotFound
 
|-
 
|-
| 0xD || AlreadyAllocated
+
| 0x30007 || NvError_InvalidConfigVar
 
|-
 
|-
| 0xE || Busy
+
| 0x30008 || NvError_LibraryNotFound
 
|-
 
|-
| 0xF || ResourceError
+
| 0x30009 || NvError_SymbolNotFound
 
|-
 
|-
| 0x10 || CountMismatch
+
| 0x3000A || NvError_MemoryMapFailed
 
|-
 
|-
| 0x1000 || SharedMemoryTooSmall
+
| 0x3000F || NvError_IoctlFailed                       
 
|-
 
|-
| 0x30003 || FileOperationFailed
+
| 0x30010 || NvError_AccessDenied
 
|-
 
|-
| 0x30004 || DirOperationFailed
+
| 0x30011 || NvError_DeviceNotFound
 
|-
 
|-
| 0x3000F || IoctlFailed                       
+
| 0x30012 || NvError_KernelDriverNotFound
 
|-
 
|-
| 0x30010 || AccessDenied
+
| 0x30013 || NvError_FileNotFound
 
|-
 
|-
| 0x30013 || FileNotFound
+
| 0x30014 || NvError_PathAlreadyExists
 
|-
 
|-
| 0xA000E || ModuleNotPresent
+
| 0xA000E || NvError_ModuleNotPresent
 
|}
 
|}