1758b4ee8SAndy Ritger /*
2758b4ee8SAndy Ritger  * SPDX-FileCopyrightText: Copyright (c) 1993-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3758b4ee8SAndy Ritger  * SPDX-License-Identifier: MIT
4758b4ee8SAndy Ritger  *
5758b4ee8SAndy Ritger  * Permission is hereby granted, free of charge, to any person obtaining a
6758b4ee8SAndy Ritger  * copy of this software and associated documentation files (the "Software"),
7758b4ee8SAndy Ritger  * to deal in the Software without restriction, including without limitation
8758b4ee8SAndy Ritger  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9758b4ee8SAndy Ritger  * and/or sell copies of the Software, and to permit persons to whom the
10758b4ee8SAndy Ritger  * Software is furnished to do so, subject to the following conditions:
11758b4ee8SAndy Ritger  *
12758b4ee8SAndy Ritger  * The above copyright notice and this permission notice shall be included in
13758b4ee8SAndy Ritger  * all copies or substantial portions of the Software.
14758b4ee8SAndy Ritger  *
15758b4ee8SAndy Ritger  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16758b4ee8SAndy Ritger  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17758b4ee8SAndy Ritger  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18758b4ee8SAndy Ritger  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19758b4ee8SAndy Ritger  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20758b4ee8SAndy Ritger  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21758b4ee8SAndy Ritger  * DEALINGS IN THE SOFTWARE.
22758b4ee8SAndy Ritger  */
23758b4ee8SAndy Ritger 
24758b4ee8SAndy Ritger #ifndef DEV_P2060_H
25758b4ee8SAndy Ritger #define DEV_P2060_H
26758b4ee8SAndy Ritger 
27758b4ee8SAndy Ritger #define NV_P2060_STATUS                                         0x00 /* R--1R */
28758b4ee8SAndy Ritger #define NV_P2060_STATUS_VAL                                      7:0 /* R-XVF */
29758b4ee8SAndy Ritger #define NV_P2060_STATUS_VCXO                                     1:0 /* R-XVF */
30758b4ee8SAndy Ritger #define NV_P2060_STATUS_VCXO_NOLOCK_TOO_FAST                    0x00 /* R---V */
31758b4ee8SAndy Ritger #define NV_P2060_STATUS_VCXO_NOLOCK_TOO_SLOW                    0x01 /* R---V */
32758b4ee8SAndy Ritger #define NV_P2060_STATUS_VCXO_LOCK                               0x02 /* R---V */
33758b4ee8SAndy Ritger #define NV_P2060_STATUS_VCXO_NOT_SERVO                          0x03 /* R---V */
34758b4ee8SAndy Ritger #define NV_P2060_STATUS_SYNC_LOSS                                2:2 /* R-XVF */
35758b4ee8SAndy Ritger #define NV_P2060_STATUS_SYNC_LOSS_FALSE                         0x00 /* R---V */
36758b4ee8SAndy Ritger #define NV_P2060_STATUS_SYNC_LOSS_TRUE                          0x01 /* R---V */
37758b4ee8SAndy Ritger #define NV_P2060_STATUS_RESERVED1                                3:3 /* RWXVF */
38758b4ee8SAndy Ritger #define NV_P2060_STATUS_GPU_STEREO                               4:4 /* R-XVF */
39758b4ee8SAndy Ritger #define NV_P2060_STATUS_GPU_STEREO_NOT_ACTIVE                   0x00 /* R---V */
40758b4ee8SAndy Ritger #define NV_P2060_STATUS_GPU_STEREO_ACTIVE                       0x01 /* R---V */
41758b4ee8SAndy Ritger #define NV_P2060_STATUS_MSTR_STEREO                              5:5 /* R-XVF */
42758b4ee8SAndy Ritger #define NV_P2060_STATUS_MSTR_STEREO_NOT_ACTIVE                  0x00 /* R---V */
43758b4ee8SAndy Ritger #define NV_P2060_STATUS_MSTR_STEREO_ACTIVE                      0x01 /* R---V */
44758b4ee8SAndy Ritger #define NV_P2060_STATUS_STEREO                                   6:6 /* R-XVF */
45758b4ee8SAndy Ritger #define NV_P2060_STATUS_STEREO_NOLOCK                           0x00 /* R---V */
46758b4ee8SAndy Ritger #define NV_P2060_STATUS_STEREO_LOCK                             0x01 /* R---V */
47758b4ee8SAndy Ritger #define NV_P2060_STATUS_RESERVED2                                7:7 /* RWXVF */
48758b4ee8SAndy Ritger 
49758b4ee8SAndy Ritger #define NV_P2060_STATUS2                                        0x01 /* RW-1R */
50758b4ee8SAndy Ritger #define NV_P2060_STATUS2_VAL                                     7:0 /* R-XVF */
51758b4ee8SAndy Ritger #define NV_P2060_STATUS2_PORT0                                   0:0 /* RWIVF */
52758b4ee8SAndy Ritger #define NV_P2060_STATUS2_PORT0_INPUT                            0x00 /* RWI-V */
53758b4ee8SAndy Ritger #define NV_P2060_STATUS2_PORT0_OUTPUT                           0x01 /* RW--V */
54758b4ee8SAndy Ritger #define NV_P2060_STATUS2_PORT1                                   1:1 /* RWIVF */
55758b4ee8SAndy Ritger #define NV_P2060_STATUS2_PORT1_INPUT                            0x00 /* RWI-V */
56758b4ee8SAndy Ritger #define NV_P2060_STATUS2_PORT1_OUTPUT                           0x01 /* RW--V */
57758b4ee8SAndy Ritger #define NV_P2060_STATUS2_ETHER0_DETECTED                         2:2 /* RWIVF */
58758b4ee8SAndy Ritger #define NV_P2060_STATUS2_ETHER0_DETECTED_FALSE                  0x00 /* RWI-V */
59758b4ee8SAndy Ritger #define NV_P2060_STATUS2_ETHER0_DETECTED_TRUE                   0x01 /* R---V */
60758b4ee8SAndy Ritger #define NV_P2060_STATUS2_ETHER1_DETECTED                         3:3 /* RWIVF */
61758b4ee8SAndy Ritger #define NV_P2060_STATUS2_ETHER1_DETECTED_FALSE                  0x00 /* RWI-V */
62758b4ee8SAndy Ritger #define NV_P2060_STATUS2_ETHER1_DETECTED_TRUE                   0x01 /* R---V */
63758b4ee8SAndy Ritger #define NV_P2060_STATUS2_HS_DETECT                               5:4 /* RWXVF */
64758b4ee8SAndy Ritger #define NV_P2060_STATUS2_HS_DETECT_NONE                         0x00 /* R---V */
65758b4ee8SAndy Ritger #define NV_P2060_STATUS2_HS_DETECT_TTL                          0x01 /* R---V */
66758b4ee8SAndy Ritger #define NV_P2060_STATUS2_HS_DETECT_COMPOSITE                    0x02 /* R---V */
67758b4ee8SAndy Ritger #define NV_P2060_STATUS2_HS_DETECT_NOT_IN_USE                   0x03 /* R---V */
68758b4ee8SAndy Ritger #define NV_P2060_STATUS2_GPU_PORT                                7:6 /* R-XVF */
69758b4ee8SAndy Ritger #define NV_P2060_STATUS2_GPU_PORT_CONN0                         0x00 /* R---V */
70758b4ee8SAndy Ritger #define NV_P2060_STATUS2_GPU_PORT_CONN1                         0x01 /* R---V */
71758b4ee8SAndy Ritger #define NV_P2060_STATUS2_GPU_PORT_CONN2                         0x02 /* R---V */
72758b4ee8SAndy Ritger #define NV_P2060_STATUS2_GPU_PORT_CONN3                         0x03 /* R---V */
73758b4ee8SAndy Ritger 
74758b4ee8SAndy Ritger #define NV_P2060_STATUS3                                        0x02 /* RW-1R */
75758b4ee8SAndy Ritger #define NV_P2060_STATUS3_VAL                                     7:0 /* R-XVF */
76758b4ee8SAndy Ritger #define NV_P2060_STATUS3_RESERVED                                0:0 /* R-XVF */
77758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_INT_FAIL                             1:1 /* R-XVF */
78758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_INT_FAIL_FALSE                      0x00 /* RW--V */
79758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_INT_FAIL_TRUE                       0x01 /* RW--V */
80758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_VTGRST_FAIL                          2:2 /* R-XVF */
81758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_VTGRST_FAIL_FALSE                   0x00 /* RW--V */
82758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_VTGRST_FAIL_TRUE                    0x01 /* RW--V */
83758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_GSWPRDY_FAIL                         3:3 /* R-XVF */
84758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_GSWPRDY_FAIL_FALSE                  0x00 /* RW--V */
85758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_GSWPRDY_FAIL_TRUE                   0x01 /* RW--V */
86758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_SYNC_FAIL                            4:4 /* RWXVF */
87758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_SYNC_FAIL_FALSE                     0x00 /* RW--V */
88758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_SYNC_FAIL_TRUE                      0x01 /* RW--V */
89758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_STEREO_FAIL                          5:5 /* RWXVF */
90758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_STEREO_FAIL_FALSE                   0x00 /* RW--V */
91758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_STEREO_FAIL_TRUE                    0x01 /* RW--V */
92758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_SWPRDY_FAIL                          6:6 /* RWXVF */
93758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_SWPRDY_FAIL_FALSE                   0x00 /* RW--V */
94758b4ee8SAndy Ritger #define NV_P2060_STATUS3_LB_SWPRDY_FAIL_TRUE                    0x01 /* RW--V */
95758b4ee8SAndy Ritger #define NV_P2060_STATUS3_GENLOCKED                               7:7 /* RWXVF */
96758b4ee8SAndy Ritger #define NV_P2060_STATUS3_GENLOCKED_FALSE                        0x00 /* RW--V */
97758b4ee8SAndy Ritger #define NV_P2060_STATUS3_GENLOCKED_TRUE                         0x01 /* RW--V */
98758b4ee8SAndy Ritger 
99758b4ee8SAndy Ritger #define NV_P2060_STATUS4                                        0x13 /* RW-1R */
100758b4ee8SAndy Ritger #define NV_P2060_STATUS4_VAL                                     7:0 /* R-XVF */
101758b4ee8SAndy Ritger #define NV_P2060_STATUS4_INT_GROUP                               7:6 /* R-XVF */
102758b4ee8SAndy Ritger #define NV_P2060_STATUS4_INT_GROUP_LOSS                         0x00 /* R-XVF */
103758b4ee8SAndy Ritger #define NV_P2060_STATUS4_INT_GROUP_GAIN                         0x01 /* R-XVF */
104758b4ee8SAndy Ritger #define NV_P2060_STATUS4_INT_GROUP_MISC                         0x02 /* R-XVF */
105758b4ee8SAndy Ritger #define NV_P2060_STATUS4_SYNC                                    0:0 /* R---V */
106758b4ee8SAndy Ritger #define NV_P2060_STATUS4_STEREO                                  1:1 /* R---V */
107758b4ee8SAndy Ritger #define NV_P2060_STATUS4_HS                                      2:2 /* R---V */
108758b4ee8SAndy Ritger #define NV_P2060_STATUS4_RJ45                                    3:3 /* R---V */
109758b4ee8SAndy Ritger #define NV_P2060_STATUS4_RESERVED_GRP01                          5:4 /* R---V */
110758b4ee8SAndy Ritger //Value 1 in bits 0-5 indicate loss and gain depending on interrupt group 00/01 (bit 6-7)
111758b4ee8SAndy Ritger #define NV_P2060_STATUS4_FRM_CNT_MATCH_INT                       0:0 /* R-XVF */
112758b4ee8SAndy Ritger #define NV_P2060_STATUS4_FRM_CNT_MATCH_INT_CLEAR                0x00 /* R---V */
113758b4ee8SAndy Ritger #define NV_P2060_STATUS4_FRM_CNT_MATCH_INT_PENDING              0x01 /* R---V */
114758b4ee8SAndy Ritger #define NV_P2060_STATUS4_SWAPRDY_INT                             1:1 /* R-XVF */
115758b4ee8SAndy Ritger #define NV_P2060_STATUS4_SWAPRDY_INT_CLEAR                      0x00 /* R---V */
116758b4ee8SAndy Ritger #define NV_P2060_STATUS4_SWAPRDY_INT_PENDING                    0x01 /* R---V */
117758b4ee8SAndy Ritger #define NV_P2060_STATUS4_ERROR_INT                               2:2 /* R-XVF */
118758b4ee8SAndy Ritger #define NV_P2060_STATUS4_ERROR_INT_CLEAR                        0x00 /* R---V */
119758b4ee8SAndy Ritger #define NV_P2060_STATUS4_ERROR_INT_PENDING                      0x01 /* R---V */
120758b4ee8SAndy Ritger #define NV_P2060_STATUS4_FRM_CNT_ROLLOVER_INT                    3:3 /* R-XVF */
121758b4ee8SAndy Ritger #define NV_P2060_STATUS4_FRM_CNT_ROLLOVER_INT_CLEAR             0x00 /* R---V */
122758b4ee8SAndy Ritger #define NV_P2060_STATUS4_FRM_CNT_ROLLOVER_INT_PENDING           0x01 /* R---V */
123758b4ee8SAndy Ritger #define NV_P2060_STATUS4_RESERVED_GRP10                          5:4 /* R---V */
124758b4ee8SAndy Ritger //Value 1 in bits 0-5 indicate interrupt pending depending on interrupt group 10 (bit 6-7)
125758b4ee8SAndy Ritger 
126758b4ee8SAndy Ritger #define NV_P2060_CONTROL                                        0x03 /* RW-1R */
127758b4ee8SAndy Ritger #define NV_P2060_CONTROL_I_AM                                    0:0 /* RWXVF */
128758b4ee8SAndy Ritger #define NV_P2060_CONTROL_I_AM_SLAVE                             0x00 /* RWI-V */
129758b4ee8SAndy Ritger #define NV_P2060_CONTROL_I_AM_MASTER                            0x01 /* RWI-V */
130758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_POLARITY                           2:1 /* RWXVF */
131758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_POLARITY_RISING_EDGE              0x00 /* RW--V */
132758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_POLARITY_FALLING_EDGE             0x01 /* RW--V */
133758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_POLARITY_BOTH                     0x02 /* RW--V */
134758b4ee8SAndy Ritger #define NV_P2060_CONTROL_TEST_MODE                               3:3 /* RWXVF */
135758b4ee8SAndy Ritger #define NV_P2060_CONTROL_TEST_MODE_OFF                          0x00 /* RW--V */
136758b4ee8SAndy Ritger #define NV_P2060_CONTROL_TEST_MODE_ON                           0x01 /* RW--V */
137758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SRC                                5:4 /* RWXVF */
138758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SRC_CONN0                         0x00 /* RW--V */
139758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SRC_CONN1                         0x01 /* RW--V */
140758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SRC_CONN2                         0x02 /* RW--V */
141758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SRC_CONN3                         0x03 /* RW--V */
142758b4ee8SAndy Ritger #define NV_P2060_CONTROL_INTERLACE_MODE                          6:6 /* RWXVF */
143758b4ee8SAndy Ritger #define NV_P2060_CONTROL_INTERLACE_MODE_FALSE                   0x00 /* RW--V */
144758b4ee8SAndy Ritger #define NV_P2060_CONTROL_INTERLACE_MODE_TRUE                    0x01 /* RW--V */
145758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SELECT                             7:7 /* RWXVF */
146758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SELECT_INTERNAL                   0x00 /* RW--V */
147758b4ee8SAndy Ritger #define NV_P2060_CONTROL_SYNC_SELECT_HOUSE                      0x01 /* RW--V */
148758b4ee8SAndy Ritger 
149758b4ee8SAndy Ritger #define NV_P2060_CONTROL2                                       0x04 /* RW-1R */
150758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_LAMUX                                  1:0 /* RWXVF */
151758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_LAMUX_0                               0x00 /* RWI-V */
152758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_FRAMERATE_RPT                          3:2 /* RWXVF */
153758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_FRAMERATE_RPT_LIVE                    0x00 /* RW--V */
154758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_FRAMERATE_RPT_MIN                     0x02 /* RW--V */
155758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_FRAMERATE_RPT_MAX                     0x03 /* RW--V */
156758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_RESET                                  4:4 /* RWXVF */
157758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_RESET_FALSE                           0x00 /* RW--V */
158758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_RESET_TRUE                            0x01 /* RW--V */
159758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_SWAP_READY                             5:5 /* RWXVF */
160758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_SWAP_READY_DISABLE                    0x00 /* RW--V */
161758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_SWAP_READY_ENABLE                     0x01 /* RW--V */
162758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_RESERVED                               6:6 /* RWXVF */
163758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_LOOPBACK_MODE                          7:7 /* RWXVF */
164758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_LOOPBACK_MODE_OFF                     0x00 /* RW--V */
165758b4ee8SAndy Ritger #define NV_P2060_CONTROL2_LOOPBACK_MODE_ON                      0x01 /* RW--V */
166758b4ee8SAndy Ritger 
167758b4ee8SAndy Ritger #define NV_P2060_CONTROL3                                       0x05 /* RW-1R */
168758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT                              6:0 /* RWXVF */
169758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_DISABLE                     0x00 /* RW--V */
170758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_STEREO_CHG               0x01 /* RW--V */
171758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_ERROR                    0x02 /* RW--V */
172758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_FRAME_MATCH              0x04 /* RW--V */
173758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_HS_CHG                   0x08 /* RW--V */
174758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_SYNC_CHG                 0x10 /* RW--V */
175758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_RJ45_CHG                 0x20 /* RW--V */
176758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_INTERRUPT_ON_ALL                      0x7f /* RW--V */
177758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_RESYNC                                 7:7 /* RWXVF */
178758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_RESYNC_OFF                            0x00 /* RW--V */
179758b4ee8SAndy Ritger #define NV_P2060_CONTROL3_RESYNC_ON                             0x01 /* RW--V */
180758b4ee8SAndy Ritger 
181758b4ee8SAndy Ritger #define NV_P2060_CONTROL4                                       0x06 /* RW-1R */
182758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_SWPRDYINT_DELAY                        2:0 /* RWXVF */
183758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_STEREO_LOCK_MODE                       3:3 /* RWXVF */
184758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_STEREO_LOCK_MODE_OFF                  0x00 /* RW--V */
185758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_STEREO_LOCK_MODE_ON                   0x01 /* RW--V */
186758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_EXT_STEREO_SYNC                        4:4 /* RWXVF */
187758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_EXT_STEREO_SYNC_OFF                   0x00 /* RW--V */
188758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_EXT_STEREO_SYNC_ON                    0x01 /* RW--V */
189758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_EXT_STEREO_SYNC_POL                    5:5 /* RWXVF */
190758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_EXT_STEREO_SYNC_POL_LOW               0x00 /* RW--V */
191758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_EXT_STEREO_SYNC_POL_HI                0x01 /* RW--V */
192758b4ee8SAndy Ritger #define NV_P2060_CONTROL4_RESERVED2                              7:6 /* RWXVF */
193758b4ee8SAndy Ritger 
194758b4ee8SAndy Ritger #define NV_P2060_FPGA                                           0x07 /* R--1R */
195758b4ee8SAndy Ritger #define NV_P2060_FPGA_REV                                        3:0 /* R-XVF */
196758b4ee8SAndy Ritger 
197758b4ee8SAndy Ritger #define NV_P2060_FPGA_ID                                         7:4 /* R-XVF */
198758b4ee8SAndy Ritger #define NV_P2060_FPGA_ID_0                                      0x00 /* R---V */
199758b4ee8SAndy Ritger #define NV_P2060_FPGA_ID_5                                      0x05 /* R---V */
200758b4ee8SAndy Ritger 
201758b4ee8SAndy Ritger #define NV_P2061_FPGA_ID                                         7:4 /* R-XVF */
202758b4ee8SAndy Ritger #define NV_P2061_FPGA_ID_4                                      0x04 /* R---V */
203758b4ee8SAndy Ritger 
204758b4ee8SAndy Ritger #define NV_P2060_SYNC_SKEW_LOW                                  0x08 /* RW-1R */
205758b4ee8SAndy Ritger #define NV_P2060_SYNC_SKEW_LOW_VAL                               7:0 /* RWIVF */
206758b4ee8SAndy Ritger #define NV_P2060_SYNC_SKEW_LOW_VAL_0                            0x00 /* RWI-V */
207758b4ee8SAndy Ritger 
208758b4ee8SAndy Ritger #define NV_P2060_SYNC_SKEW_HIGH                                 0x09 /* RW-1R */
209758b4ee8SAndy Ritger #define NV_P2060_SYNC_SKEW_HIGH_VAL                              7:0 /* RWIVF */
210758b4ee8SAndy Ritger #define NV_P2060_SYNC_SKEW_HIGH_VAL_0                           0x00 /* RWI-V */
211758b4ee8SAndy Ritger 
212e598191eSAndy Ritger #define NV_P2060_SYNC_SKEW_UPPER                                0x35 /* RW-1R */
213e598191eSAndy Ritger #define NV_P2060_SYNC_SKEW_UPPER_VAL                             7:0 /* RWIVF */
214e598191eSAndy Ritger #define NV_P2060_SYNC_SKEW_UPPER_VAL_0                          0x00 /* RWI-V */
215e598191eSAndy Ritger 
216758b4ee8SAndy Ritger #define NV_P2060_START_DELAY_LOW                                0x0A /* RW-1R */
217758b4ee8SAndy Ritger #define NV_P2060_START_DELAY_LOW_VAL                             7:0 /* RWIVF */
218758b4ee8SAndy Ritger #define NV_P2060_START_DELAY_LOW_VAL_0                          0x00 /* RWI-V */
219758b4ee8SAndy Ritger 
220758b4ee8SAndy Ritger #define NV_P2060_START_DELAY_HIGH                               0x0B /* RW-1R */
221758b4ee8SAndy Ritger #define NV_P2060_START_DELAY_HIGH_VAL                            7:0 /* RWIVF */
222758b4ee8SAndy Ritger #define NV_P2060_START_DELAY_HIGH_VAL_0                         0x00 /* RWI-V */
223758b4ee8SAndy Ritger 
224758b4ee8SAndy Ritger #define NV_P2060_NSYNC                                          0x0C /* RW-1R */
225758b4ee8SAndy Ritger #define NV_P2060_NSYNC_FL                                        2:0 /* RWIVF */
226758b4ee8SAndy Ritger #define NV_P2060_NSYNC_GPU                                       6:4 /* RWIVF */
227758b4ee8SAndy Ritger #define NV_P2060_NSYNC_ALL                                       7:0 /* RWIVF */
228758b4ee8SAndy Ritger 
229758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_LOW                                  0x0D /* R--1R */
230758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_LOW_VAL                               7:0 /* RWIVF */
231758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_LOW_VAL_0                            0x00 /* RWI-V */
232758b4ee8SAndy Ritger 
233758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_MID                                  0x0E /* R--1R */
234758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_MID_VAL                               7:0 /* RWIVF */
235758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_MID_VAL_0                            0x00 /* RWI-V */
236758b4ee8SAndy Ritger 
237758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_HIGH                                 0x0F /* R--1R */
238758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_HIGH_VAL                              7:0 /* RWIVF */
239758b4ee8SAndy Ritger #define NV_P2060_FRAMECNTR_HIGH_VAL_0                           0x00 /* RWI-V */
240758b4ee8SAndy Ritger 
241758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_LOW                                  0x10 /* R--1R */
242758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_LOW_VAL                               7:0 /* RWIVF */
243758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_LOW_VAL_0                            0x00 /* RWI-V */
244758b4ee8SAndy Ritger 
245758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_MID                                  0x11 /* R--1R */
246758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_MID_VAL                               7:0 /* RWIVF */
247758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_MID_VAL_0                            0x00 /* RWI-V */
248758b4ee8SAndy Ritger 
249758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_HIGH                                 0x12 /* R--1R */
250758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_HIGH_VAL                              7:0 /* RWIVF */
251758b4ee8SAndy Ritger #define NV_P2060_FRAMERATE_HIGH_VAL_0                           0x00 /* RWI-V */
252758b4ee8SAndy Ritger 
253758b4ee8SAndy Ritger #define NV_P2060_FPGA_EXREV                                     0x17 /* R--1R */
254758b4ee8SAndy Ritger #define NV_P2060_FPGA_EXREV_VAL                                  7:0 /* RWIVF */
255758b4ee8SAndy Ritger #define NV_P2060_FPGA_EXREV_VAL_0                               0x00 /* RWI-V */
256758b4ee8SAndy Ritger 
257758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_0                                 0x18 /* R--1R */
258758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_0_VAL                              7:0 /* RWIVF */
259758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_1                                 0x19 /* R--1R */
260758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_1_VAL                              7:0 /* RWIVF */
261758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_2                                 0x1A /* R--1R */
262758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_2_VAL                              7:0 /* RWIVF */
263758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_3                                 0x1B /* R--1R */
264758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID_3_VAL                              7:0 /* RWIVF */
265758b4ee8SAndy Ritger 
266758b4ee8SAndy Ritger #define NV_P2060_FPGA_ASGN_ID(i)                               (0x18 + i)
267758b4ee8SAndy Ritger 
268758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_LOW                                 0x1D /* R--1R */
269758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_LOW_VAL                              7:0 /* RWIVF */
270758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_LOW_VAL_0                           0x00 /* RWI-V */
271758b4ee8SAndy Ritger 
272758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_MID                                 0x1E /* R--1R */
273758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_MID_VAL                              7:0 /* RWIVF */
274758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_MID_VAL_0                           0x00 /* RWI-V */
275758b4ee8SAndy Ritger 
276758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_HIGH                                0x1F /* R--1R */
277758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_HIGH_VAL                             7:0 /* RWIVF */
278758b4ee8SAndy Ritger #define NV_P2060_FRAME_CMPR_HIGH_VAL_0                          0x00 /* RWI-V */
279758b4ee8SAndy Ritger 
280758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_LOW                               0x20 /* R--1R */
281758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_LOW_VAL                            7:0 /* RWIVF */
282758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_LOW_VAL_0                         0x00 /* RWI-V */
283758b4ee8SAndy Ritger 
284758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_MID                               0x21 /* R--1R */
285758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_MID_VAL                            7:0 /* RWIVF */
286758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_MID_VAL_0                         0x00 /* RWI-V */
287758b4ee8SAndy Ritger 
288758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_HIGH                              0x22 /* R--1R */
289758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_HIGH_VAL                           7:0 /* RWIVF */
290758b4ee8SAndy Ritger #define NV_P2060_HS_FRAMERATE_HIGH_VAL_0                        0x00 /* RWI-V */
291758b4ee8SAndy Ritger 
292758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE                                    0x23 /* RW-1R */
293758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_TS                                  1:0 /* RWIVF */
294758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_TS_CONN0                           0x00 /* R---V */
295758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_TS_CONN1                           0x01 /* RW--V */
296758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_TS_CONN2                           0x02 /* RW--V */
297758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_TS_CONN3                           0x03 /* RW--V */
298758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_GROUP                               2:2 /* RWIVF */
299758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_GROUP_ZERO                         0x00 /* RW--V */
300758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_GROUP_ONE                          0x01 /* RW--V */
301758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_ENABLE                              3:3 /* RWIVF */
302758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_ENABLE_FALSE                       0x00 /* RW--V */
303758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_ENABLE_TRUE                        0x01 /* RW--V */
304758b4ee8SAndy Ritger #define NV_P2060_MOSAIC_MODE_RESERVED                            7:4 /* RWIVF */
305758b4ee8SAndy Ritger 
306*4397463eSAndy Ritger #define NV_P2060_MULTIPLIER_DIVIDER                             0x2F /* RW-1R */
307*4397463eSAndy Ritger #define NV_P2060_MULTIPLIER_DIVIDER_VALUE_MINUS_ONE              2:0 /* RWIVF */
308*4397463eSAndy Ritger #define NV_P2060_MULTIPLIER_DIVIDER_VALUE_MINUS_ONE_MAX          0x7
309*4397463eSAndy Ritger #define NV_P2060_MULTIPLIER_DIVIDER_MODE                         7:7 /* RWIVF */
310*4397463eSAndy Ritger #define NV_P2060_MULTIPLIER_DIVIDER_MODE_MULTIPLY                0x0 /* RWIVF */
311*4397463eSAndy Ritger #define NV_P2060_MULTIPLIER_DIVIDER_MODE_DIVIDE                  0x1 /* RWIVF */
312*4397463eSAndy Ritger 
313758b4ee8SAndy Ritger #endif //DEV_P2060_H
314*4397463eSAndy Ritger 
315