summaryrefslogtreecommitdiff
path: root/manuals/volta/gv100/dev_usermode.ref.txt
diff options
context:
space:
mode:
Diffstat (limited to 'manuals/volta/gv100/dev_usermode.ref.txt')
-rw-r--r--manuals/volta/gv100/dev_usermode.ref.txt105
1 files changed, 101 insertions, 4 deletions
diff --git a/manuals/volta/gv100/dev_usermode.ref.txt b/manuals/volta/gv100/dev_usermode.ref.txt
index cb98f96..b0a00c9 100644
--- a/manuals/volta/gv100/dev_usermode.ref.txt
+++ b/manuals/volta/gv100/dev_usermode.ref.txt
@@ -19,6 +19,23 @@ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
+CONTENTS
+
+ Introduction
+
+ Identification and Capabilities Registers
+
+ PTIMER Current Time Registers
+
+ Channel Work Submission Registers
+
+ Key
+
+INTRODUCTION
+===============================================================================
+
+
+
This manual describes the USERMODE device. USERMODE is a mappable range of
registers for use by usermode drivers. The range is 64KB aligned and 64KB in
size to match the maximum page size of systems supported by NVIDIA hardware.
@@ -34,11 +51,10 @@ USERMODE Usermode region 64K HOST
#define NV_USERMODE 0x0081FFFF:0x00810000 /* RW--D */
- Table 1-1 Local Devices
-2 - IDENTIFICATION AND CAPABILITIES REGISTERS
+IDENTIFICATION AND CAPABILITIES REGISTERS
===============================================================================
The first 128 bytes of the NV_USERMODE device are reserved for up to 32
@@ -59,7 +75,7 @@ volta_usermode_a.
// Note: addresses up to 0x810080 are reserved for CGF and capabilities registers
-3 - PTIMER CURRENT TIME REGISTERS
+PTIMER CURRENT TIME REGISTERS
===============================================================================
The TIME registers contain the current time as kept by the PTIMER; see
@@ -98,7 +114,7 @@ TIME_1 Register - Timer High Bits
-4 - CHANNEL WORK SUBMISSION REGISTERS
+CHANNEL WORK SUBMISSION REGISTERS
===============================================================================
NOTIFY_CHANNEL_PENDING - Notify Host that a channel has new work available
@@ -132,3 +148,84 @@ next channel.
#define NV_USERMODE_NOTIFY_CHANNEL_PENDING 0x00810090 /* -W-4R */
#define NV_USERMODE_NOTIFY_CHANNEL_PENDING_ID 31:0 /* -W-UF */
+
+
+
+KEY
+===============================================================================
+
+--------------------------------------------------------------------------------
+ KEY LEGEND
+--------------------------------------------------------------------------------
+
+Each define in the .ref file has a 5 field code to say what kind of define it is: i.e. /* RW--R */
+The following legend shows accepted values for each of the 5 fields:
+ Read, Write, Internal State, Declaration/Size, and Define Indicator.
+
+ Read
+ ' ' = Other Information
+ '-' = Field is part of a write-only register
+ 'C' = Value read is always the same, constant value line follows (C)
+ 'R' = Value is read
+
+
+ Write
+ ' ' = Other Information
+ '-' = Must not be written (D), value ignored when written (R,A,F)
+ 'W' = Can be written
+
+
+ Internal State
+ ' ' = Other Information
+ '-' = No internal state
+ 'X' = Internal state, initial value is unknown
+ 'I' = Internal state, initial value is known and follows (I), see "Reset Signal" section for signal.
+ 'E' = Internal state, initial value is known and follows (E), see "Reset Signal" section for signal.
+ 'B' = Internal state, initial value is known and follows (B), see "Reset Signal" section for signal.
+ 'C' = Internal state, initial value is known and follows (C), see "Reset Signal" section for signal.
+
+ 'V' = (legacy) Internal state, initialize at volatile reset
+ 'D' = (legacy) Internal state, default initial value at object creation (legacy: Only used in dev_ram.ref)
+ 'C' = (legacy) Internal state, initial value at object creation
+ 'C' = (legacy) Internal state, class-based initial value at object creation (legacy: Only used in dev_ram.ref)
+
+
+ Declaration/Size
+ ' ' = Other Information
+ '-' = Does Not Apply
+ 'V' = Type is void
+ 'U' = Type is unsigned integer
+ 'S' = Type is signed integer
+ 'F' = Type is IEEE floating point
+ '1' = Byte size (008)
+ '2' = Short size (016)
+ '3' = Three byte size (024)
+ '4' = Word size (032)
+ '8' = Double size (064)
+
+
+ Define Indicator
+ ' ' = Other Information
+ 'C' = Clear value
+ 'D' = Device
+ 'L' = Logical device.
+ 'M' = Memory
+ 'R' = Register
+ 'A' = Array of Registers
+ 'F' = Field
+ 'V' = Value
+ 'T' = Task
+ 'P' = Phantom Register
+
+ 'B' = (legacy) Bundle address
+ 'G' = (legacy) General purpose configuration register
+ 'C' = (legacy) Class
+
+ Reset signal defaults for graphics engine registers.
+ All graphics engine registers use the following defaults for reset signals:
+ 'E' = initialized with engine_reset_
+ 'I' = initialized with context_reset_
+ 'B' = initialized with reset_IB_dly_
+
+ Reset signal
+ For units that differ from the graphics engine defaults, the reset signals should be defined here: