Changes

40 bytes removed ,  20:59, 15 April 2017
no edit summary
Line 5: Line 5:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Cmd || Name || Format
+
! Cmd || Name
 
|-
 
|-
| 0 || Open ||
+
| 0 || Open
 
|-
 
|-
| 1 || [[#Ioctl]] ||
+
| 1 || [[#Ioctl]]
 
|-
 
|-
| 2 || Close ||
+
| 2 || Close
 
|-
 
|-
| 3 || Initialize ||
+
| 3 || Initialize
 
|-
 
|-
| 4 || QueryEvent ||
+
| 4 || QueryEvent
 
|-
 
|-
| 5 || MapSharedMem ||
+
| 5 || MapSharedMem
 
|-
 
|-
| 6 || ? ||
+
| 6 ||
 
|-
 
|-
| 7 || ? ||
+
| 7 ||
 
|-
 
|-
| 8 || Audio render related init? ||
+
| 8 || Audio render related init?
 
|-
 
|-
| 9 || ? ||
+
| 9 || ?
 
   
|}
 
|}
   Line 32: Line 31:  
Just like any standard build of the NVIDIA graphics' drivers, the nvdrv:a service operates mainly by processing requests and sending them to the kernel (not verified) through IOCtl commands.
 
Just like any standard build of the NVIDIA graphics' drivers, the nvdrv:a service operates mainly by processing requests and sending them to the kernel (not verified) through IOCtl commands.
 
Note that these commands are generated with the following primitive (see Linux kernel):
 
Note that these commands are generated with the following primitive (see Linux kernel):
#define _IOC(inout, group, num, len) (inout | ((len & IOCPARM_MASK) << 16) | ((group) << 8) | (num))
      +
#define _IOC(inout, group, num, len) \
 +
    (inout | ((len & IOCPARM_MASK) << 16) | ((group) << 8) | (num))
    
The following table contains valid commands for group 0x00.
 
The following table contains valid commands for group 0x00.