1*b843c749SSergey Zigachev /*
2*b843c749SSergey Zigachev  * Copyright (C) 2017  Advanced Micro Devices, Inc.
3*b843c749SSergey Zigachev  *
4*b843c749SSergey Zigachev  * Permission is hereby granted, free of charge, to any person obtaining a
5*b843c749SSergey Zigachev  * copy of this software and associated documentation files (the "Software"),
6*b843c749SSergey Zigachev  * to deal in the Software without restriction, including without limitation
7*b843c749SSergey Zigachev  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8*b843c749SSergey Zigachev  * and/or sell copies of the Software, and to permit persons to whom the
9*b843c749SSergey Zigachev  * Software is furnished to do so, subject to the following conditions:
10*b843c749SSergey Zigachev  *
11*b843c749SSergey Zigachev  * The above copyright notice and this permission notice shall be included
12*b843c749SSergey Zigachev  * in all copies or substantial portions of the Software.
13*b843c749SSergey Zigachev  *
14*b843c749SSergey Zigachev  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15*b843c749SSergey Zigachev  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16*b843c749SSergey Zigachev  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
17*b843c749SSergey Zigachev  * THE COPYRIGHT HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
18*b843c749SSergey Zigachev  * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19*b843c749SSergey Zigachev  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20*b843c749SSergey Zigachev  */
21*b843c749SSergey Zigachev #ifndef _vcn_1_0_OFFSET_HEADER
22*b843c749SSergey Zigachev #define _vcn_1_0_OFFSET_HEADER
23*b843c749SSergey Zigachev 
24*b843c749SSergey Zigachev 
25*b843c749SSergey Zigachev 
26*b843c749SSergey Zigachev // addressBlock: uvd_uvd_pg_dec
27*b843c749SSergey Zigachev // base address: 0x1fb00
28*b843c749SSergey Zigachev #define mmUVD_PGFSM_CONFIG                                                                             0x00c0
29*b843c749SSergey Zigachev #define mmUVD_PGFSM_CONFIG_BASE_IDX                                                                    1
30*b843c749SSergey Zigachev #define mmUVD_PGFSM_STATUS                                                                             0x00c1
31*b843c749SSergey Zigachev #define mmUVD_PGFSM_STATUS_BASE_IDX                                                                    1
32*b843c749SSergey Zigachev #define mmUVD_POWER_STATUS                                                                             0x00c4
33*b843c749SSergey Zigachev #define mmUVD_POWER_STATUS_BASE_IDX                                                                    1
34*b843c749SSergey Zigachev #define mmCC_UVD_HARVESTING                                                                            0x00c7
35*b843c749SSergey Zigachev #define mmCC_UVD_HARVESTING_BASE_IDX                                                                   1
36*b843c749SSergey Zigachev #define mmUVD_SCRATCH1                                                                                 0x00d5
37*b843c749SSergey Zigachev #define mmUVD_SCRATCH1_BASE_IDX                                                                        1
38*b843c749SSergey Zigachev #define mmUVD_SCRATCH2                                                                                 0x00d6
39*b843c749SSergey Zigachev #define mmUVD_SCRATCH2_BASE_IDX                                                                        1
40*b843c749SSergey Zigachev #define mmUVD_SCRATCH3                                                                                 0x00d7
41*b843c749SSergey Zigachev #define mmUVD_SCRATCH3_BASE_IDX                                                                        1
42*b843c749SSergey Zigachev #define mmUVD_SCRATCH4                                                                                 0x00d8
43*b843c749SSergey Zigachev #define mmUVD_SCRATCH4_BASE_IDX                                                                        1
44*b843c749SSergey Zigachev #define mmUVD_SCRATCH5                                                                                 0x00d9
45*b843c749SSergey Zigachev #define mmUVD_SCRATCH5_BASE_IDX                                                                        1
46*b843c749SSergey Zigachev #define mmUVD_SCRATCH6                                                                                 0x00da
47*b843c749SSergey Zigachev #define mmUVD_SCRATCH6_BASE_IDX                                                                        1
48*b843c749SSergey Zigachev #define mmUVD_SCRATCH7                                                                                 0x00db
49*b843c749SSergey Zigachev #define mmUVD_SCRATCH7_BASE_IDX                                                                        1
50*b843c749SSergey Zigachev #define mmUVD_SCRATCH8                                                                                 0x00dc
51*b843c749SSergey Zigachev #define mmUVD_SCRATCH8_BASE_IDX                                                                        1
52*b843c749SSergey Zigachev #define mmUVD_SCRATCH9                                                                                 0x00dd
53*b843c749SSergey Zigachev #define mmUVD_SCRATCH9_BASE_IDX                                                                        1
54*b843c749SSergey Zigachev #define mmUVD_SCRATCH10                                                                                0x00de
55*b843c749SSergey Zigachev #define mmUVD_SCRATCH10_BASE_IDX                                                                       1
56*b843c749SSergey Zigachev #define mmUVD_SCRATCH11                                                                                0x00df
57*b843c749SSergey Zigachev #define mmUVD_SCRATCH11_BASE_IDX                                                                       1
58*b843c749SSergey Zigachev #define mmUVD_SCRATCH12                                                                                0x00e0
59*b843c749SSergey Zigachev #define mmUVD_SCRATCH12_BASE_IDX                                                                       1
60*b843c749SSergey Zigachev #define mmUVD_SCRATCH13                                                                                0x00e1
61*b843c749SSergey Zigachev #define mmUVD_SCRATCH13_BASE_IDX                                                                       1
62*b843c749SSergey Zigachev #define mmUVD_SCRATCH14                                                                                0x00e2
63*b843c749SSergey Zigachev #define mmUVD_SCRATCH14_BASE_IDX                                                                       1
64*b843c749SSergey Zigachev #define mmUVD_DPG_LMI_VCPU_CACHE_64BIT_BAR_LOW                                                         0x00e5
65*b843c749SSergey Zigachev #define mmUVD_DPG_LMI_VCPU_CACHE_64BIT_BAR_LOW_BASE_IDX                                                1
66*b843c749SSergey Zigachev #define mmUVD_DPG_LMI_VCPU_CACHE_64BIT_BAR_HIGH                                                        0x00e6
67*b843c749SSergey Zigachev #define mmUVD_DPG_LMI_VCPU_CACHE_64BIT_BAR_HIGH_BASE_IDX                                               1
68*b843c749SSergey Zigachev #define mmUVD_DPG_VCPU_CACHE_OFFSET0                                                                   0x00e7
69*b843c749SSergey Zigachev #define mmUVD_DPG_VCPU_CACHE_OFFSET0_BASE_IDX                                                          1
70*b843c749SSergey Zigachev 
71*b843c749SSergey Zigachev 
72*b843c749SSergey Zigachev // addressBlock: uvd_uvdgendec
73*b843c749SSergey Zigachev // base address: 0x1fc00
74*b843c749SSergey Zigachev #define mmUVD_LCM_CGC_CNTRL                                                                            0x0123
75*b843c749SSergey Zigachev #define mmUVD_LCM_CGC_CNTRL_BASE_IDX                                                                   1
76*b843c749SSergey Zigachev 
77*b843c749SSergey Zigachev 
78*b843c749SSergey Zigachev // addressBlock: uvd_uvdnpdec
79*b843c749SSergey Zigachev // base address: 0x20000
80*b843c749SSergey Zigachev #define mmUVD_JPEG_CNTL                                                                                0x0200
81*b843c749SSergey Zigachev #define mmUVD_JPEG_CNTL_BASE_IDX                                                                       1
82*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_BASE                                                                             0x0201
83*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_BASE_BASE_IDX                                                                    1
84*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_WPTR                                                                             0x0202
85*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_WPTR_BASE_IDX                                                                    1
86*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_RPTR                                                                             0x0203
87*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_RPTR_BASE_IDX                                                                    1
88*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_SIZE                                                                             0x0204
89*b843c749SSergey Zigachev #define mmUVD_JPEG_RB_SIZE_BASE_IDX                                                                    1
90*b843c749SSergey Zigachev #define mmUVD_JPEG_ADDR_CONFIG                                                                         0x021f
91*b843c749SSergey Zigachev #define mmUVD_JPEG_ADDR_CONFIG_BASE_IDX                                                                1
92*b843c749SSergey Zigachev #define mmUVD_JPEG_PITCH                                                                               0x0222
93*b843c749SSergey Zigachev #define mmUVD_JPEG_PITCH_BASE_IDX                                                                      1
94*b843c749SSergey Zigachev #define mmUVD_JPEG_GPCOM_CMD                                                                           0x022c
95*b843c749SSergey Zigachev #define mmUVD_JPEG_GPCOM_CMD_BASE_IDX                                                                  1
96*b843c749SSergey Zigachev #define mmUVD_JPEG_GPCOM_DATA0                                                                         0x022d
97*b843c749SSergey Zigachev #define mmUVD_JPEG_GPCOM_DATA0_BASE_IDX                                                                1
98*b843c749SSergey Zigachev #define mmUVD_JPEG_GPCOM_DATA1                                                                         0x022e
99*b843c749SSergey Zigachev #define mmUVD_JPEG_GPCOM_DATA1_BASE_IDX                                                                1
100*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_BASE_LO                                                                         0x022f
101*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_BASE_LO_BASE_IDX                                                                1
102*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_BASE_HI                                                                         0x0230
103*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_BASE_HI_BASE_IDX                                                                1
104*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_SIZE                                                                            0x0232
105*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_SIZE_BASE_IDX                                                                   1
106*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_RPTR                                                                            0x0233
107*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_RPTR_BASE_IDX                                                                   1
108*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_WPTR                                                                            0x0234
109*b843c749SSergey Zigachev #define mmUVD_JPEG_JRB_WPTR_BASE_IDX                                                                   1
110*b843c749SSergey Zigachev #define mmUVD_JPEG_UV_ADDR_CONFIG                                                                      0x0238
111*b843c749SSergey Zigachev #define mmUVD_JPEG_UV_ADDR_CONFIG_BASE_IDX                                                             1
112*b843c749SSergey Zigachev #define mmUVD_SEMA_ADDR_LOW                                                                            0x03c0
113*b843c749SSergey Zigachev #define mmUVD_SEMA_ADDR_LOW_BASE_IDX                                                                   1
114*b843c749SSergey Zigachev #define mmUVD_SEMA_ADDR_HIGH                                                                           0x03c1
115*b843c749SSergey Zigachev #define mmUVD_SEMA_ADDR_HIGH_BASE_IDX                                                                  1
116*b843c749SSergey Zigachev #define mmUVD_SEMA_CMD                                                                                 0x03c2
117*b843c749SSergey Zigachev #define mmUVD_SEMA_CMD_BASE_IDX                                                                        1
118*b843c749SSergey Zigachev #define mmUVD_GPCOM_VCPU_CMD                                                                           0x03c3
119*b843c749SSergey Zigachev #define mmUVD_GPCOM_VCPU_CMD_BASE_IDX                                                                  1
120*b843c749SSergey Zigachev #define mmUVD_GPCOM_VCPU_DATA0                                                                         0x03c4
121*b843c749SSergey Zigachev #define mmUVD_GPCOM_VCPU_DATA0_BASE_IDX                                                                1
122*b843c749SSergey Zigachev #define mmUVD_GPCOM_VCPU_DATA1                                                                         0x03c5
123*b843c749SSergey Zigachev #define mmUVD_GPCOM_VCPU_DATA1_BASE_IDX                                                                1
124*b843c749SSergey Zigachev #define mmUVD_UDEC_DBW_UV_ADDR_CONFIG                                                                  0x03d2
125*b843c749SSergey Zigachev #define mmUVD_UDEC_DBW_UV_ADDR_CONFIG_BASE_IDX                                                         1
126*b843c749SSergey Zigachev #define mmUVD_UDEC_ADDR_CONFIG                                                                         0x03d3
127*b843c749SSergey Zigachev #define mmUVD_UDEC_ADDR_CONFIG_BASE_IDX                                                                1
128*b843c749SSergey Zigachev #define mmUVD_UDEC_DB_ADDR_CONFIG                                                                      0x03d4
129*b843c749SSergey Zigachev #define mmUVD_UDEC_DB_ADDR_CONFIG_BASE_IDX                                                             1
130*b843c749SSergey Zigachev #define mmUVD_UDEC_DBW_ADDR_CONFIG                                                                     0x03d5
131*b843c749SSergey Zigachev #define mmUVD_UDEC_DBW_ADDR_CONFIG_BASE_IDX                                                            1
132*b843c749SSergey Zigachev #define mmUVD_SUVD_CGC_GATE                                                                            0x03e4
133*b843c749SSergey Zigachev #define mmUVD_SUVD_CGC_GATE_BASE_IDX                                                                   1
134*b843c749SSergey Zigachev #define mmUVD_SUVD_CGC_STATUS                                                                          0x03e5
135*b843c749SSergey Zigachev #define mmUVD_SUVD_CGC_STATUS_BASE_IDX                                                                 1
136*b843c749SSergey Zigachev #define mmUVD_SUVD_CGC_CTRL                                                                            0x03e6
137*b843c749SSergey Zigachev #define mmUVD_SUVD_CGC_CTRL_BASE_IDX                                                                   1
138*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE1_64BIT_BAR_LOW                                                            0x03ec
139*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE1_64BIT_BAR_LOW_BASE_IDX                                                   1
140*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE1_64BIT_BAR_HIGH                                                           0x03ed
141*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE1_64BIT_BAR_HIGH_BASE_IDX                                                  1
142*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE2_64BIT_BAR_LOW                                                            0x03f0
143*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE2_64BIT_BAR_LOW_BASE_IDX                                                   1
144*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE2_64BIT_BAR_HIGH                                                           0x03f1
145*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE2_64BIT_BAR_HIGH_BASE_IDX                                                  1
146*b843c749SSergey Zigachev #define mmUVD_NO_OP                                                                                    0x03ff
147*b843c749SSergey Zigachev #define mmUVD_NO_OP_BASE_IDX                                                                           1
148*b843c749SSergey Zigachev #define mmUVD_JPEG_CNTL2                                                                               0x0404
149*b843c749SSergey Zigachev #define mmUVD_JPEG_CNTL2_BASE_IDX                                                                      1
150*b843c749SSergey Zigachev #define mmUVD_VERSION                                                                                  0x0409
151*b843c749SSergey Zigachev #define mmUVD_VERSION_BASE_IDX                                                                         1
152*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH8                                                                              0x040a
153*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH8_BASE_IDX                                                                     1
154*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH9                                                                              0x040b
155*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH9_BASE_IDX                                                                     1
156*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH10                                                                             0x040c
157*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH10_BASE_IDX                                                                    1
158*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH11                                                                             0x040d
159*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH11_BASE_IDX                                                                    1
160*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH12                                                                             0x040e
161*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH12_BASE_IDX                                                                    1
162*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH13                                                                             0x040f
163*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH13_BASE_IDX                                                                    1
164*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH14                                                                             0x0410
165*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH14_BASE_IDX                                                                    1
166*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH15                                                                             0x0411
167*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH15_BASE_IDX                                                                    1
168*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH16                                                                             0x0412
169*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH16_BASE_IDX                                                                    1
170*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH17                                                                             0x0413
171*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH17_BASE_IDX                                                                    1
172*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH18                                                                             0x0414
173*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH18_BASE_IDX                                                                    1
174*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH19                                                                             0x0415
175*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH19_BASE_IDX                                                                    1
176*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH20                                                                             0x0416
177*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH20_BASE_IDX                                                                    1
178*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH21                                                                             0x0417
179*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH21_BASE_IDX                                                                    1
180*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH22                                                                             0x0418
181*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH22_BASE_IDX                                                                    1
182*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH23                                                                             0x0419
183*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH23_BASE_IDX                                                                    1
184*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO2                                                                              0x0421
185*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO2_BASE_IDX                                                                     1
186*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI2                                                                              0x0422
187*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI2_BASE_IDX                                                                     1
188*b843c749SSergey Zigachev #define mmUVD_RB_SIZE2                                                                                 0x0423
189*b843c749SSergey Zigachev #define mmUVD_RB_SIZE2_BASE_IDX                                                                        1
190*b843c749SSergey Zigachev #define mmUVD_RB_RPTR2                                                                                 0x0424
191*b843c749SSergey Zigachev #define mmUVD_RB_RPTR2_BASE_IDX                                                                        1
192*b843c749SSergey Zigachev #define mmUVD_RB_WPTR2                                                                                 0x0425
193*b843c749SSergey Zigachev #define mmUVD_RB_WPTR2_BASE_IDX                                                                        1
194*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO                                                                               0x0426
195*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO_BASE_IDX                                                                      1
196*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI                                                                               0x0427
197*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI_BASE_IDX                                                                      1
198*b843c749SSergey Zigachev #define mmUVD_RB_SIZE                                                                                  0x0428
199*b843c749SSergey Zigachev #define mmUVD_RB_SIZE_BASE_IDX                                                                         1
200*b843c749SSergey Zigachev #define mmUVD_RB_RPTR                                                                                  0x0429
201*b843c749SSergey Zigachev #define mmUVD_RB_RPTR_BASE_IDX                                                                         1
202*b843c749SSergey Zigachev #define mmUVD_RB_WPTR                                                                                  0x042a
203*b843c749SSergey Zigachev #define mmUVD_RB_WPTR_BASE_IDX                                                                         1
204*b843c749SSergey Zigachev #define mmUVD_RB_WPTR4                                                                                 0x0456
205*b843c749SSergey Zigachev #define mmUVD_RB_WPTR4_BASE_IDX                                                                        1
206*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_RPTR                                                                             0x0457
207*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_RPTR_BASE_IDX                                                                    1
208*b843c749SSergey Zigachev #define mmUVD_LMI_JPEG_VMID                                                                            0x045d
209*b843c749SSergey Zigachev #define mmUVD_LMI_JPEG_VMID_BASE_IDX                                                                   1
210*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE_64BIT_BAR_HIGH                                                            0x045e
211*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE_64BIT_BAR_HIGH_BASE_IDX                                                   1
212*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE_64BIT_BAR_LOW                                                             0x045f
213*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE_64BIT_BAR_LOW_BASE_IDX                                                    1
214*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_IB_64BIT_BAR_HIGH                                                                0x0466
215*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_IB_64BIT_BAR_HIGH_BASE_IDX                                                       1
216*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_IB_64BIT_BAR_LOW                                                                 0x0467
217*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_IB_64BIT_BAR_LOW_BASE_IDX                                                        1
218*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_RB_64BIT_BAR_HIGH                                                                0x0468
219*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_RB_64BIT_BAR_HIGH_BASE_IDX                                                       1
220*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_RB_64BIT_BAR_LOW                                                                 0x0469
221*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_RB_64BIT_BAR_LOW_BASE_IDX                                                        1
222*b843c749SSergey Zigachev 
223*b843c749SSergey Zigachev 
224*b843c749SSergey Zigachev // addressBlock: uvd_uvddec
225*b843c749SSergey Zigachev // base address: 0x20c00
226*b843c749SSergey Zigachev #define mmUVD_SEMA_CNTL                                                                                0x0500
227*b843c749SSergey Zigachev #define mmUVD_SEMA_CNTL_BASE_IDX                                                                       1
228*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_64BIT_BAR_LOW                                                                0x0503
229*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_64BIT_BAR_LOW_BASE_IDX                                                       1
230*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_64BIT_BAR_HIGH                                                               0x0504
231*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_64BIT_BAR_HIGH_BASE_IDX                                                      1
232*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_IB_64BIT_BAR_LOW                                                                0x0505
233*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_IB_64BIT_BAR_LOW_BASE_IDX                                                       1
234*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_IB_64BIT_BAR_HIGH                                                               0x0506
235*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_IB_64BIT_BAR_HIGH_BASE_IDX                                                      1
236*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_IB_VMID                                                                         0x0507
237*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_IB_VMID_BASE_IDX                                                                1
238*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_VMID                                                                         0x0508
239*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_VMID_BASE_IDX                                                                1
240*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_WPTR                                                                             0x0509
241*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_WPTR_BASE_IDX                                                                    1
242*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_CNTL                                                                             0x050a
243*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_CNTL_BASE_IDX                                                                    1
244*b843c749SSergey Zigachev #define mmUVD_JRBC_IB_SIZE                                                                             0x050b
245*b843c749SSergey Zigachev #define mmUVD_JRBC_IB_SIZE_BASE_IDX                                                                    1
246*b843c749SSergey Zigachev #define mmUVD_JRBC_LMI_SWAP_CNTL                                                                       0x050d
247*b843c749SSergey Zigachev #define mmUVD_JRBC_LMI_SWAP_CNTL_BASE_IDX                                                              1
248*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_WR_64BIT_BAR_LOW                                                         0x050e
249*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_WR_64BIT_BAR_LOW_BASE_IDX                                                1
250*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_WR_64BIT_BAR_HIGH                                                        0x050f
251*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_WR_64BIT_BAR_HIGH_BASE_IDX                                               1
252*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_RD_64BIT_BAR_LOW                                                         0x0510
253*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_RD_64BIT_BAR_LOW_BASE_IDX                                                1
254*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_RD_64BIT_BAR_HIGH                                                        0x0511
255*b843c749SSergey Zigachev #define mmUVD_LMI_JRBC_RB_MEM_RD_64BIT_BAR_HIGH_BASE_IDX                                               1
256*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_REF_DATA                                                                         0x0512
257*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_REF_DATA_BASE_IDX                                                                1
258*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_COND_RD_TIMER                                                                    0x0513
259*b843c749SSergey Zigachev #define mmUVD_JRBC_RB_COND_RD_TIMER_BASE_IDX                                                           1
260*b843c749SSergey Zigachev #define mmUVD_JRBC_EXTERNAL_REG_BASE                                                                   0x0517
261*b843c749SSergey Zigachev #define mmUVD_JRBC_EXTERNAL_REG_BASE_BASE_IDX                                                          1
262*b843c749SSergey Zigachev #define mmUVD_JRBC_SOFT_RESET                                                                          0x0519
263*b843c749SSergey Zigachev #define mmUVD_JRBC_SOFT_RESET_BASE_IDX                                                                 1
264*b843c749SSergey Zigachev #define mmUVD_JRBC_STATUS                                                                              0x051a
265*b843c749SSergey Zigachev #define mmUVD_JRBC_STATUS_BASE_IDX                                                                     1
266*b843c749SSergey Zigachev #define mmUVD_RB_RPTR3                                                                                 0x051b
267*b843c749SSergey Zigachev #define mmUVD_RB_RPTR3_BASE_IDX                                                                        1
268*b843c749SSergey Zigachev #define mmUVD_RB_WPTR3                                                                                 0x051c
269*b843c749SSergey Zigachev #define mmUVD_RB_WPTR3_BASE_IDX                                                                        1
270*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO3                                                                              0x051d
271*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO3_BASE_IDX                                                                     1
272*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI3                                                                              0x051e
273*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI3_BASE_IDX                                                                     1
274*b843c749SSergey Zigachev #define mmUVD_RB_SIZE3                                                                                 0x051f
275*b843c749SSergey Zigachev #define mmUVD_RB_SIZE3_BASE_IDX                                                                        1
276*b843c749SSergey Zigachev #define mmJPEG_CGC_GATE                                                                                0x0526
277*b843c749SSergey Zigachev #define mmJPEG_CGC_GATE_BASE_IDX                                                                       1
278*b843c749SSergey Zigachev #define mmUVD_CTX_INDEX                                                                                0x0528
279*b843c749SSergey Zigachev #define mmUVD_CTX_INDEX_BASE_IDX                                                                       1
280*b843c749SSergey Zigachev #define mmUVD_CTX_DATA                                                                                 0x0529
281*b843c749SSergey Zigachev #define mmUVD_CTX_DATA_BASE_IDX                                                                        1
282*b843c749SSergey Zigachev #define mmUVD_CGC_GATE                                                                                 0x052a
283*b843c749SSergey Zigachev #define mmUVD_CGC_GATE_BASE_IDX                                                                        1
284*b843c749SSergey Zigachev #define mmUVD_CGC_STATUS                                                                               0x052b
285*b843c749SSergey Zigachev #define mmUVD_CGC_STATUS_BASE_IDX                                                                      1
286*b843c749SSergey Zigachev #define mmUVD_CGC_CTRL                                                                                 0x052c
287*b843c749SSergey Zigachev #define mmUVD_CGC_CTRL_BASE_IDX                                                                        1
288*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH0                                                                              0x0534
289*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH0_BASE_IDX                                                                     1
290*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH1                                                                              0x0535
291*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH1_BASE_IDX                                                                     1
292*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH2                                                                              0x0536
293*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH2_BASE_IDX                                                                     1
294*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH3                                                                              0x0537
295*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH3_BASE_IDX                                                                     1
296*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH4                                                                              0x0538
297*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH4_BASE_IDX                                                                     1
298*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH5                                                                              0x0539
299*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH5_BASE_IDX                                                                     1
300*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH6                                                                              0x053a
301*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH6_BASE_IDX                                                                     1
302*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH7                                                                              0x053b
303*b843c749SSergey Zigachev #define mmUVD_GP_SCRATCH7_BASE_IDX                                                                     1
304*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE_VMID                                                                      0x053c
305*b843c749SSergey Zigachev #define mmUVD_LMI_VCPU_CACHE_VMID_BASE_IDX                                                             1
306*b843c749SSergey Zigachev #define mmUVD_LMI_CTRL2                                                                                0x053d
307*b843c749SSergey Zigachev #define mmUVD_LMI_CTRL2_BASE_IDX                                                                       1
308*b843c749SSergey Zigachev #define mmUVD_MASTINT_EN                                                                               0x0540
309*b843c749SSergey Zigachev #define mmUVD_MASTINT_EN_BASE_IDX                                                                      1
310*b843c749SSergey Zigachev #define mmJPEG_CGC_CTRL                                                                                0x0565
311*b843c749SSergey Zigachev #define mmJPEG_CGC_CTRL_BASE_IDX                                                                       1
312*b843c749SSergey Zigachev #define mmUVD_LMI_CTRL                                                                                 0x0566
313*b843c749SSergey Zigachev #define mmUVD_LMI_CTRL_BASE_IDX                                                                        1
314*b843c749SSergey Zigachev #define mmUVD_LMI_STATUS                                                                               0x0567
315*b843c749SSergey Zigachev #define mmUVD_LMI_STATUS_BASE_IDX                                                                      1
316*b843c749SSergey Zigachev #define mmUVD_LMI_VM_CTRL                                                                              0x0568
317*b843c749SSergey Zigachev #define mmUVD_LMI_VM_CTRL_BASE_IDX                                                                     1
318*b843c749SSergey Zigachev #define mmUVD_LMI_SWAP_CNTL                                                                            0x056d
319*b843c749SSergey Zigachev #define mmUVD_LMI_SWAP_CNTL_BASE_IDX                                                                   1
320*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXA0                                                                            0x0579
321*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXA0_BASE_IDX                                                                   1
322*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXA1                                                                            0x057a
323*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXA1_BASE_IDX                                                                   1
324*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXB0                                                                            0x057b
325*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXB0_BASE_IDX                                                                   1
326*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXB1                                                                            0x057c
327*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUXB1_BASE_IDX                                                                   1
328*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUX                                                                              0x057d
329*b843c749SSergey Zigachev #define mmUVD_MPC_SET_MUX_BASE_IDX                                                                     1
330*b843c749SSergey Zigachev #define mmUVD_MPC_SET_ALU                                                                              0x057e
331*b843c749SSergey Zigachev #define mmUVD_MPC_SET_ALU_BASE_IDX                                                                     1
332*b843c749SSergey Zigachev #define mmUVD_GPCOM_SYS_CMD                                                                            0x057f
333*b843c749SSergey Zigachev #define mmUVD_GPCOM_SYS_CMD_BASE_IDX                                                                   1
334*b843c749SSergey Zigachev #define mmUVD_GPCOM_SYS_DATA0                                                                          0x0580
335*b843c749SSergey Zigachev #define mmUVD_GPCOM_SYS_DATA0_BASE_IDX                                                                 1
336*b843c749SSergey Zigachev #define mmUVD_GPCOM_SYS_DATA1                                                                          0x0581
337*b843c749SSergey Zigachev #define mmUVD_GPCOM_SYS_DATA1_BASE_IDX                                                                 1
338*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_OFFSET0                                                                       0x0582
339*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_OFFSET0_BASE_IDX                                                              1
340*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_SIZE0                                                                         0x0583
341*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_SIZE0_BASE_IDX                                                                1
342*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_OFFSET1                                                                       0x0584
343*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_OFFSET1_BASE_IDX                                                              1
344*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_SIZE1                                                                         0x0585
345*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_SIZE1_BASE_IDX                                                                1
346*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_OFFSET2                                                                       0x0586
347*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_OFFSET2_BASE_IDX                                                              1
348*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_SIZE2                                                                         0x0587
349*b843c749SSergey Zigachev #define mmUVD_VCPU_CACHE_SIZE2_BASE_IDX                                                                1
350*b843c749SSergey Zigachev #define mmUVD_VCPU_CNTL                                                                                0x0598
351*b843c749SSergey Zigachev #define mmUVD_VCPU_CNTL_BASE_IDX                                                                       1
352*b843c749SSergey Zigachev #define mmUVD_SOFT_RESET                                                                               0x05a0
353*b843c749SSergey Zigachev #define mmUVD_SOFT_RESET_BASE_IDX                                                                      1
354*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_IB_VMID                                                                          0x05a1
355*b843c749SSergey Zigachev #define mmUVD_LMI_RBC_IB_VMID_BASE_IDX                                                                 1
356*b843c749SSergey Zigachev #define mmUVD_RBC_IB_SIZE                                                                              0x05a2
357*b843c749SSergey Zigachev #define mmUVD_RBC_IB_SIZE_BASE_IDX                                                                     1
358*b843c749SSergey Zigachev #define mmUVD_RBC_RB_RPTR                                                                              0x05a4
359*b843c749SSergey Zigachev #define mmUVD_RBC_RB_RPTR_BASE_IDX                                                                     1
360*b843c749SSergey Zigachev #define mmUVD_RBC_RB_WPTR                                                                              0x05a5
361*b843c749SSergey Zigachev #define mmUVD_RBC_RB_WPTR_BASE_IDX                                                                     1
362*b843c749SSergey Zigachev #define mmUVD_RBC_RB_WPTR_CNTL                                                                         0x05a6
363*b843c749SSergey Zigachev #define mmUVD_RBC_RB_WPTR_CNTL_BASE_IDX                                                                1
364*b843c749SSergey Zigachev #define mmUVD_RBC_RB_CNTL                                                                              0x05a9
365*b843c749SSergey Zigachev #define mmUVD_RBC_RB_CNTL_BASE_IDX                                                                     1
366*b843c749SSergey Zigachev #define mmUVD_RBC_RB_RPTR_ADDR                                                                         0x05aa
367*b843c749SSergey Zigachev #define mmUVD_RBC_RB_RPTR_ADDR_BASE_IDX                                                                1
368*b843c749SSergey Zigachev #define mmUVD_STATUS                                                                                   0x05af
369*b843c749SSergey Zigachev #define mmUVD_STATUS_BASE_IDX                                                                          1
370*b843c749SSergey Zigachev #define mmUVD_SEMA_TIMEOUT_STATUS                                                                      0x05b0
371*b843c749SSergey Zigachev #define mmUVD_SEMA_TIMEOUT_STATUS_BASE_IDX                                                             1
372*b843c749SSergey Zigachev #define mmUVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL                                                        0x05b1
373*b843c749SSergey Zigachev #define mmUVD_SEMA_WAIT_INCOMPLETE_TIMEOUT_CNTL_BASE_IDX                                               1
374*b843c749SSergey Zigachev #define mmUVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL                                                             0x05b2
375*b843c749SSergey Zigachev #define mmUVD_SEMA_WAIT_FAULT_TIMEOUT_CNTL_BASE_IDX                                                    1
376*b843c749SSergey Zigachev #define mmUVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL                                                      0x05b3
377*b843c749SSergey Zigachev #define mmUVD_SEMA_SIGNAL_INCOMPLETE_TIMEOUT_CNTL_BASE_IDX                                             1
378*b843c749SSergey Zigachev #define mmUVD_CONTEXT_ID                                                                               0x05bd
379*b843c749SSergey Zigachev #define mmUVD_CONTEXT_ID_BASE_IDX                                                                      1
380*b843c749SSergey Zigachev #define mmUVD_CONTEXT_ID2                                                                              0x05bf
381*b843c749SSergey Zigachev #define mmUVD_CONTEXT_ID2_BASE_IDX                                                                     1
382*b843c749SSergey Zigachev #define mmUVD_RBC_WPTR_POLL_CNTL                                                                       0x05d8
383*b843c749SSergey Zigachev #define mmUVD_RBC_WPTR_POLL_CNTL_BASE_IDX                                                              1
384*b843c749SSergey Zigachev #define mmUVD_RBC_WPTR_POLL_ADDR                                                                       0x05d9
385*b843c749SSergey Zigachev #define mmUVD_RBC_WPTR_POLL_ADDR_BASE_IDX                                                              1
386*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO4                                                                              0x05df
387*b843c749SSergey Zigachev #define mmUVD_RB_BASE_LO4_BASE_IDX                                                                     1
388*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI4                                                                              0x05e0
389*b843c749SSergey Zigachev #define mmUVD_RB_BASE_HI4_BASE_IDX                                                                     1
390*b843c749SSergey Zigachev #define mmUVD_RB_SIZE4                                                                                 0x05e1
391*b843c749SSergey Zigachev #define mmUVD_RB_SIZE4_BASE_IDX                                                                        1
392*b843c749SSergey Zigachev #define mmUVD_RB_RPTR4                                                                                 0x05e2
393*b843c749SSergey Zigachev #define mmUVD_RB_RPTR4_BASE_IDX                                                                        1
394*b843c749SSergey Zigachev 
395*b843c749SSergey Zigachev 
396*b843c749SSergey Zigachev #endif
397