xref: /rockchip-linux_mpp/mpp/hal/vpu/av1d/hal_av1d_vdpu_reg.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
1*437bfbebSnyanmisaka /*
2*437bfbebSnyanmisaka  * Copyright 2020 Rockchip Electronics Co. LTD
3*437bfbebSnyanmisaka  *
4*437bfbebSnyanmisaka  * Licensed under the Apache License, Version 2.0 (the "License");
5*437bfbebSnyanmisaka  * you may not use this file except in compliance with the License.
6*437bfbebSnyanmisaka  * You may obtain a copy of the License at
7*437bfbebSnyanmisaka  *
8*437bfbebSnyanmisaka  *      http://www.apache.org/licenses/LICENSE-2.0
9*437bfbebSnyanmisaka  *
10*437bfbebSnyanmisaka  * Unless required by applicable law or agreed to in writing, software
11*437bfbebSnyanmisaka  * distributed under the License is distributed on an "AS IS" BASIS,
12*437bfbebSnyanmisaka  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*437bfbebSnyanmisaka  * See the License for the specific language governing permissions and
14*437bfbebSnyanmisaka  * limitations under the License.
15*437bfbebSnyanmisaka  */
16*437bfbebSnyanmisaka 
17*437bfbebSnyanmisaka #ifndef __HAL_AV1D_VDPU_REG_H__
18*437bfbebSnyanmisaka #define __HAL_AV1D_VDPU_REG_H__
19*437bfbebSnyanmisaka 
20*437bfbebSnyanmisaka #include "mpp_device.h"
21*437bfbebSnyanmisaka 
22*437bfbebSnyanmisaka /* swreg64 - swreg183 */
23*437bfbebSnyanmisaka typedef struct VdpuAv1dBase_t {
24*437bfbebSnyanmisaka     struct {
25*437bfbebSnyanmisaka         RK_U32 sw_dec_out_ybase_msb   : 32;
26*437bfbebSnyanmisaka     } swreg64;
27*437bfbebSnyanmisaka 
28*437bfbebSnyanmisaka     struct {
29*437bfbebSnyanmisaka         RK_U32 sw_dec_out_ybase_lsb   : 32;
30*437bfbebSnyanmisaka     } swreg65;
31*437bfbebSnyanmisaka 
32*437bfbebSnyanmisaka     struct {
33*437bfbebSnyanmisaka         RK_U32 sw_refer0_ybase_msb   : 32;
34*437bfbebSnyanmisaka     } swreg66;
35*437bfbebSnyanmisaka 
36*437bfbebSnyanmisaka     struct {
37*437bfbebSnyanmisaka         RK_U32 sw_refer0_ybase_lsb   : 32;
38*437bfbebSnyanmisaka     } swreg67;
39*437bfbebSnyanmisaka 
40*437bfbebSnyanmisaka     struct {
41*437bfbebSnyanmisaka         RK_U32 sw_refer1_ybase_msb   : 32;
42*437bfbebSnyanmisaka     } swreg68;
43*437bfbebSnyanmisaka 
44*437bfbebSnyanmisaka     struct {
45*437bfbebSnyanmisaka         RK_U32 sw_refer1_ybase_lsb   : 32;
46*437bfbebSnyanmisaka     } swreg69;
47*437bfbebSnyanmisaka 
48*437bfbebSnyanmisaka     struct {
49*437bfbebSnyanmisaka         RK_U32 sw_refer2_ybase_msb   : 32;
50*437bfbebSnyanmisaka     } swreg70;
51*437bfbebSnyanmisaka 
52*437bfbebSnyanmisaka     struct {
53*437bfbebSnyanmisaka         RK_U32 sw_refer2_ybase_lsb   : 32;
54*437bfbebSnyanmisaka     } swreg71;
55*437bfbebSnyanmisaka 
56*437bfbebSnyanmisaka     struct {
57*437bfbebSnyanmisaka         RK_U32 sw_refer3_ybase_msb   : 32;
58*437bfbebSnyanmisaka     } swreg72;
59*437bfbebSnyanmisaka 
60*437bfbebSnyanmisaka     struct {
61*437bfbebSnyanmisaka         RK_U32 sw_refer3_ybase_lsb   : 32;
62*437bfbebSnyanmisaka     } swreg73;
63*437bfbebSnyanmisaka 
64*437bfbebSnyanmisaka     struct {
65*437bfbebSnyanmisaka         RK_U32 sw_refer4_ybase_msb   : 32;
66*437bfbebSnyanmisaka     } swreg74;
67*437bfbebSnyanmisaka 
68*437bfbebSnyanmisaka     struct {
69*437bfbebSnyanmisaka         RK_U32 sw_refer4_ybase_lsb   : 32;
70*437bfbebSnyanmisaka     } swreg75;
71*437bfbebSnyanmisaka 
72*437bfbebSnyanmisaka     struct {
73*437bfbebSnyanmisaka         RK_U32 sw_refer5_ybase_msb   : 32;
74*437bfbebSnyanmisaka     } swreg76;
75*437bfbebSnyanmisaka 
76*437bfbebSnyanmisaka     struct {
77*437bfbebSnyanmisaka         RK_U32 sw_refer5_ybase_lsb   : 32;
78*437bfbebSnyanmisaka     } swreg77;
79*437bfbebSnyanmisaka 
80*437bfbebSnyanmisaka     struct {
81*437bfbebSnyanmisaka         RK_U32 sw_refer6_ybase_msb   : 32;
82*437bfbebSnyanmisaka     } swreg78;
83*437bfbebSnyanmisaka 
84*437bfbebSnyanmisaka     struct {
85*437bfbebSnyanmisaka         RK_U32 sw_refer6_ybase_lsb   : 32;
86*437bfbebSnyanmisaka     } swreg79;
87*437bfbebSnyanmisaka 
88*437bfbebSnyanmisaka     struct {
89*437bfbebSnyanmisaka         RK_U32 sw_segment_read_base_msb   : 32;
90*437bfbebSnyanmisaka     } swreg80;
91*437bfbebSnyanmisaka 
92*437bfbebSnyanmisaka     struct {
93*437bfbebSnyanmisaka         RK_U32 sw_segment_read_base_lsb   : 32;
94*437bfbebSnyanmisaka     } swreg81;
95*437bfbebSnyanmisaka 
96*437bfbebSnyanmisaka     struct {
97*437bfbebSnyanmisaka         RK_U32 sw_global_model_base_msb   : 32;
98*437bfbebSnyanmisaka     } swreg82;
99*437bfbebSnyanmisaka 
100*437bfbebSnyanmisaka     struct {
101*437bfbebSnyanmisaka         RK_U32 sw_global_model_base_lsb   : 32;
102*437bfbebSnyanmisaka     } swreg83;
103*437bfbebSnyanmisaka 
104*437bfbebSnyanmisaka     struct {
105*437bfbebSnyanmisaka         RK_U32 sw_cdef_colbuf_base_msb   : 32;
106*437bfbebSnyanmisaka     } swreg84;
107*437bfbebSnyanmisaka 
108*437bfbebSnyanmisaka     struct {
109*437bfbebSnyanmisaka         RK_U32 sw_cdef_colbuf_base_lsb   : 32;
110*437bfbebSnyanmisaka     } swreg85;
111*437bfbebSnyanmisaka 
112*437bfbebSnyanmisaka     struct {
113*437bfbebSnyanmisaka         RK_U32 sw_cdef_left_colbuf_base_msb   : 32;
114*437bfbebSnyanmisaka     } swreg86;
115*437bfbebSnyanmisaka 
116*437bfbebSnyanmisaka     struct {
117*437bfbebSnyanmisaka         RK_U32 sw_cdef_left_colbuf_base_lsb   : 32;
118*437bfbebSnyanmisaka     } swreg87;
119*437bfbebSnyanmisaka 
120*437bfbebSnyanmisaka     struct {
121*437bfbebSnyanmisaka         RK_U32 sw_superres_colbuf_base_msb   : 32;
122*437bfbebSnyanmisaka     } swreg88;
123*437bfbebSnyanmisaka 
124*437bfbebSnyanmisaka     struct {
125*437bfbebSnyanmisaka         RK_U32 sw_superres_colbuf_base_lsb   : 32;
126*437bfbebSnyanmisaka     } swreg89;
127*437bfbebSnyanmisaka 
128*437bfbebSnyanmisaka     struct {
129*437bfbebSnyanmisaka         RK_U32 sw_lr_colbuf_base_msb   : 32;
130*437bfbebSnyanmisaka     } swreg90;
131*437bfbebSnyanmisaka 
132*437bfbebSnyanmisaka     struct {
133*437bfbebSnyanmisaka         RK_U32 sw_lr_colbuf_base_lsb   : 32;
134*437bfbebSnyanmisaka     } swreg91;
135*437bfbebSnyanmisaka 
136*437bfbebSnyanmisaka     struct {
137*437bfbebSnyanmisaka         RK_U32 sw_superres_left_colbuf_base_msb   : 32;
138*437bfbebSnyanmisaka     } swreg92;
139*437bfbebSnyanmisaka 
140*437bfbebSnyanmisaka     struct {
141*437bfbebSnyanmisaka         RK_U32 sw_superres_left_colbuf_base_lsb   : 32;
142*437bfbebSnyanmisaka     } swreg93;
143*437bfbebSnyanmisaka 
144*437bfbebSnyanmisaka     struct {
145*437bfbebSnyanmisaka         RK_U32 sw_filmgrain_base_msb   : 32;
146*437bfbebSnyanmisaka     } swreg94;
147*437bfbebSnyanmisaka 
148*437bfbebSnyanmisaka     struct {
149*437bfbebSnyanmisaka         RK_U32 sw_filmgrain_base_lsb   : 32;
150*437bfbebSnyanmisaka     } swreg95;
151*437bfbebSnyanmisaka 
152*437bfbebSnyanmisaka     struct {
153*437bfbebSnyanmisaka         RK_U32 sw_lr_left_colbuf_base_msb   : 32;
154*437bfbebSnyanmisaka     } swreg96;
155*437bfbebSnyanmisaka 
156*437bfbebSnyanmisaka     struct {
157*437bfbebSnyanmisaka         RK_U32 sw_lr_left_colbuf_base_lsb   : 32;
158*437bfbebSnyanmisaka     } swreg97;
159*437bfbebSnyanmisaka 
160*437bfbebSnyanmisaka     struct {
161*437bfbebSnyanmisaka         RK_U32 sw_dec_out_cbase_msb   : 32;
162*437bfbebSnyanmisaka     } swreg98;
163*437bfbebSnyanmisaka 
164*437bfbebSnyanmisaka     struct {
165*437bfbebSnyanmisaka         RK_U32 sw_dec_out_cbase_lsb   : 32;
166*437bfbebSnyanmisaka     } swreg99;
167*437bfbebSnyanmisaka 
168*437bfbebSnyanmisaka     struct {
169*437bfbebSnyanmisaka         RK_U32 sw_refer0_cbase_msb   : 32;
170*437bfbebSnyanmisaka     } swreg100;
171*437bfbebSnyanmisaka 
172*437bfbebSnyanmisaka     struct {
173*437bfbebSnyanmisaka         RK_U32 sw_refer0_cbase_lsb   : 32;
174*437bfbebSnyanmisaka     } swreg101;
175*437bfbebSnyanmisaka 
176*437bfbebSnyanmisaka     struct {
177*437bfbebSnyanmisaka         RK_U32 sw_refer1_cbase_msb   : 32;
178*437bfbebSnyanmisaka     } swreg102;
179*437bfbebSnyanmisaka 
180*437bfbebSnyanmisaka     struct {
181*437bfbebSnyanmisaka         RK_U32 sw_refer1_cbase_lsb   : 32;
182*437bfbebSnyanmisaka     } swreg103;
183*437bfbebSnyanmisaka 
184*437bfbebSnyanmisaka     struct {
185*437bfbebSnyanmisaka         RK_U32 sw_refer2_cbase_msb   : 32;
186*437bfbebSnyanmisaka     } swreg104;
187*437bfbebSnyanmisaka 
188*437bfbebSnyanmisaka     struct {
189*437bfbebSnyanmisaka         RK_U32 sw_refer2_cbase_lsb   : 32;
190*437bfbebSnyanmisaka     } swreg105;
191*437bfbebSnyanmisaka 
192*437bfbebSnyanmisaka     struct {
193*437bfbebSnyanmisaka         RK_U32 sw_refer3_cbase_msb   : 32;
194*437bfbebSnyanmisaka     } swreg106;
195*437bfbebSnyanmisaka 
196*437bfbebSnyanmisaka     struct {
197*437bfbebSnyanmisaka         RK_U32 sw_refer3_cbase_lsb   : 32;
198*437bfbebSnyanmisaka     } swreg107;
199*437bfbebSnyanmisaka 
200*437bfbebSnyanmisaka     struct {
201*437bfbebSnyanmisaka         RK_U32 sw_refer4_cbase_msb   : 32;
202*437bfbebSnyanmisaka     } swreg108;
203*437bfbebSnyanmisaka 
204*437bfbebSnyanmisaka     struct {
205*437bfbebSnyanmisaka         RK_U32 sw_refer4_cbase_lsb   : 32;
206*437bfbebSnyanmisaka     } swreg109;
207*437bfbebSnyanmisaka 
208*437bfbebSnyanmisaka     struct {
209*437bfbebSnyanmisaka         RK_U32 sw_refer5_cbase_msb   : 32;
210*437bfbebSnyanmisaka     } swreg110;
211*437bfbebSnyanmisaka 
212*437bfbebSnyanmisaka     struct {
213*437bfbebSnyanmisaka         RK_U32 sw_refer5_cbase_lsb   : 32;
214*437bfbebSnyanmisaka     } swreg111;
215*437bfbebSnyanmisaka 
216*437bfbebSnyanmisaka     struct {
217*437bfbebSnyanmisaka         RK_U32 sw_refer6_cbase_msb   : 32;
218*437bfbebSnyanmisaka     } swreg112;
219*437bfbebSnyanmisaka 
220*437bfbebSnyanmisaka     struct {
221*437bfbebSnyanmisaka         RK_U32 sw_refer6_cbase_lsb   : 32;
222*437bfbebSnyanmisaka     } swreg113;
223*437bfbebSnyanmisaka 
224*437bfbebSnyanmisaka     struct {
225*437bfbebSnyanmisaka         RK_U32 sw_dec_left_vert_filt_base_msb   : 32;
226*437bfbebSnyanmisaka     } swreg114;
227*437bfbebSnyanmisaka 
228*437bfbebSnyanmisaka     struct {
229*437bfbebSnyanmisaka         RK_U32 sw_dec_left_vert_filt_base_lsb   : 32;
230*437bfbebSnyanmisaka     } swreg115;
231*437bfbebSnyanmisaka 
232*437bfbebSnyanmisaka     struct {
233*437bfbebSnyanmisaka         RK_U32 sw_dec_left_bsd_ctrl_base_msb   : 32;
234*437bfbebSnyanmisaka     } swreg116;
235*437bfbebSnyanmisaka 
236*437bfbebSnyanmisaka     struct {
237*437bfbebSnyanmisaka         RK_U32 sw_dec_left_bsd_ctrl_base_lsb   : 32;
238*437bfbebSnyanmisaka     } swreg117;
239*437bfbebSnyanmisaka 
240*437bfbebSnyanmisaka     RK_U32 reserved_118_131[14];
241*437bfbebSnyanmisaka     struct {
242*437bfbebSnyanmisaka         RK_U32 sw_dec_out_dbase_msb   : 32;
243*437bfbebSnyanmisaka     } swreg132;
244*437bfbebSnyanmisaka 
245*437bfbebSnyanmisaka     struct {
246*437bfbebSnyanmisaka         RK_U32 sw_dec_out_dbase_lsb   : 32;
247*437bfbebSnyanmisaka     } swreg133;
248*437bfbebSnyanmisaka 
249*437bfbebSnyanmisaka     struct {
250*437bfbebSnyanmisaka         RK_U32 sw_refer0_dbase_msb   : 32;
251*437bfbebSnyanmisaka     } swreg134;
252*437bfbebSnyanmisaka 
253*437bfbebSnyanmisaka     struct {
254*437bfbebSnyanmisaka         RK_U32 sw_refer0_dbase_lsb   : 32;
255*437bfbebSnyanmisaka     } swreg135;
256*437bfbebSnyanmisaka 
257*437bfbebSnyanmisaka     struct {
258*437bfbebSnyanmisaka         RK_U32 sw_refer1_dbase_msb   : 32;
259*437bfbebSnyanmisaka     } swreg136;
260*437bfbebSnyanmisaka 
261*437bfbebSnyanmisaka     struct {
262*437bfbebSnyanmisaka         RK_U32 sw_refer1_dbase_lsb   : 32;
263*437bfbebSnyanmisaka     } swreg137;
264*437bfbebSnyanmisaka 
265*437bfbebSnyanmisaka     struct {
266*437bfbebSnyanmisaka         RK_U32 sw_refer2_dbase_msb   : 32;
267*437bfbebSnyanmisaka     } swreg138;
268*437bfbebSnyanmisaka 
269*437bfbebSnyanmisaka     struct {
270*437bfbebSnyanmisaka         RK_U32 sw_refer2_dbase_lsb   : 32;
271*437bfbebSnyanmisaka     } swreg139;
272*437bfbebSnyanmisaka 
273*437bfbebSnyanmisaka     struct {
274*437bfbebSnyanmisaka         RK_U32 sw_refer3_dbase_msb   : 32;
275*437bfbebSnyanmisaka     } swreg140;
276*437bfbebSnyanmisaka 
277*437bfbebSnyanmisaka     struct {
278*437bfbebSnyanmisaka         RK_U32 sw_refer3_dbase_lsb   : 32;
279*437bfbebSnyanmisaka     } swreg141;
280*437bfbebSnyanmisaka 
281*437bfbebSnyanmisaka     struct {
282*437bfbebSnyanmisaka         RK_U32 sw_refer4_dbase_msb   : 32;
283*437bfbebSnyanmisaka     } swreg142;
284*437bfbebSnyanmisaka 
285*437bfbebSnyanmisaka     struct {
286*437bfbebSnyanmisaka         RK_U32 sw_refer4_dbase_lsb   : 32;
287*437bfbebSnyanmisaka     } swreg143;
288*437bfbebSnyanmisaka 
289*437bfbebSnyanmisaka     struct {
290*437bfbebSnyanmisaka         RK_U32 sw_refer5_dbase_msb   : 32;
291*437bfbebSnyanmisaka     } swreg144;
292*437bfbebSnyanmisaka 
293*437bfbebSnyanmisaka     struct {
294*437bfbebSnyanmisaka         RK_U32 sw_refer5_dbase_lsb   : 32;
295*437bfbebSnyanmisaka     } swreg145;
296*437bfbebSnyanmisaka 
297*437bfbebSnyanmisaka     struct {
298*437bfbebSnyanmisaka         RK_U32 sw_refer6_dbase_msb   : 32;
299*437bfbebSnyanmisaka     } swreg146;
300*437bfbebSnyanmisaka 
301*437bfbebSnyanmisaka     struct {
302*437bfbebSnyanmisaka         RK_U32 sw_refer6_dbase_lsb   : 32;
303*437bfbebSnyanmisaka     } swreg147;
304*437bfbebSnyanmisaka 
305*437bfbebSnyanmisaka     RK_U32 reserved_148_165[18];
306*437bfbebSnyanmisaka     struct {
307*437bfbebSnyanmisaka         RK_U32 sw_tile_base_msb   : 32;
308*437bfbebSnyanmisaka     } swreg166;
309*437bfbebSnyanmisaka 
310*437bfbebSnyanmisaka     struct {
311*437bfbebSnyanmisaka         RK_U32 sw_tile_base_lsb   : 32;
312*437bfbebSnyanmisaka     } swreg167;
313*437bfbebSnyanmisaka 
314*437bfbebSnyanmisaka     struct {
315*437bfbebSnyanmisaka         RK_U32 sw_stream_base_msb   : 32;
316*437bfbebSnyanmisaka     } swreg168;
317*437bfbebSnyanmisaka 
318*437bfbebSnyanmisaka     struct {
319*437bfbebSnyanmisaka         RK_U32 sw_stream_base_lsb   : 32;
320*437bfbebSnyanmisaka     } swreg169;
321*437bfbebSnyanmisaka 
322*437bfbebSnyanmisaka     struct {
323*437bfbebSnyanmisaka         RK_U32 sw_prob_tab_out_base_msb   : 32;
324*437bfbebSnyanmisaka     } swreg170;
325*437bfbebSnyanmisaka 
326*437bfbebSnyanmisaka     struct {
327*437bfbebSnyanmisaka         RK_U32 sw_prob_tab_out_base_lsb   : 32;
328*437bfbebSnyanmisaka     } swreg171;
329*437bfbebSnyanmisaka 
330*437bfbebSnyanmisaka     struct {
331*437bfbebSnyanmisaka         RK_U32 sw_prob_tab_base_msb   : 32;
332*437bfbebSnyanmisaka     } swreg172;
333*437bfbebSnyanmisaka 
334*437bfbebSnyanmisaka     struct {
335*437bfbebSnyanmisaka         RK_U32 sw_prob_tab_base_lsb   : 32;
336*437bfbebSnyanmisaka     } swreg173;
337*437bfbebSnyanmisaka 
338*437bfbebSnyanmisaka     struct {
339*437bfbebSnyanmisaka         RK_U32 sw_mc_sync_curr_base_msb   : 32;
340*437bfbebSnyanmisaka     } swreg174;
341*437bfbebSnyanmisaka 
342*437bfbebSnyanmisaka     struct {
343*437bfbebSnyanmisaka         RK_U32 sw_mc_sync_curr_base_lsb   : 32;
344*437bfbebSnyanmisaka     } swreg175;
345*437bfbebSnyanmisaka 
346*437bfbebSnyanmisaka     struct {
347*437bfbebSnyanmisaka         RK_U32 sw_mc_sync_left_base_msb   : 32;
348*437bfbebSnyanmisaka     } swreg176;
349*437bfbebSnyanmisaka 
350*437bfbebSnyanmisaka     struct {
351*437bfbebSnyanmisaka         RK_U32 sw_mc_sync_left_base_lsb   : 32;
352*437bfbebSnyanmisaka     } swreg177;
353*437bfbebSnyanmisaka 
354*437bfbebSnyanmisaka     struct {
355*437bfbebSnyanmisaka         RK_U32 sw_dec_vert_filt_base_msb   : 32;
356*437bfbebSnyanmisaka     } swreg178;
357*437bfbebSnyanmisaka 
358*437bfbebSnyanmisaka     struct {
359*437bfbebSnyanmisaka         RK_U32 sw_dec_vert_filt_base_lsb   : 32;
360*437bfbebSnyanmisaka     } swreg179;
361*437bfbebSnyanmisaka 
362*437bfbebSnyanmisaka     RK_U32 reserved_180_181[2];
363*437bfbebSnyanmisaka     struct {
364*437bfbebSnyanmisaka         RK_U32 sw_dec_bsd_ctrl_base_msb   : 32;
365*437bfbebSnyanmisaka     } swreg182;
366*437bfbebSnyanmisaka 
367*437bfbebSnyanmisaka     struct {
368*437bfbebSnyanmisaka         RK_U32 sw_dec_bsd_ctrl_base_lsb   : 32;
369*437bfbebSnyanmisaka     } swreg183;
370*437bfbebSnyanmisaka } VdpuAv1dBase;
371*437bfbebSnyanmisaka 
372*437bfbebSnyanmisaka /* swreg320 - swreg511 */
373*437bfbebSnyanmisaka typedef struct VdpuAv1dPPCfg_t {
374*437bfbebSnyanmisaka 
375*437bfbebSnyanmisaka     struct {
376*437bfbebSnyanmisaka         RK_U32 sw_pp_out_e          : 1;
377*437bfbebSnyanmisaka         RK_U32 sw_pp_cr_first       : 1;
378*437bfbebSnyanmisaka         RK_U32 sw_pp_out_mode       : 1;
379*437bfbebSnyanmisaka         RK_U32 sw_pp_out_tile_e     : 1;
380*437bfbebSnyanmisaka         RK_U32 sw_pp_status         : 4;
381*437bfbebSnyanmisaka         RK_U32 sw_pp_in_blk_size    : 3;
382*437bfbebSnyanmisaka         RK_U32 sw_pp_out_p010_fmt   : 2;
383*437bfbebSnyanmisaka         RK_U32 sw_pp_out_rgb_fmt    : 5;
384*437bfbebSnyanmisaka         RK_U32 sw_rgb_range_max     : 12;
385*437bfbebSnyanmisaka         RK_U32 sw_pp_rgb_planar     : 1;
386*437bfbebSnyanmisaka         RK_U32 reserved0            : 1;
387*437bfbebSnyanmisaka     } swreg320;
388*437bfbebSnyanmisaka 
389*437bfbebSnyanmisaka     struct {
390*437bfbebSnyanmisaka         RK_U32 sw_rgb_range_min   : 9;
391*437bfbebSnyanmisaka         RK_U32 sw_pp_tile_size    : 2;
392*437bfbebSnyanmisaka         RK_U32 reserved0          : 5;
393*437bfbebSnyanmisaka         RK_U32 sw_pp_in_swap      : 4;
394*437bfbebSnyanmisaka         RK_U32 sw_pp_out_swap     : 4;
395*437bfbebSnyanmisaka         RK_U32 sw_pp_in_a1_swap   : 4;
396*437bfbebSnyanmisaka         RK_U32 sw_pp_in_a2_swap   : 4;
397*437bfbebSnyanmisaka     } swreg321;
398*437bfbebSnyanmisaka 
399*437bfbebSnyanmisaka     struct {
400*437bfbebSnyanmisaka         RK_U32 sw_scale_hratio     : 18;
401*437bfbebSnyanmisaka         RK_U32 sw_pp_out_format    : 5;
402*437bfbebSnyanmisaka         RK_U32 sw_ver_scale_mode   : 2;
403*437bfbebSnyanmisaka         RK_U32 sw_hor_scale_mode   : 2;
404*437bfbebSnyanmisaka         RK_U32 sw_pp_in_format     : 5;
405*437bfbebSnyanmisaka     } swreg322;
406*437bfbebSnyanmisaka 
407*437bfbebSnyanmisaka     struct {
408*437bfbebSnyanmisaka         RK_U32 sw_scale_wratio      : 18;
409*437bfbebSnyanmisaka         RK_U32 sw_rangemap_coef_c   : 5;
410*437bfbebSnyanmisaka         RK_U32 sw_rangemap_coef_y   : 5;
411*437bfbebSnyanmisaka         RK_U32 sw_pp_vc1_adv_e      : 1;
412*437bfbebSnyanmisaka         RK_U32 sw_ycbcr_range       : 1;
413*437bfbebSnyanmisaka         RK_U32 sw_rangemap_c_e      : 1;
414*437bfbebSnyanmisaka         RK_U32 sw_rangemap_y_e      : 1;
415*437bfbebSnyanmisaka     } swreg323;
416*437bfbebSnyanmisaka 
417*437bfbebSnyanmisaka     struct {
418*437bfbebSnyanmisaka         RK_U32 sw_hscale_invra   : 16;
419*437bfbebSnyanmisaka         RK_U32 sw_wscale_invra   : 16;
420*437bfbebSnyanmisaka     } swreg324;
421*437bfbebSnyanmisaka 
422*437bfbebSnyanmisaka     struct {
423*437bfbebSnyanmisaka         RK_U32 sw_pp_out_lu_base_msb   : 32;
424*437bfbebSnyanmisaka     } swreg325;
425*437bfbebSnyanmisaka 
426*437bfbebSnyanmisaka     struct {
427*437bfbebSnyanmisaka         RK_U32 sw_pp_out_lu_base_lsb   : 32;
428*437bfbebSnyanmisaka     } swreg326;
429*437bfbebSnyanmisaka 
430*437bfbebSnyanmisaka     struct {
431*437bfbebSnyanmisaka         RK_U32 sw_pp_out_ch_base_msb   : 32;
432*437bfbebSnyanmisaka     } swreg327;
433*437bfbebSnyanmisaka 
434*437bfbebSnyanmisaka     struct {
435*437bfbebSnyanmisaka         RK_U32 sw_pp_out_ch_base_lsb   : 32;
436*437bfbebSnyanmisaka     } swreg328;
437*437bfbebSnyanmisaka 
438*437bfbebSnyanmisaka     struct {
439*437bfbebSnyanmisaka         RK_U32 sw_pp_out_c_stride   : 16;
440*437bfbebSnyanmisaka         RK_U32 sw_pp_out_y_stride   : 16;
441*437bfbebSnyanmisaka     } swreg329;
442*437bfbebSnyanmisaka 
443*437bfbebSnyanmisaka     struct {
444*437bfbebSnyanmisaka         RK_U32 sw_crop_starty     : 13;
445*437bfbebSnyanmisaka         RK_U32 sw_rotation_mode   : 2;
446*437bfbebSnyanmisaka         RK_U32 reserved0          : 1;
447*437bfbebSnyanmisaka         RK_U32 sw_crop_startx     : 13;
448*437bfbebSnyanmisaka         RK_U32 sw_flip_mode       : 2;
449*437bfbebSnyanmisaka         RK_U32 sw_pad_sel         : 1;
450*437bfbebSnyanmisaka     } swreg330;
451*437bfbebSnyanmisaka 
452*437bfbebSnyanmisaka     struct {
453*437bfbebSnyanmisaka         RK_U32 sw_pp_in_height   : 16;
454*437bfbebSnyanmisaka         RK_U32 sw_pp_in_width    : 16;
455*437bfbebSnyanmisaka     } swreg331;
456*437bfbebSnyanmisaka 
457*437bfbebSnyanmisaka     struct {
458*437bfbebSnyanmisaka         RK_U32 sw_pp_out_height   : 16;
459*437bfbebSnyanmisaka         RK_U32 sw_pp_out_width    : 16;
460*437bfbebSnyanmisaka     } swreg332;
461*437bfbebSnyanmisaka 
462*437bfbebSnyanmisaka     struct {
463*437bfbebSnyanmisaka         RK_U32 sw_pp_out_lu_bot_base_msb   : 32;
464*437bfbebSnyanmisaka     } swreg333;
465*437bfbebSnyanmisaka 
466*437bfbebSnyanmisaka     struct {
467*437bfbebSnyanmisaka         RK_U32 sw_pp_out_lu_bot_base_lsb   : 32;
468*437bfbebSnyanmisaka     } swreg334;
469*437bfbebSnyanmisaka 
470*437bfbebSnyanmisaka     struct {
471*437bfbebSnyanmisaka         RK_U32 sw_pp_crop2_starty          : 13;
472*437bfbebSnyanmisaka         RK_U32 reserved0                   : 3;
473*437bfbebSnyanmisaka         RK_U32 sw_pp_crop2_startx          : 13;
474*437bfbebSnyanmisaka         RK_U32 reserved1                   : 3;
475*437bfbebSnyanmisaka         // RK_U32 sw_pp_out_ch_bot_base_msb   : 32;
476*437bfbebSnyanmisaka     } swreg335;
477*437bfbebSnyanmisaka 
478*437bfbebSnyanmisaka     struct {
479*437bfbebSnyanmisaka         RK_U32 sw_pp_crop2_out_height      : 16;
480*437bfbebSnyanmisaka         RK_U32 sw_pp_crop2_out_width       : 16;
481*437bfbebSnyanmisaka         // RK_U32 sw_pp_out_ch_bot_base_lsb   : 32;
482*437bfbebSnyanmisaka     } swreg336;
483*437bfbebSnyanmisaka 
484*437bfbebSnyanmisaka     struct {
485*437bfbebSnyanmisaka         RK_U32 sw_pp_in_c_stride   : 16;
486*437bfbebSnyanmisaka         RK_U32 sw_pp_in_y_stride   : 16;
487*437bfbebSnyanmisaka     } swreg337;
488*437bfbebSnyanmisaka 
489*437bfbebSnyanmisaka     struct {
490*437bfbebSnyanmisaka         RK_U32 sw_pp_in_lu_base_msb   : 32;
491*437bfbebSnyanmisaka     } swreg338;
492*437bfbebSnyanmisaka 
493*437bfbebSnyanmisaka     struct {
494*437bfbebSnyanmisaka         RK_U32 sw_pp_in_lu_base_lsb   : 32;
495*437bfbebSnyanmisaka     } swreg339;
496*437bfbebSnyanmisaka 
497*437bfbebSnyanmisaka     struct {
498*437bfbebSnyanmisaka         RK_U32 sw_pp_in_ch_base_msb   : 32;
499*437bfbebSnyanmisaka     } swreg340;
500*437bfbebSnyanmisaka 
501*437bfbebSnyanmisaka     struct {
502*437bfbebSnyanmisaka         RK_U32 sw_pp_in_ch_base_lsb   : 32;
503*437bfbebSnyanmisaka     } swreg341;
504*437bfbebSnyanmisaka 
505*437bfbebSnyanmisaka     struct {
506*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_e          : 1;
507*437bfbebSnyanmisaka         RK_U32 sw_pp1_cr_first       : 1;
508*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_mode       : 1;
509*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_tile_e     : 1;
510*437bfbebSnyanmisaka         RK_U32 reserved0             : 7;
511*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_p010_fmt   : 2;
512*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_rgb_fmt    : 5;
513*437bfbebSnyanmisaka         RK_U32 reserved1             : 12;
514*437bfbebSnyanmisaka         RK_U32 sw_pp1_rgb_planar     : 1;
515*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
516*437bfbebSnyanmisaka     } swreg342;
517*437bfbebSnyanmisaka 
518*437bfbebSnyanmisaka     struct {
519*437bfbebSnyanmisaka         RK_U32 reserved0          : 9;
520*437bfbebSnyanmisaka         RK_U32 sw_pp1_tile_size   : 2;
521*437bfbebSnyanmisaka         RK_U32 reserved1          : 9;
522*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_swap    : 4;
523*437bfbebSnyanmisaka         RK_U32 reserved2          : 8;
524*437bfbebSnyanmisaka     } swreg343;
525*437bfbebSnyanmisaka 
526*437bfbebSnyanmisaka     struct {
527*437bfbebSnyanmisaka         RK_U32 sw_pp1_scale_hratio     : 18;
528*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_format       : 5;
529*437bfbebSnyanmisaka         RK_U32 sw_pp1_ver_scale_mode   : 2;
530*437bfbebSnyanmisaka         RK_U32 sw_pp1_hor_scale_mode   : 2;
531*437bfbebSnyanmisaka         RK_U32 reserved0               : 5;
532*437bfbebSnyanmisaka     } swreg344;
533*437bfbebSnyanmisaka 
534*437bfbebSnyanmisaka     struct {
535*437bfbebSnyanmisaka         RK_U32 sw_pp1_scale_wratio   : 18;
536*437bfbebSnyanmisaka         RK_U32 reserved0             : 14;
537*437bfbebSnyanmisaka     } swreg345;
538*437bfbebSnyanmisaka 
539*437bfbebSnyanmisaka     struct {
540*437bfbebSnyanmisaka         RK_U32 sw_pp1_hscale_invra   : 16;
541*437bfbebSnyanmisaka         RK_U32 sw_pp1_wscale_invra   : 16;
542*437bfbebSnyanmisaka     } swreg346;
543*437bfbebSnyanmisaka 
544*437bfbebSnyanmisaka     struct {
545*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_lu_base_msb   : 32;
546*437bfbebSnyanmisaka     } swreg347;
547*437bfbebSnyanmisaka 
548*437bfbebSnyanmisaka     struct {
549*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_lu_base_lsb   : 32;
550*437bfbebSnyanmisaka     } swreg348;
551*437bfbebSnyanmisaka 
552*437bfbebSnyanmisaka     struct {
553*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_ch_base_msb   : 32;
554*437bfbebSnyanmisaka     } swreg349;
555*437bfbebSnyanmisaka 
556*437bfbebSnyanmisaka     struct {
557*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_ch_base_lsb   : 32;
558*437bfbebSnyanmisaka     } swreg350;
559*437bfbebSnyanmisaka 
560*437bfbebSnyanmisaka     struct {
561*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_c_stride   : 16;
562*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_y_stride   : 16;
563*437bfbebSnyanmisaka     } swreg351;
564*437bfbebSnyanmisaka 
565*437bfbebSnyanmisaka     struct {
566*437bfbebSnyanmisaka         RK_U32 sw_pp1_crop_starty     : 13;
567*437bfbebSnyanmisaka         RK_U32 sw_pp1_rotation_mode   : 2;
568*437bfbebSnyanmisaka         RK_U32 reserved0              : 1;
569*437bfbebSnyanmisaka         RK_U32 sw_pp1_crop_startx     : 13;
570*437bfbebSnyanmisaka         RK_U32 sw_pp1_flip_mode       : 2;
571*437bfbebSnyanmisaka         RK_U32 sw_pp1_pad_sel         : 1;
572*437bfbebSnyanmisaka     } swreg352;
573*437bfbebSnyanmisaka 
574*437bfbebSnyanmisaka     struct {
575*437bfbebSnyanmisaka         RK_U32 sw_pp1_in_height   : 16;
576*437bfbebSnyanmisaka         RK_U32 sw_pp1_in_width    : 16;
577*437bfbebSnyanmisaka     } swreg353;
578*437bfbebSnyanmisaka 
579*437bfbebSnyanmisaka     struct {
580*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_height   : 16;
581*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_width    : 16;
582*437bfbebSnyanmisaka     } swreg354;
583*437bfbebSnyanmisaka 
584*437bfbebSnyanmisaka     struct {
585*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_lu_bot_base_msb   : 32;
586*437bfbebSnyanmisaka     } swreg355;
587*437bfbebSnyanmisaka 
588*437bfbebSnyanmisaka     struct {
589*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_lu_bot_base_lsb   : 32;
590*437bfbebSnyanmisaka     } swreg356;
591*437bfbebSnyanmisaka 
592*437bfbebSnyanmisaka     struct {
593*437bfbebSnyanmisaka         RK_U32 sw_pp1_crop2_starty          : 13;
594*437bfbebSnyanmisaka         RK_U32 reserved0                    : 3;
595*437bfbebSnyanmisaka         RK_U32 sw_pp1_crop2_startx          : 13;
596*437bfbebSnyanmisaka         RK_U32 reserved1                    : 3;
597*437bfbebSnyanmisaka         // RK_U32 sw_pp1_out_ch_bot_base_msb   : 32;
598*437bfbebSnyanmisaka     } swreg357;
599*437bfbebSnyanmisaka 
600*437bfbebSnyanmisaka     struct {
601*437bfbebSnyanmisaka         RK_U32 sw_pp1_crop2_out_height      : 16;
602*437bfbebSnyanmisaka         RK_U32 sw_pp1_crop2_out_width       : 16;
603*437bfbebSnyanmisaka         // RK_U32 sw_pp1_out_ch_bot_base_lsb   : 32;
604*437bfbebSnyanmisaka     } swreg358;
605*437bfbebSnyanmisaka 
606*437bfbebSnyanmisaka     struct {
607*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_e          : 1;
608*437bfbebSnyanmisaka         RK_U32 sw_pp2_cr_first       : 1;
609*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_mode       : 1;
610*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_tile_e     : 1;
611*437bfbebSnyanmisaka         RK_U32 reserved0             : 7;
612*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_p010_fmt   : 2;
613*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_rgb_fmt    : 5;
614*437bfbebSnyanmisaka         RK_U32 reserved1             : 12;
615*437bfbebSnyanmisaka         RK_U32 sw_pp2_rgb_planar     : 1;
616*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
617*437bfbebSnyanmisaka     } swreg359;
618*437bfbebSnyanmisaka 
619*437bfbebSnyanmisaka     struct {
620*437bfbebSnyanmisaka         RK_U32 reserved0          : 9;
621*437bfbebSnyanmisaka         RK_U32 sw_pp2_tile_size   : 2;
622*437bfbebSnyanmisaka         RK_U32 reserved1          : 9;
623*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_swap    : 4;
624*437bfbebSnyanmisaka         RK_U32 reserved2          : 8;
625*437bfbebSnyanmisaka     } swreg360;
626*437bfbebSnyanmisaka 
627*437bfbebSnyanmisaka     struct {
628*437bfbebSnyanmisaka         RK_U32 sw_pp2_scale_hratio     : 18;
629*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_format       : 5;
630*437bfbebSnyanmisaka         RK_U32 sw_pp2_ver_scale_mode   : 2;
631*437bfbebSnyanmisaka         RK_U32 sw_pp2_hor_scale_mode   : 2;
632*437bfbebSnyanmisaka         RK_U32 reserved0               : 5;
633*437bfbebSnyanmisaka     } swreg361;
634*437bfbebSnyanmisaka 
635*437bfbebSnyanmisaka     struct {
636*437bfbebSnyanmisaka         RK_U32 sw_pp2_scale_wratio   : 18;
637*437bfbebSnyanmisaka         RK_U32 reserved0             : 5;
638*437bfbebSnyanmisaka         RK_U32 reserved1             : 5;
639*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
640*437bfbebSnyanmisaka         RK_U32 reserved4             : 1;
641*437bfbebSnyanmisaka         RK_U32 reserved3             : 1;
642*437bfbebSnyanmisaka         RK_U32 reserved5             : 1;
643*437bfbebSnyanmisaka     } swreg362;
644*437bfbebSnyanmisaka 
645*437bfbebSnyanmisaka     struct {
646*437bfbebSnyanmisaka         RK_U32 sw_pp2_hscale_invra   : 16;
647*437bfbebSnyanmisaka         RK_U32 sw_pp2_wscale_invra   : 16;
648*437bfbebSnyanmisaka     } swreg363;
649*437bfbebSnyanmisaka 
650*437bfbebSnyanmisaka     struct {
651*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_lu_base_msb   : 32;
652*437bfbebSnyanmisaka     } swreg364;
653*437bfbebSnyanmisaka 
654*437bfbebSnyanmisaka     struct {
655*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_lu_base_lsb   : 32;
656*437bfbebSnyanmisaka     } swreg365;
657*437bfbebSnyanmisaka 
658*437bfbebSnyanmisaka     struct {
659*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_ch_base_msb   : 32;
660*437bfbebSnyanmisaka     } swreg366;
661*437bfbebSnyanmisaka 
662*437bfbebSnyanmisaka     struct {
663*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_ch_base_lsb   : 32;
664*437bfbebSnyanmisaka     } swreg367;
665*437bfbebSnyanmisaka 
666*437bfbebSnyanmisaka     struct {
667*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_c_stride   : 16;
668*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_y_stride   : 16;
669*437bfbebSnyanmisaka     } swreg368;
670*437bfbebSnyanmisaka 
671*437bfbebSnyanmisaka     struct {
672*437bfbebSnyanmisaka         RK_U32 sw_pp2_crop_starty     : 13;
673*437bfbebSnyanmisaka         RK_U32 sw_pp2_rotation_mode   : 2;
674*437bfbebSnyanmisaka         RK_U32 reserved0              : 1;
675*437bfbebSnyanmisaka         RK_U32 sw_pp2_crop_startx     : 13;
676*437bfbebSnyanmisaka         RK_U32 sw_pp2_flip_mode       : 2;
677*437bfbebSnyanmisaka         RK_U32 sw_pp2_pad_sel         : 1;
678*437bfbebSnyanmisaka     } swreg369;
679*437bfbebSnyanmisaka 
680*437bfbebSnyanmisaka     struct {
681*437bfbebSnyanmisaka         RK_U32 sw_pp2_in_height   : 16;
682*437bfbebSnyanmisaka         RK_U32 sw_pp2_in_width    : 16;
683*437bfbebSnyanmisaka     } swreg370;
684*437bfbebSnyanmisaka 
685*437bfbebSnyanmisaka     struct {
686*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_height   : 16;
687*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_width    : 16;
688*437bfbebSnyanmisaka     } swreg371;
689*437bfbebSnyanmisaka 
690*437bfbebSnyanmisaka     struct {
691*437bfbebSnyanmisaka         // RK_U32 sw_pp2_out_b_base_msb        : 32;
692*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_lu_bot_base_msb   : 32;
693*437bfbebSnyanmisaka     } swreg372;
694*437bfbebSnyanmisaka 
695*437bfbebSnyanmisaka     struct {
696*437bfbebSnyanmisaka         // RK_U32 sw_pp2_out_b_base_lsb        : 32;
697*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_lu_bot_base_lsb   : 32;
698*437bfbebSnyanmisaka     } swreg373;
699*437bfbebSnyanmisaka 
700*437bfbebSnyanmisaka     struct {
701*437bfbebSnyanmisaka         RK_U32 sw_pp2_crop2_starty          : 13;
702*437bfbebSnyanmisaka         RK_U32 reserved0                    : 3;
703*437bfbebSnyanmisaka         RK_U32 sw_pp2_crop2_startx          : 13;
704*437bfbebSnyanmisaka         RK_U32 reserved1                    : 3;
705*437bfbebSnyanmisaka         // RK_U32 sw_pp2_out_ch_bot_base_msb   : 32;
706*437bfbebSnyanmisaka     } swreg374;
707*437bfbebSnyanmisaka 
708*437bfbebSnyanmisaka     struct {
709*437bfbebSnyanmisaka         RK_U32 sw_pp2_crop2_out_height      : 16;
710*437bfbebSnyanmisaka         RK_U32 sw_pp2_crop2_out_width       : 16;
711*437bfbebSnyanmisaka         // RK_U32 sw_pp2_out_ch_bot_base_lsb   : 32;
712*437bfbebSnyanmisaka     } swreg375;
713*437bfbebSnyanmisaka 
714*437bfbebSnyanmisaka     struct {
715*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_e          : 1;
716*437bfbebSnyanmisaka         RK_U32 sw_pp3_cr_first       : 1;
717*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_mode       : 1;
718*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_tile_e     : 1;
719*437bfbebSnyanmisaka         RK_U32 reserved0             : 7;
720*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_p010_fmt   : 2;
721*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_rgb_fmt    : 5;
722*437bfbebSnyanmisaka         RK_U32 reserved1             : 12;
723*437bfbebSnyanmisaka         RK_U32 sw_pp3_rgb_planar     : 1;
724*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
725*437bfbebSnyanmisaka     } swreg376;
726*437bfbebSnyanmisaka 
727*437bfbebSnyanmisaka     struct {
728*437bfbebSnyanmisaka         RK_U32 reserved0          : 9;
729*437bfbebSnyanmisaka         RK_U32 sw_pp3_tile_size   : 2;
730*437bfbebSnyanmisaka         RK_U32 reserved1          : 9;
731*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_swap    : 4;
732*437bfbebSnyanmisaka         RK_U32 reserved2          : 8;
733*437bfbebSnyanmisaka     } swreg377;
734*437bfbebSnyanmisaka 
735*437bfbebSnyanmisaka     struct {
736*437bfbebSnyanmisaka         RK_U32 sw_pp3_scale_hratio     : 18;
737*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_format       : 5;
738*437bfbebSnyanmisaka         RK_U32 sw_pp3_ver_scale_mode   : 2;
739*437bfbebSnyanmisaka         RK_U32 sw_pp3_hor_scale_mode   : 2;
740*437bfbebSnyanmisaka         RK_U32 reserved0               : 5;
741*437bfbebSnyanmisaka     } swreg378;
742*437bfbebSnyanmisaka 
743*437bfbebSnyanmisaka     struct {
744*437bfbebSnyanmisaka         RK_U32 sw_pp3_scale_wratio   : 18;
745*437bfbebSnyanmisaka         RK_U32 reserved0             : 5;
746*437bfbebSnyanmisaka         RK_U32 reserved1             : 5;
747*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
748*437bfbebSnyanmisaka         RK_U32 reserved4             : 1;
749*437bfbebSnyanmisaka         RK_U32 reserved3             : 1;
750*437bfbebSnyanmisaka         RK_U32 reserved5             : 1;
751*437bfbebSnyanmisaka     } swreg379;
752*437bfbebSnyanmisaka 
753*437bfbebSnyanmisaka     struct {
754*437bfbebSnyanmisaka         RK_U32 sw_pp3_hscale_invra   : 16;
755*437bfbebSnyanmisaka         RK_U32 sw_pp3_wscale_invra   : 16;
756*437bfbebSnyanmisaka     } swreg380;
757*437bfbebSnyanmisaka 
758*437bfbebSnyanmisaka     struct {
759*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_r_base_msb    : 32;
760*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_lu_base_msb   : 32;
761*437bfbebSnyanmisaka     } swreg381;
762*437bfbebSnyanmisaka 
763*437bfbebSnyanmisaka     struct {
764*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_r_base_lsb    : 32;
765*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_lu_base_lsb   : 32;
766*437bfbebSnyanmisaka     } swreg382;
767*437bfbebSnyanmisaka 
768*437bfbebSnyanmisaka     struct {
769*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_g_base_msb    : 32;
770*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_ch_base_msb   : 32;
771*437bfbebSnyanmisaka     } swreg383;
772*437bfbebSnyanmisaka 
773*437bfbebSnyanmisaka     struct {
774*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_g_base_lsb    : 32;
775*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_ch_base_lsb   : 32;
776*437bfbebSnyanmisaka     } swreg384;
777*437bfbebSnyanmisaka 
778*437bfbebSnyanmisaka     struct {
779*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_c_stride   : 16;
780*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_y_stride   : 16;
781*437bfbebSnyanmisaka     } swreg385;
782*437bfbebSnyanmisaka 
783*437bfbebSnyanmisaka     struct {
784*437bfbebSnyanmisaka         RK_U32 sw_pp3_crop_starty     : 13;
785*437bfbebSnyanmisaka         RK_U32 sw_pp3_rotation_mode   : 2;
786*437bfbebSnyanmisaka         RK_U32 reserved0              : 1;
787*437bfbebSnyanmisaka         RK_U32 sw_pp3_crop_startx     : 13;
788*437bfbebSnyanmisaka         RK_U32 sw_pp3_flip_mode       : 2;
789*437bfbebSnyanmisaka         RK_U32 sw_pp3_pad_sel         : 1;
790*437bfbebSnyanmisaka     } swreg386;
791*437bfbebSnyanmisaka 
792*437bfbebSnyanmisaka     struct {
793*437bfbebSnyanmisaka         RK_U32 sw_pp3_in_height   : 16;
794*437bfbebSnyanmisaka         RK_U32 sw_pp3_in_width    : 16;
795*437bfbebSnyanmisaka     } swreg387;
796*437bfbebSnyanmisaka 
797*437bfbebSnyanmisaka     struct {
798*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_height   : 16;
799*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_width    : 16;
800*437bfbebSnyanmisaka     } swreg388;
801*437bfbebSnyanmisaka 
802*437bfbebSnyanmisaka     struct {
803*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_b_base_msb        : 32;
804*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_lu_bot_base_msb   : 32;
805*437bfbebSnyanmisaka     } swreg389;
806*437bfbebSnyanmisaka 
807*437bfbebSnyanmisaka     struct {
808*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_b_base_lsb        : 32;
809*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_lu_bot_base_lsb   : 32;
810*437bfbebSnyanmisaka     } swreg390;
811*437bfbebSnyanmisaka 
812*437bfbebSnyanmisaka     struct {
813*437bfbebSnyanmisaka         RK_U32 sw_pp3_crop2_starty          : 13;
814*437bfbebSnyanmisaka         RK_U32 reserved0                    : 3;
815*437bfbebSnyanmisaka         RK_U32 sw_pp3_crop2_startx          : 13;
816*437bfbebSnyanmisaka         RK_U32 reserved1                    : 3;
817*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_ch_bot_base_msb   : 32;
818*437bfbebSnyanmisaka     } swreg391;
819*437bfbebSnyanmisaka 
820*437bfbebSnyanmisaka     struct {
821*437bfbebSnyanmisaka         RK_U32 sw_pp3_crop2_out_height      : 16;
822*437bfbebSnyanmisaka         RK_U32 sw_pp3_crop2_out_width       : 16;
823*437bfbebSnyanmisaka         // RK_U32 sw_pp3_out_ch_bot_base_lsb   : 32;
824*437bfbebSnyanmisaka     } swreg392;
825*437bfbebSnyanmisaka 
826*437bfbebSnyanmisaka     struct {
827*437bfbebSnyanmisaka         RK_U32 sw_pp3_out_alpha   : 8;
828*437bfbebSnyanmisaka         RK_U32 sw_pp2_out_alpha   : 8;
829*437bfbebSnyanmisaka         RK_U32 sw_pp1_out_alpha   : 8;
830*437bfbebSnyanmisaka         RK_U32 sw_pp0_out_alpha   : 8;
831*437bfbebSnyanmisaka     } swreg393;
832*437bfbebSnyanmisaka 
833*437bfbebSnyanmisaka     struct {
834*437bfbebSnyanmisaka         RK_U32 sw_pp1_dup_ver   : 8;
835*437bfbebSnyanmisaka         RK_U32 sw_pp1_dup_hor   : 8;
836*437bfbebSnyanmisaka         RK_U32 sw_pp0_dup_ver   : 8;
837*437bfbebSnyanmisaka         RK_U32 sw_pp0_dup_hor   : 8;
838*437bfbebSnyanmisaka     } swreg394;
839*437bfbebSnyanmisaka 
840*437bfbebSnyanmisaka     struct {
841*437bfbebSnyanmisaka         RK_U32 sw_pp3_dup_ver   : 8;
842*437bfbebSnyanmisaka         RK_U32 sw_pp3_dup_hor   : 8;
843*437bfbebSnyanmisaka         RK_U32 sw_pp2_dup_ver   : 8;
844*437bfbebSnyanmisaka         RK_U32 sw_pp2_dup_hor   : 8;
845*437bfbebSnyanmisaka     } swreg395;
846*437bfbebSnyanmisaka 
847*437bfbebSnyanmisaka     struct {
848*437bfbebSnyanmisaka         RK_U32 sw_pp0_scale1_out_height   : 16;
849*437bfbebSnyanmisaka         RK_U32 sw_pp0_scale1_out_width    : 16;
850*437bfbebSnyanmisaka     } swreg396;
851*437bfbebSnyanmisaka 
852*437bfbebSnyanmisaka     struct {
853*437bfbebSnyanmisaka         RK_U32 sw_pp1_scale1_out_height   : 16;
854*437bfbebSnyanmisaka         RK_U32 sw_pp1_scale1_out_width    : 16;
855*437bfbebSnyanmisaka     } swreg397;
856*437bfbebSnyanmisaka 
857*437bfbebSnyanmisaka     struct {
858*437bfbebSnyanmisaka         RK_U32 sw_pp2_scale1_out_height   : 16;
859*437bfbebSnyanmisaka         RK_U32 sw_pp2_scale1_out_width    : 16;
860*437bfbebSnyanmisaka     } swreg398;
861*437bfbebSnyanmisaka 
862*437bfbebSnyanmisaka     struct {
863*437bfbebSnyanmisaka         RK_U32 sw_pp3_scale1_out_height   : 16;
864*437bfbebSnyanmisaka         RK_U32 sw_pp3_scale1_out_width    : 16;
865*437bfbebSnyanmisaka     } swreg399;
866*437bfbebSnyanmisaka 
867*437bfbebSnyanmisaka     struct {
868*437bfbebSnyanmisaka         RK_U32 sw_dec_in_pool_base_msb   : 32;
869*437bfbebSnyanmisaka     } swreg400;
870*437bfbebSnyanmisaka 
871*437bfbebSnyanmisaka     struct {
872*437bfbebSnyanmisaka         RK_U32 sw_dec_in_pool_base_lsb   : 32;
873*437bfbebSnyanmisaka     } swreg401;
874*437bfbebSnyanmisaka 
875*437bfbebSnyanmisaka     struct {
876*437bfbebSnyanmisaka         RK_U32 sw_dec_in_bufpool_size   : 32;
877*437bfbebSnyanmisaka     } swreg402;
878*437bfbebSnyanmisaka 
879*437bfbebSnyanmisaka     struct {
880*437bfbebSnyanmisaka         RK_U32 sw_dec_out_pool_base_msb   : 32;
881*437bfbebSnyanmisaka     } swreg403;
882*437bfbebSnyanmisaka 
883*437bfbebSnyanmisaka     struct {
884*437bfbebSnyanmisaka         RK_U32 sw_dec_out_pool_base_lsb   : 32;
885*437bfbebSnyanmisaka     } swreg404;
886*437bfbebSnyanmisaka 
887*437bfbebSnyanmisaka     struct {
888*437bfbebSnyanmisaka         RK_U32 sw_dec_out_bufpool_size   : 32;
889*437bfbebSnyanmisaka     } swreg405;
890*437bfbebSnyanmisaka 
891*437bfbebSnyanmisaka     struct {
892*437bfbebSnyanmisaka         RK_U32 sw_dec_priv_pool_base_msb   : 32;
893*437bfbebSnyanmisaka     } swreg406;
894*437bfbebSnyanmisaka 
895*437bfbebSnyanmisaka     struct {
896*437bfbebSnyanmisaka         RK_U32 sw_dec_priv_pool_base_lsb   : 32;
897*437bfbebSnyanmisaka     } swreg407;
898*437bfbebSnyanmisaka 
899*437bfbebSnyanmisaka     struct {
900*437bfbebSnyanmisaka         RK_U32 sw_dec_priv_pool_size   : 32;
901*437bfbebSnyanmisaka     } swreg408;
902*437bfbebSnyanmisaka 
903*437bfbebSnyanmisaka     struct {
904*437bfbebSnyanmisaka         RK_U32 sw_dec_in_nsa_id     : 4;
905*437bfbebSnyanmisaka         RK_U32 sw_dec_out_nsa_id    : 4;
906*437bfbebSnyanmisaka         RK_U32 sw_dec_priv_nsa_id   : 4;
907*437bfbebSnyanmisaka         RK_U32 sw_dec_pub_nsa_id    : 4;
908*437bfbebSnyanmisaka         RK_U32 reserved0            : 16;
909*437bfbebSnyanmisaka     } swreg409;
910*437bfbebSnyanmisaka 
911*437bfbebSnyanmisaka     struct {
912*437bfbebSnyanmisaka         RK_U32 sw_contrast_off1     : 12;
913*437bfbebSnyanmisaka         RK_U32 sw_contrast_off2     : 12;
914*437bfbebSnyanmisaka         RK_U32 reserved0            : 2;
915*437bfbebSnyanmisaka         RK_U32 sw_dither_select_b   : 2;
916*437bfbebSnyanmisaka         RK_U32 sw_dither_select_g   : 2;
917*437bfbebSnyanmisaka         RK_U32 sw_dither_select_r   : 2;
918*437bfbebSnyanmisaka     } swreg410;
919*437bfbebSnyanmisaka 
920*437bfbebSnyanmisaka     struct {
921*437bfbebSnyanmisaka         RK_U32 sw_color_coefff    : 10;
922*437bfbebSnyanmisaka         RK_U32 sw_contrast_thr2   : 10;
923*437bfbebSnyanmisaka         RK_U32 sw_contrast_thr1   : 10;
924*437bfbebSnyanmisaka         RK_U32 reserved0          : 2;
925*437bfbebSnyanmisaka     } swreg411;
926*437bfbebSnyanmisaka 
927*437bfbebSnyanmisaka     struct {
928*437bfbebSnyanmisaka         RK_U32 sw_color_coeffa1   : 16;
929*437bfbebSnyanmisaka         RK_U32 sw_color_coeffa2   : 16;
930*437bfbebSnyanmisaka     } swreg412;
931*437bfbebSnyanmisaka 
932*437bfbebSnyanmisaka     struct {
933*437bfbebSnyanmisaka         RK_U32 sw_color_coeffb   : 16;
934*437bfbebSnyanmisaka         RK_U32 sw_color_coeffc   : 16;
935*437bfbebSnyanmisaka     } swreg413;
936*437bfbebSnyanmisaka 
937*437bfbebSnyanmisaka     struct {
938*437bfbebSnyanmisaka         RK_U32 sw_color_coeffd   : 16;
939*437bfbebSnyanmisaka         RK_U32 sw_color_coeffe   : 16;
940*437bfbebSnyanmisaka     } swreg414;
941*437bfbebSnyanmisaka 
942*437bfbebSnyanmisaka     struct {
943*437bfbebSnyanmisaka         RK_U32 sw_pp1_contrast_off1     : 12;
944*437bfbebSnyanmisaka         RK_U32 sw_pp1_contrast_off2     : 12;
945*437bfbebSnyanmisaka         RK_U32 reserved0                : 2;
946*437bfbebSnyanmisaka         RK_U32 sw_pp1_dither_select_b   : 2;
947*437bfbebSnyanmisaka         RK_U32 sw_pp1_dither_select_g   : 2;
948*437bfbebSnyanmisaka         RK_U32 sw_pp1_dither_select_r   : 2;
949*437bfbebSnyanmisaka     } swreg415;
950*437bfbebSnyanmisaka 
951*437bfbebSnyanmisaka     struct {
952*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coefff    : 10;
953*437bfbebSnyanmisaka         RK_U32 sw_pp1_contrast_thr2   : 10;
954*437bfbebSnyanmisaka         RK_U32 sw_pp1_contrast_thr1   : 10;
955*437bfbebSnyanmisaka         RK_U32 reserved0              : 2;
956*437bfbebSnyanmisaka     } swreg416;
957*437bfbebSnyanmisaka 
958*437bfbebSnyanmisaka     struct {
959*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coeffa1   : 16;
960*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coeffa2   : 16;
961*437bfbebSnyanmisaka     } swreg417;
962*437bfbebSnyanmisaka 
963*437bfbebSnyanmisaka     struct {
964*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coeffb   : 16;
965*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coeffc   : 16;
966*437bfbebSnyanmisaka     } swreg418;
967*437bfbebSnyanmisaka 
968*437bfbebSnyanmisaka     struct {
969*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coeffd   : 16;
970*437bfbebSnyanmisaka         RK_U32 sw_pp1_color_coeffe   : 16;
971*437bfbebSnyanmisaka     } swreg419;
972*437bfbebSnyanmisaka 
973*437bfbebSnyanmisaka     struct {
974*437bfbebSnyanmisaka         RK_U32 sw_pp2_contrast_off1     : 12;
975*437bfbebSnyanmisaka         RK_U32 sw_pp2_contrast_off2     : 12;
976*437bfbebSnyanmisaka         RK_U32 reserved0                : 2;
977*437bfbebSnyanmisaka         RK_U32 sw_pp2_dither_select_b   : 2;
978*437bfbebSnyanmisaka         RK_U32 sw_pp2_dither_select_g   : 2;
979*437bfbebSnyanmisaka         RK_U32 sw_pp2_dither_select_r   : 2;
980*437bfbebSnyanmisaka     } swreg420;
981*437bfbebSnyanmisaka 
982*437bfbebSnyanmisaka     struct {
983*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coefff    : 10;
984*437bfbebSnyanmisaka         RK_U32 sw_pp2_contrast_thr2   : 10;
985*437bfbebSnyanmisaka         RK_U32 sw_pp2_contrast_thr1   : 10;
986*437bfbebSnyanmisaka         RK_U32 reserved0              : 2;
987*437bfbebSnyanmisaka     } swreg421;
988*437bfbebSnyanmisaka 
989*437bfbebSnyanmisaka     struct {
990*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coeffa1   : 16;
991*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coeffa2   : 16;
992*437bfbebSnyanmisaka     } swreg422;
993*437bfbebSnyanmisaka 
994*437bfbebSnyanmisaka     struct {
995*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coeffb   : 16;
996*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coeffc   : 16;
997*437bfbebSnyanmisaka     } swreg423;
998*437bfbebSnyanmisaka 
999*437bfbebSnyanmisaka     struct {
1000*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coeffd   : 16;
1001*437bfbebSnyanmisaka         RK_U32 sw_pp2_color_coeffe   : 16;
1002*437bfbebSnyanmisaka     } swreg424;
1003*437bfbebSnyanmisaka 
1004*437bfbebSnyanmisaka     struct {
1005*437bfbebSnyanmisaka         RK_U32 sw_pp3_contrast_off1     : 12;
1006*437bfbebSnyanmisaka         RK_U32 sw_pp3_contrast_off2     : 12;
1007*437bfbebSnyanmisaka         RK_U32 reserved0                : 2;
1008*437bfbebSnyanmisaka         RK_U32 sw_pp3_dither_select_b   : 2;
1009*437bfbebSnyanmisaka         RK_U32 sw_pp3_dither_select_g   : 2;
1010*437bfbebSnyanmisaka         RK_U32 sw_pp3_dither_select_r   : 2;
1011*437bfbebSnyanmisaka     } swreg425;
1012*437bfbebSnyanmisaka 
1013*437bfbebSnyanmisaka     struct {
1014*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coefff    : 10;
1015*437bfbebSnyanmisaka         RK_U32 sw_pp3_contrast_thr2   : 10;
1016*437bfbebSnyanmisaka         RK_U32 sw_pp3_contrast_thr1   : 10;
1017*437bfbebSnyanmisaka         RK_U32 reserved0              : 2;
1018*437bfbebSnyanmisaka     } swreg426;
1019*437bfbebSnyanmisaka 
1020*437bfbebSnyanmisaka     struct {
1021*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coeffa1   : 16;
1022*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coeffa2   : 16;
1023*437bfbebSnyanmisaka     } swreg427;
1024*437bfbebSnyanmisaka 
1025*437bfbebSnyanmisaka     struct {
1026*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coeffb   : 16;
1027*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coeffc   : 16;
1028*437bfbebSnyanmisaka     } swreg428;
1029*437bfbebSnyanmisaka 
1030*437bfbebSnyanmisaka     struct {
1031*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coeffd   : 16;
1032*437bfbebSnyanmisaka         RK_U32 sw_pp3_color_coeffe   : 16;
1033*437bfbebSnyanmisaka     } swreg429;
1034*437bfbebSnyanmisaka 
1035*437bfbebSnyanmisaka     struct {
1036*437bfbebSnyanmisaka         RK_U32 sw_delogo0_h             : 10;
1037*437bfbebSnyanmisaka         RK_U32 sw_delogo0_w             : 10;
1038*437bfbebSnyanmisaka         RK_U32 reserved0                : 8;
1039*437bfbebSnyanmisaka         RK_U32 sw_delogo0_show_border   : 1;
1040*437bfbebSnyanmisaka         RK_U32 sw_delogo0_mode          : 3;
1041*437bfbebSnyanmisaka     } swreg430;
1042*437bfbebSnyanmisaka 
1043*437bfbebSnyanmisaka     struct {
1044*437bfbebSnyanmisaka         RK_U32 sw_delogo0_y   : 16;
1045*437bfbebSnyanmisaka         RK_U32 sw_delogo0_x   : 16;
1046*437bfbebSnyanmisaka     } swreg431;
1047*437bfbebSnyanmisaka 
1048*437bfbebSnyanmisaka     struct {
1049*437bfbebSnyanmisaka         RK_U32 sw_delogo0_fillV   : 10;
1050*437bfbebSnyanmisaka         RK_U32 sw_delogo0_fillU   : 10;
1051*437bfbebSnyanmisaka         RK_U32 sw_delogo0_fillY   : 10;
1052*437bfbebSnyanmisaka         RK_U32 reserved0          : 2;
1053*437bfbebSnyanmisaka     } swreg432;
1054*437bfbebSnyanmisaka 
1055*437bfbebSnyanmisaka     struct {
1056*437bfbebSnyanmisaka         RK_U32 sw_delogo1_h             : 14;
1057*437bfbebSnyanmisaka         RK_U32 sw_delogo1_w             : 14;
1058*437bfbebSnyanmisaka         RK_U32 sw_delogo1_show_border   : 1;
1059*437bfbebSnyanmisaka         RK_U32 sw_delogo1_mode          : 3;
1060*437bfbebSnyanmisaka     } swreg433;
1061*437bfbebSnyanmisaka 
1062*437bfbebSnyanmisaka     struct {
1063*437bfbebSnyanmisaka         RK_U32 sw_delogo1_y   : 16;
1064*437bfbebSnyanmisaka         RK_U32 sw_delogo1_x   : 16;
1065*437bfbebSnyanmisaka     } swreg434;
1066*437bfbebSnyanmisaka 
1067*437bfbebSnyanmisaka     struct {
1068*437bfbebSnyanmisaka         RK_U32 sw_delogo1_fillV   : 10;
1069*437bfbebSnyanmisaka         RK_U32 sw_delogo1_fillU   : 10;
1070*437bfbebSnyanmisaka         RK_U32 sw_delogo1_fillY   : 10;
1071*437bfbebSnyanmisaka         RK_U32 reserved0          : 2;
1072*437bfbebSnyanmisaka     } swreg435;
1073*437bfbebSnyanmisaka 
1074*437bfbebSnyanmisaka     struct {
1075*437bfbebSnyanmisaka         RK_U32 sw_delogo0_ratio_h   : 16;
1076*437bfbebSnyanmisaka         RK_U32 sw_delogo0_ratio_w   : 16;
1077*437bfbebSnyanmisaka     } swreg436;
1078*437bfbebSnyanmisaka 
1079*437bfbebSnyanmisaka     struct {
1080*437bfbebSnyanmisaka         RK_U32 sw_pp1_hcale_invra_ext    : 8;
1081*437bfbebSnyanmisaka         RK_U32 sw_pp1_wscale_invra_ext   : 8;
1082*437bfbebSnyanmisaka         RK_U32 sw_pp0_hcale_invra_ext    : 8;
1083*437bfbebSnyanmisaka         RK_U32 sw_pp0_wscale_invra_ext   : 8;
1084*437bfbebSnyanmisaka     } swreg437;
1085*437bfbebSnyanmisaka 
1086*437bfbebSnyanmisaka     struct {
1087*437bfbebSnyanmisaka         RK_U32 sw_pp0_x_filter_size   : 12;
1088*437bfbebSnyanmisaka         RK_U32 sw_pp0_y_filter_size   : 12;
1089*437bfbebSnyanmisaka         RK_U32 reserved0              : 8;
1090*437bfbebSnyanmisaka     } swreg438;
1091*437bfbebSnyanmisaka 
1092*437bfbebSnyanmisaka     struct {
1093*437bfbebSnyanmisaka         RK_U32 sw_pp0_lanczos_tbl_base_msb   : 32;
1094*437bfbebSnyanmisaka     } swreg439;
1095*437bfbebSnyanmisaka 
1096*437bfbebSnyanmisaka     struct {
1097*437bfbebSnyanmisaka         RK_U32 sw_pp0_lanczos_tbl_base_lsb   : 32;
1098*437bfbebSnyanmisaka     } swreg440;
1099*437bfbebSnyanmisaka 
1100*437bfbebSnyanmisaka     struct {
1101*437bfbebSnyanmisaka         RK_U32 sw_pp1_x_filter_size   : 12;
1102*437bfbebSnyanmisaka         RK_U32 sw_pp1_y_filter_size   : 12;
1103*437bfbebSnyanmisaka         RK_U32 reserved0              : 8;
1104*437bfbebSnyanmisaka     } swreg441;
1105*437bfbebSnyanmisaka 
1106*437bfbebSnyanmisaka     struct {
1107*437bfbebSnyanmisaka         RK_U32 sw_pp1_lanczos_tbl_base_msb   : 32;
1108*437bfbebSnyanmisaka     } swreg442;
1109*437bfbebSnyanmisaka 
1110*437bfbebSnyanmisaka     struct {
1111*437bfbebSnyanmisaka         RK_U32 sw_pp1_lanczos_tbl_base_lsb   : 32;
1112*437bfbebSnyanmisaka     } swreg443;
1113*437bfbebSnyanmisaka 
1114*437bfbebSnyanmisaka     struct {
1115*437bfbebSnyanmisaka         RK_U32 sw_pp3_hcale_invra_ext    : 8;
1116*437bfbebSnyanmisaka         RK_U32 sw_pp3_wscale_invra_ext   : 8;
1117*437bfbebSnyanmisaka         RK_U32 sw_pp2_hcale_invra_ext    : 8;
1118*437bfbebSnyanmisaka         RK_U32 sw_pp2_wscale_invra_ext   : 8;
1119*437bfbebSnyanmisaka     } swreg444;
1120*437bfbebSnyanmisaka 
1121*437bfbebSnyanmisaka     struct {
1122*437bfbebSnyanmisaka         RK_U32 sw_pp2_x_filter_size   : 12;
1123*437bfbebSnyanmisaka         RK_U32 sw_pp2_y_filter_size   : 12;
1124*437bfbebSnyanmisaka         RK_U32 reserved0              : 8;
1125*437bfbebSnyanmisaka     } swreg445;
1126*437bfbebSnyanmisaka 
1127*437bfbebSnyanmisaka     struct {
1128*437bfbebSnyanmisaka         RK_U32 sw_pp2_lanczos_tbl_base_msb   : 32;
1129*437bfbebSnyanmisaka     } swreg446;
1130*437bfbebSnyanmisaka 
1131*437bfbebSnyanmisaka     struct {
1132*437bfbebSnyanmisaka         RK_U32 sw_pp2_lanczos_tbl_base_lsb   : 32;
1133*437bfbebSnyanmisaka     } swreg447;
1134*437bfbebSnyanmisaka 
1135*437bfbebSnyanmisaka     struct {
1136*437bfbebSnyanmisaka         RK_U32 sw_pp3_x_filter_size   : 12;
1137*437bfbebSnyanmisaka         RK_U32 sw_pp3_y_filter_size   : 12;
1138*437bfbebSnyanmisaka         RK_U32 reserved0              : 8;
1139*437bfbebSnyanmisaka     } swreg448;
1140*437bfbebSnyanmisaka 
1141*437bfbebSnyanmisaka     struct {
1142*437bfbebSnyanmisaka         RK_U32 sw_pp3_lanczos_tbl_base_msb   : 32;
1143*437bfbebSnyanmisaka     } swreg449;
1144*437bfbebSnyanmisaka 
1145*437bfbebSnyanmisaka     struct {
1146*437bfbebSnyanmisaka         RK_U32 sw_pp3_lanczos_tbl_base_lsb   : 32;
1147*437bfbebSnyanmisaka     } swreg450;
1148*437bfbebSnyanmisaka 
1149*437bfbebSnyanmisaka     struct {
1150*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_e          : 1;
1151*437bfbebSnyanmisaka         RK_U32 sw_pp4_cr_first       : 1;
1152*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_mode       : 1;
1153*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_tile_e     : 1;
1154*437bfbebSnyanmisaka         RK_U32 reserved0             : 7;
1155*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_p010_fmt   : 2;
1156*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_rgb_fmt    : 5;
1157*437bfbebSnyanmisaka         RK_U32 reserved1             : 12;
1158*437bfbebSnyanmisaka         RK_U32 sw_pp4_rgb_planar     : 1;
1159*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
1160*437bfbebSnyanmisaka     } swreg451;
1161*437bfbebSnyanmisaka 
1162*437bfbebSnyanmisaka     struct {
1163*437bfbebSnyanmisaka         RK_U32 reserved0         : 20;
1164*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_swap   : 4;
1165*437bfbebSnyanmisaka         RK_U32 reserved1         : 8;
1166*437bfbebSnyanmisaka     } swreg452;
1167*437bfbebSnyanmisaka 
1168*437bfbebSnyanmisaka     struct {
1169*437bfbebSnyanmisaka         RK_U32 sw_pp4_scale_hratio     : 18;
1170*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_format       : 5;
1171*437bfbebSnyanmisaka         RK_U32 sw_pp4_ver_scale_mode   : 2;
1172*437bfbebSnyanmisaka         RK_U32 sw_pp4_hor_scale_mode   : 2;
1173*437bfbebSnyanmisaka         RK_U32 reserved0               : 5;
1174*437bfbebSnyanmisaka     } swreg453;
1175*437bfbebSnyanmisaka 
1176*437bfbebSnyanmisaka     struct {
1177*437bfbebSnyanmisaka         RK_U32 sw_pp4_scale_wratio   : 18;
1178*437bfbebSnyanmisaka         RK_U32 reserved0             : 5;
1179*437bfbebSnyanmisaka         RK_U32 reserved1             : 5;
1180*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
1181*437bfbebSnyanmisaka         RK_U32 reserved4             : 1;
1182*437bfbebSnyanmisaka         RK_U32 reserved3             : 1;
1183*437bfbebSnyanmisaka         RK_U32 reserved5             : 1;
1184*437bfbebSnyanmisaka     } swreg454;
1185*437bfbebSnyanmisaka 
1186*437bfbebSnyanmisaka     struct {
1187*437bfbebSnyanmisaka         RK_U32 sw_pp4_hscale_invra   : 16;
1188*437bfbebSnyanmisaka         RK_U32 sw_pp4_wscale_invra   : 16;
1189*437bfbebSnyanmisaka     } swreg455;
1190*437bfbebSnyanmisaka 
1191*437bfbebSnyanmisaka     struct {
1192*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_r_base_msb    : 32;
1193*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_lu_base_msb   : 32;
1194*437bfbebSnyanmisaka     } swreg456;
1195*437bfbebSnyanmisaka 
1196*437bfbebSnyanmisaka     struct {
1197*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_r_base_lsb    : 32;
1198*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_lu_base_lsb   : 32;
1199*437bfbebSnyanmisaka     } swreg457;
1200*437bfbebSnyanmisaka 
1201*437bfbebSnyanmisaka     struct {
1202*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_g_base_msb    : 32;
1203*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_ch_base_msb   : 32;
1204*437bfbebSnyanmisaka     } swreg458;
1205*437bfbebSnyanmisaka 
1206*437bfbebSnyanmisaka     struct {
1207*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_g_base_lsb    : 32;
1208*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_ch_base_lsb   : 32;
1209*437bfbebSnyanmisaka     } swreg459;
1210*437bfbebSnyanmisaka 
1211*437bfbebSnyanmisaka     struct {
1212*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_c_stride   : 16;
1213*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_y_stride   : 16;
1214*437bfbebSnyanmisaka     } swreg460;
1215*437bfbebSnyanmisaka 
1216*437bfbebSnyanmisaka     struct {
1217*437bfbebSnyanmisaka         RK_U32 sw_pp4_crop_starty     : 13;
1218*437bfbebSnyanmisaka         RK_U32 sw_pp4_rotation_mode   : 2;
1219*437bfbebSnyanmisaka         RK_U32 reserved0              : 1;
1220*437bfbebSnyanmisaka         RK_U32 sw_pp4_crop_startx     : 13;
1221*437bfbebSnyanmisaka         RK_U32 sw_pp4_flip_mode       : 2;
1222*437bfbebSnyanmisaka         RK_U32 sw_pp4_pad_sel         : 1;
1223*437bfbebSnyanmisaka     } swreg461;
1224*437bfbebSnyanmisaka 
1225*437bfbebSnyanmisaka     struct {
1226*437bfbebSnyanmisaka         RK_U32 sw_pp4_in_height   : 16;
1227*437bfbebSnyanmisaka         RK_U32 sw_pp4_in_width    : 16;
1228*437bfbebSnyanmisaka     } swreg462;
1229*437bfbebSnyanmisaka 
1230*437bfbebSnyanmisaka     struct {
1231*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_height   : 16;
1232*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_width    : 16;
1233*437bfbebSnyanmisaka     } swreg463;
1234*437bfbebSnyanmisaka 
1235*437bfbebSnyanmisaka     struct {
1236*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_b_base_msb        : 32;
1237*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_lu_bot_base_msb   : 32;
1238*437bfbebSnyanmisaka     } swreg464;
1239*437bfbebSnyanmisaka 
1240*437bfbebSnyanmisaka     struct {
1241*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_b_base_lsb        : 32;
1242*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_lu_bot_base_lsb   : 32;
1243*437bfbebSnyanmisaka     } swreg465;
1244*437bfbebSnyanmisaka 
1245*437bfbebSnyanmisaka     struct {
1246*437bfbebSnyanmisaka         RK_U32 sw_pp4_crop2_starty          : 13;
1247*437bfbebSnyanmisaka         RK_U32 reserved0                    : 3;
1248*437bfbebSnyanmisaka         RK_U32 sw_pp4_crop2_startx          : 13;
1249*437bfbebSnyanmisaka         RK_U32 reserved1                    : 3;
1250*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_ch_bot_base_msb   : 32;
1251*437bfbebSnyanmisaka     } swreg466;
1252*437bfbebSnyanmisaka 
1253*437bfbebSnyanmisaka     struct {
1254*437bfbebSnyanmisaka         RK_U32 sw_pp4_crop2_out_height      : 16;
1255*437bfbebSnyanmisaka         RK_U32 sw_pp4_crop2_out_width       : 16;
1256*437bfbebSnyanmisaka         // RK_U32 sw_pp4_out_ch_bot_base_lsb   : 32;
1257*437bfbebSnyanmisaka     } swreg467;
1258*437bfbebSnyanmisaka 
1259*437bfbebSnyanmisaka     struct {
1260*437bfbebSnyanmisaka         RK_U32 sw_pp4_contrast_off1     : 12;
1261*437bfbebSnyanmisaka         RK_U32 sw_pp4_contrast_off2     : 12;
1262*437bfbebSnyanmisaka         RK_U32 reserved0                : 2;
1263*437bfbebSnyanmisaka         RK_U32 sw_pp4_dither_select_b   : 2;
1264*437bfbebSnyanmisaka         RK_U32 sw_pp4_dither_select_g   : 2;
1265*437bfbebSnyanmisaka         RK_U32 sw_pp4_dither_select_r   : 2;
1266*437bfbebSnyanmisaka     } swreg468;
1267*437bfbebSnyanmisaka 
1268*437bfbebSnyanmisaka     struct {
1269*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coefff    : 10;
1270*437bfbebSnyanmisaka         RK_U32 sw_pp4_contrast_thr2   : 10;
1271*437bfbebSnyanmisaka         RK_U32 sw_pp4_contrast_thr1   : 10;
1272*437bfbebSnyanmisaka         RK_U32 reserved0              : 2;
1273*437bfbebSnyanmisaka     } swreg469;
1274*437bfbebSnyanmisaka 
1275*437bfbebSnyanmisaka     struct {
1276*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coeffa1   : 16;
1277*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coeffa2   : 16;
1278*437bfbebSnyanmisaka     } swreg470;
1279*437bfbebSnyanmisaka 
1280*437bfbebSnyanmisaka     struct {
1281*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coeffb   : 16;
1282*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coeffc   : 16;
1283*437bfbebSnyanmisaka     } swreg471;
1284*437bfbebSnyanmisaka 
1285*437bfbebSnyanmisaka     struct {
1286*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coeffd   : 16;
1287*437bfbebSnyanmisaka         RK_U32 sw_pp4_color_coeffe   : 16;
1288*437bfbebSnyanmisaka     } swreg472;
1289*437bfbebSnyanmisaka 
1290*437bfbebSnyanmisaka     struct {
1291*437bfbebSnyanmisaka         RK_U32 sw_pp4_out_alpha          : 8;
1292*437bfbebSnyanmisaka         RK_U32 sw_pp4_dup_hor            : 8;
1293*437bfbebSnyanmisaka         RK_U32 sw_pp4_hcale_invra_ext    : 8;
1294*437bfbebSnyanmisaka         RK_U32 sw_pp4_wscale_invra_ext   : 8;
1295*437bfbebSnyanmisaka     } swreg473;
1296*437bfbebSnyanmisaka 
1297*437bfbebSnyanmisaka     struct {
1298*437bfbebSnyanmisaka         RK_U32 sw_pp4_x_filter_size   : 12;
1299*437bfbebSnyanmisaka         RK_U32 sw_pp4_y_filter_size   : 12;
1300*437bfbebSnyanmisaka         RK_U32 reserved0              : 8;
1301*437bfbebSnyanmisaka     } swreg474;
1302*437bfbebSnyanmisaka 
1303*437bfbebSnyanmisaka     struct {
1304*437bfbebSnyanmisaka         RK_U32 sw_pp4_lanczos_tbl_base_msb   : 32;
1305*437bfbebSnyanmisaka     } swreg475;
1306*437bfbebSnyanmisaka 
1307*437bfbebSnyanmisaka     struct {
1308*437bfbebSnyanmisaka         RK_U32 sw_pp4_lanczos_tbl_base_lsb   : 32;
1309*437bfbebSnyanmisaka     } swreg476;
1310*437bfbebSnyanmisaka 
1311*437bfbebSnyanmisaka     struct {
1312*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_e          : 1;
1313*437bfbebSnyanmisaka         RK_U32 sw_pp5_cr_first       : 1;
1314*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_mode       : 1;
1315*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_tile_e     : 1;
1316*437bfbebSnyanmisaka         RK_U32 reserved0             : 7;
1317*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_p010_fmt   : 2;
1318*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_rgb_fmt    : 5;
1319*437bfbebSnyanmisaka         RK_U32 reserved1             : 12;
1320*437bfbebSnyanmisaka         RK_U32 sw_pp5_rgb_planar     : 1;
1321*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
1322*437bfbebSnyanmisaka     } swreg477;
1323*437bfbebSnyanmisaka 
1324*437bfbebSnyanmisaka     struct {
1325*437bfbebSnyanmisaka         RK_U32 reserved0         : 20;
1326*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_swap   : 4;
1327*437bfbebSnyanmisaka         RK_U32 reserved1         : 8;
1328*437bfbebSnyanmisaka     } swreg478;
1329*437bfbebSnyanmisaka 
1330*437bfbebSnyanmisaka     struct {
1331*437bfbebSnyanmisaka         RK_U32 sw_pp5_scale_hratio     : 18;
1332*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_format       : 5;
1333*437bfbebSnyanmisaka         RK_U32 sw_pp5_ver_scale_mode   : 2;
1334*437bfbebSnyanmisaka         RK_U32 sw_pp5_hor_scale_mode   : 2;
1335*437bfbebSnyanmisaka         RK_U32 reserved0               : 5;
1336*437bfbebSnyanmisaka     } swreg479;
1337*437bfbebSnyanmisaka 
1338*437bfbebSnyanmisaka     struct {
1339*437bfbebSnyanmisaka         RK_U32 sw_pp5_scale_wratio   : 18;
1340*437bfbebSnyanmisaka         RK_U32 reserved0             : 5;
1341*437bfbebSnyanmisaka         RK_U32 reserved1             : 5;
1342*437bfbebSnyanmisaka         RK_U32 reserved2             : 1;
1343*437bfbebSnyanmisaka         RK_U32 reserved4             : 1;
1344*437bfbebSnyanmisaka         RK_U32 reserved3             : 1;
1345*437bfbebSnyanmisaka         RK_U32 reserved5             : 1;
1346*437bfbebSnyanmisaka     } swreg480;
1347*437bfbebSnyanmisaka 
1348*437bfbebSnyanmisaka     struct {
1349*437bfbebSnyanmisaka         RK_U32 sw_pp5_hscale_invra   : 16;
1350*437bfbebSnyanmisaka         RK_U32 sw_pp5_wscale_invra   : 16;
1351*437bfbebSnyanmisaka     } swreg481;
1352*437bfbebSnyanmisaka 
1353*437bfbebSnyanmisaka     struct {
1354*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_r_base_msb    : 32;
1355*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_lu_base_msb   : 32;
1356*437bfbebSnyanmisaka     } swreg482;
1357*437bfbebSnyanmisaka 
1358*437bfbebSnyanmisaka     struct {
1359*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_r_base_lsb    : 32;
1360*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_lu_base_lsb   : 32;
1361*437bfbebSnyanmisaka     } swreg483;
1362*437bfbebSnyanmisaka 
1363*437bfbebSnyanmisaka     struct {
1364*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_g_base_msb    : 32;
1365*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_ch_base_msb   : 32;
1366*437bfbebSnyanmisaka     } swreg484;
1367*437bfbebSnyanmisaka 
1368*437bfbebSnyanmisaka     struct {
1369*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_g_base_lsb    : 32;
1370*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_ch_base_lsb   : 32;
1371*437bfbebSnyanmisaka     } swreg485;
1372*437bfbebSnyanmisaka 
1373*437bfbebSnyanmisaka     struct {
1374*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_c_stride   : 16;
1375*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_y_stride   : 16;
1376*437bfbebSnyanmisaka     } swreg486;
1377*437bfbebSnyanmisaka 
1378*437bfbebSnyanmisaka     struct {
1379*437bfbebSnyanmisaka         RK_U32 sw_pp5_crop_starty     : 13;
1380*437bfbebSnyanmisaka         RK_U32 sw_pp5_rotation_mode   : 2;
1381*437bfbebSnyanmisaka         RK_U32 reserved0              : 1;
1382*437bfbebSnyanmisaka         RK_U32 sw_pp5_crop_startx     : 13;
1383*437bfbebSnyanmisaka         RK_U32 sw_pp5_flip_mode       : 2;
1384*437bfbebSnyanmisaka         RK_U32 sw_pp5_pad_sel         : 1;
1385*437bfbebSnyanmisaka     } swreg487;
1386*437bfbebSnyanmisaka 
1387*437bfbebSnyanmisaka     struct {
1388*437bfbebSnyanmisaka         RK_U32 sw_pp5_in_height   : 16;
1389*437bfbebSnyanmisaka         RK_U32 sw_pp5_in_width    : 16;
1390*437bfbebSnyanmisaka     } swreg488;
1391*437bfbebSnyanmisaka 
1392*437bfbebSnyanmisaka     struct {
1393*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_height   : 16;
1394*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_width    : 16;
1395*437bfbebSnyanmisaka     } swreg489;
1396*437bfbebSnyanmisaka 
1397*437bfbebSnyanmisaka     struct {
1398*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_b_base_msb        : 32;
1399*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_lu_bot_base_msb   : 32;
1400*437bfbebSnyanmisaka     } swreg490;
1401*437bfbebSnyanmisaka 
1402*437bfbebSnyanmisaka     struct {
1403*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_b_base_lsb        : 32;
1404*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_lu_bot_base_lsb   : 32;
1405*437bfbebSnyanmisaka     } swreg491;
1406*437bfbebSnyanmisaka 
1407*437bfbebSnyanmisaka     struct {
1408*437bfbebSnyanmisaka         RK_U32 sw_pp5_crop2_starty          : 13;
1409*437bfbebSnyanmisaka         RK_U32 reserved0                    : 3;
1410*437bfbebSnyanmisaka         RK_U32 sw_pp5_crop2_startx          : 13;
1411*437bfbebSnyanmisaka         RK_U32 reserved1                    : 3;
1412*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_ch_bot_base_msb   : 32;
1413*437bfbebSnyanmisaka     } swreg492;
1414*437bfbebSnyanmisaka 
1415*437bfbebSnyanmisaka     struct {
1416*437bfbebSnyanmisaka         RK_U32 sw_pp5_crop2_out_height      : 16;
1417*437bfbebSnyanmisaka         RK_U32 sw_pp5_crop2_out_width       : 16;
1418*437bfbebSnyanmisaka         // RK_U32 sw_pp5_out_ch_bot_base_lsb   : 32;
1419*437bfbebSnyanmisaka     } swreg493;
1420*437bfbebSnyanmisaka 
1421*437bfbebSnyanmisaka     struct {
1422*437bfbebSnyanmisaka         RK_U32 sw_pp5_contrast_off1     : 12;
1423*437bfbebSnyanmisaka         RK_U32 sw_pp5_contrast_off2     : 12;
1424*437bfbebSnyanmisaka         RK_U32 reserved0                : 2;
1425*437bfbebSnyanmisaka         RK_U32 sw_pp5_dither_select_b   : 2;
1426*437bfbebSnyanmisaka         RK_U32 sw_pp5_dither_select_g   : 2;
1427*437bfbebSnyanmisaka         RK_U32 sw_pp5_dither_select_r   : 2;
1428*437bfbebSnyanmisaka     } swreg494;
1429*437bfbebSnyanmisaka 
1430*437bfbebSnyanmisaka     struct {
1431*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coefff    : 10;
1432*437bfbebSnyanmisaka         RK_U32 sw_pp5_contrast_thr2   : 10;
1433*437bfbebSnyanmisaka         RK_U32 sw_pp5_contrast_thr1   : 10;
1434*437bfbebSnyanmisaka         RK_U32 reserved0              : 2;
1435*437bfbebSnyanmisaka     } swreg495;
1436*437bfbebSnyanmisaka 
1437*437bfbebSnyanmisaka     struct {
1438*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coeffa1   : 16;
1439*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coeffa2   : 16;
1440*437bfbebSnyanmisaka     } swreg496;
1441*437bfbebSnyanmisaka 
1442*437bfbebSnyanmisaka     struct {
1443*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coeffb   : 16;
1444*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coeffc   : 16;
1445*437bfbebSnyanmisaka     } swreg497;
1446*437bfbebSnyanmisaka 
1447*437bfbebSnyanmisaka     struct {
1448*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coeffd   : 16;
1449*437bfbebSnyanmisaka         RK_U32 sw_pp5_color_coeffe   : 16;
1450*437bfbebSnyanmisaka     } swreg498;
1451*437bfbebSnyanmisaka 
1452*437bfbebSnyanmisaka     struct {
1453*437bfbebSnyanmisaka         RK_U32 sw_pp5_out_alpha          : 8;
1454*437bfbebSnyanmisaka         RK_U32 sw_pp5_dup_hor            : 8;
1455*437bfbebSnyanmisaka         RK_U32 sw_pp5_hcale_invra_ext    : 8;
1456*437bfbebSnyanmisaka         RK_U32 sw_pp5_wscale_invra_ext   : 8;
1457*437bfbebSnyanmisaka     } swreg499;
1458*437bfbebSnyanmisaka 
1459*437bfbebSnyanmisaka     struct {
1460*437bfbebSnyanmisaka         RK_U32 sw_pp5_x_filter_size   : 12;
1461*437bfbebSnyanmisaka         RK_U32 sw_pp5_y_filter_size   : 12;
1462*437bfbebSnyanmisaka         RK_U32 reserved0              : 8;
1463*437bfbebSnyanmisaka     } swreg500;
1464*437bfbebSnyanmisaka 
1465*437bfbebSnyanmisaka     struct {
1466*437bfbebSnyanmisaka         RK_U32 sw_pp5_lanczos_tbl_base_msb   : 32;
1467*437bfbebSnyanmisaka     } swreg501;
1468*437bfbebSnyanmisaka 
1469*437bfbebSnyanmisaka     struct {
1470*437bfbebSnyanmisaka         RK_U32 sw_pp5_lanczos_tbl_base_lsb   : 32;
1471*437bfbebSnyanmisaka     } swreg502;
1472*437bfbebSnyanmisaka 
1473*437bfbebSnyanmisaka     struct {
1474*437bfbebSnyanmisaka         RK_U32 sw_pp1_virtual_top      : 4;
1475*437bfbebSnyanmisaka         RK_U32 sw_pp1_virtual_left     : 4;
1476*437bfbebSnyanmisaka         RK_U32 sw_pp1_virtual_bottom   : 4;
1477*437bfbebSnyanmisaka         RK_U32 sw_pp1_virtual_right    : 4;
1478*437bfbebSnyanmisaka         RK_U32 sw_pp0_virtual_top      : 4;
1479*437bfbebSnyanmisaka         RK_U32 sw_pp0_virtual_left     : 4;
1480*437bfbebSnyanmisaka         RK_U32 sw_pp0_virtual_bottom   : 4;
1481*437bfbebSnyanmisaka         RK_U32 sw_pp0_virtual_right    : 4;
1482*437bfbebSnyanmisaka     } swreg503;
1483*437bfbebSnyanmisaka 
1484*437bfbebSnyanmisaka     struct {
1485*437bfbebSnyanmisaka         RK_U32 sw_pp0_afbc_tile_base_msb   : 32;
1486*437bfbebSnyanmisaka     } swreg504;
1487*437bfbebSnyanmisaka 
1488*437bfbebSnyanmisaka     struct {
1489*437bfbebSnyanmisaka         RK_U32 sw_pp0_afbc_tile_base_lsb   : 32;
1490*437bfbebSnyanmisaka     } swreg505;
1491*437bfbebSnyanmisaka 
1492*437bfbebSnyanmisaka     struct {
1493*437bfbebSnyanmisaka         RK_U32 sw_pp1_afbc_tile_base_msb   : 32;
1494*437bfbebSnyanmisaka     } swreg506;
1495*437bfbebSnyanmisaka 
1496*437bfbebSnyanmisaka     struct {
1497*437bfbebSnyanmisaka         RK_U32 sw_pp1_afbc_tile_base_lsb   : 32;
1498*437bfbebSnyanmisaka     } swreg507;
1499*437bfbebSnyanmisaka 
1500*437bfbebSnyanmisaka     struct {
1501*437bfbebSnyanmisaka         RK_U32 sw_pp0_padV           : 10;
1502*437bfbebSnyanmisaka         RK_U32 sw_pp0_padU           : 10;
1503*437bfbebSnyanmisaka         RK_U32 sw_pp0_padY           : 10;
1504*437bfbebSnyanmisaka         RK_U32 sw_pp0_src_sel_mode   : 2;
1505*437bfbebSnyanmisaka     } swreg508;
1506*437bfbebSnyanmisaka 
1507*437bfbebSnyanmisaka     struct {
1508*437bfbebSnyanmisaka         RK_U32 sw_pp1_padV           : 10;
1509*437bfbebSnyanmisaka         RK_U32 sw_pp1_padU           : 10;
1510*437bfbebSnyanmisaka         RK_U32 sw_pp1_padY           : 10;
1511*437bfbebSnyanmisaka         RK_U32 sw_pp1_src_sel_mode   : 2;
1512*437bfbebSnyanmisaka     } swreg509;
1513*437bfbebSnyanmisaka 
1514*437bfbebSnyanmisaka     struct {
1515*437bfbebSnyanmisaka         RK_U32 sw_pp2_padV           : 10;
1516*437bfbebSnyanmisaka         RK_U32 sw_pp2_padU           : 10;
1517*437bfbebSnyanmisaka         RK_U32 sw_pp2_padY           : 10;
1518*437bfbebSnyanmisaka         RK_U32 sw_pp2_src_sel_mode   : 2;
1519*437bfbebSnyanmisaka     } swreg510;
1520*437bfbebSnyanmisaka 
1521*437bfbebSnyanmisaka     struct {
1522*437bfbebSnyanmisaka         RK_U32 sw_pp3_padV           : 10;
1523*437bfbebSnyanmisaka         RK_U32 sw_pp3_padU           : 10;
1524*437bfbebSnyanmisaka         RK_U32 sw_pp3_padY           : 10;
1525*437bfbebSnyanmisaka         RK_U32 sw_pp3_src_sel_mode   : 2;
1526*437bfbebSnyanmisaka     } swreg511;
1527*437bfbebSnyanmisaka 
1528*437bfbebSnyanmisaka } VdpuAv1dPPCfg;
1529*437bfbebSnyanmisaka 
1530*437bfbebSnyanmisaka typedef struct VdpuAv1dRegSet_t {
1531*437bfbebSnyanmisaka     struct {
1532*437bfbebSnyanmisaka         RK_U32 reserved0   : 4;
1533*437bfbebSnyanmisaka         RK_U32 reserved1   : 8;
1534*437bfbebSnyanmisaka         RK_U32 reserved2   : 4;
1535*437bfbebSnyanmisaka         RK_U32 reserved3   : 4;
1536*437bfbebSnyanmisaka         RK_U32 reserved4   : 12;
1537*437bfbebSnyanmisaka     } swreg0;
1538*437bfbebSnyanmisaka 
1539*437bfbebSnyanmisaka     struct {
1540*437bfbebSnyanmisaka         RK_U32 sw_dec_e                 : 1;
1541*437bfbebSnyanmisaka         RK_U32 reserved0                : 1;
1542*437bfbebSnyanmisaka         RK_U32 sw_dec_bus_int_dis       : 1;
1543*437bfbebSnyanmisaka         RK_U32 sw_dec_timeout_source    : 1;
1544*437bfbebSnyanmisaka 
1545*437bfbebSnyanmisaka         RK_U32 sw_dec_irq_dis           : 1;
1546*437bfbebSnyanmisaka         RK_U32 sw_dec_abort_e           : 1;
1547*437bfbebSnyanmisaka         RK_U32 sw_dec_self_reset_dis    : 1;
1548*437bfbebSnyanmisaka         RK_U32 sw_dec_tile_int_e        : 1;
1549*437bfbebSnyanmisaka 
1550*437bfbebSnyanmisaka         RK_U32 sw_dec_irq               : 1;
1551*437bfbebSnyanmisaka         RK_U32 reserved1                : 2;
1552*437bfbebSnyanmisaka         RK_U32 sw_dec_abort_int         : 1;
1553*437bfbebSnyanmisaka 
1554*437bfbebSnyanmisaka         RK_U32 sw_dec_rdy_int           : 1;
1555*437bfbebSnyanmisaka         RK_U32 sw_dec_bus_int           : 1;
1556*437bfbebSnyanmisaka         RK_U32 sw_dec_buffer_int        : 1;
1557*437bfbebSnyanmisaka         RK_U32 reserved2                : 1;
1558*437bfbebSnyanmisaka 
1559*437bfbebSnyanmisaka         RK_U32 sw_dec_error_int         : 1;
1560*437bfbebSnyanmisaka         RK_U32 reserved3                : 1;
1561*437bfbebSnyanmisaka         RK_U32 sw_dec_timeout           : 1;
1562*437bfbebSnyanmisaka         RK_U32 reserved4                : 2;
1563*437bfbebSnyanmisaka         RK_U32 sw_dec_ext_timeout_int   : 1;
1564*437bfbebSnyanmisaka         RK_U32 reserved5                : 1;
1565*437bfbebSnyanmisaka         RK_U32 sw_dec_tile_int          : 1;
1566*437bfbebSnyanmisaka 
1567*437bfbebSnyanmisaka         RK_U32 reserved6                : 8;
1568*437bfbebSnyanmisaka     } swreg1;
1569*437bfbebSnyanmisaka 
1570*437bfbebSnyanmisaka     struct {
1571*437bfbebSnyanmisaka         RK_U32 reserved0           : 4;
1572*437bfbebSnyanmisaka         RK_U32 sw_drm_e            : 1;
1573*437bfbebSnyanmisaka         RK_U32 reserved1           : 5;
1574*437bfbebSnyanmisaka         RK_U32 sw_dec_clk_gate_e   : 1;
1575*437bfbebSnyanmisaka         RK_U32 reserved2           : 1;
1576*437bfbebSnyanmisaka 
1577*437bfbebSnyanmisaka         RK_U32 sw_dec_tab_swap     : 4;
1578*437bfbebSnyanmisaka         RK_U32 reserved3           : 4;
1579*437bfbebSnyanmisaka         RK_U32 sw_dec_dirmv_swap   : 4;
1580*437bfbebSnyanmisaka         RK_U32 sw_dec_pic_swap     : 4;
1581*437bfbebSnyanmisaka         RK_U32 sw_dec_strm_swap    : 4;
1582*437bfbebSnyanmisaka     } swreg2;
1583*437bfbebSnyanmisaka 
1584*437bfbebSnyanmisaka     struct {
1585*437bfbebSnyanmisaka         RK_U32 reserved0                 : 8;
1586*437bfbebSnyanmisaka         RK_U32 sw_dec_out_ec_bypass      : 1;
1587*437bfbebSnyanmisaka         RK_U32 reserved1                 : 3;
1588*437bfbebSnyanmisaka         RK_U32 sw_write_mvs_e            : 1;
1589*437bfbebSnyanmisaka         RK_U32 reserved2                 : 1;
1590*437bfbebSnyanmisaka         RK_U32 sw_filtering_dis          : 1;
1591*437bfbebSnyanmisaka         RK_U32 sw_dec_out_dis            : 1;
1592*437bfbebSnyanmisaka         RK_U32 sw_dec_out_ec_byte_word   : 1;
1593*437bfbebSnyanmisaka         RK_U32 reserved3                 : 9;
1594*437bfbebSnyanmisaka         RK_U32 sw_skip_mode              : 1;
1595*437bfbebSnyanmisaka         RK_U32 sw_dec_mode               : 5;
1596*437bfbebSnyanmisaka     } swreg3;
1597*437bfbebSnyanmisaka 
1598*437bfbebSnyanmisaka     struct {
1599*437bfbebSnyanmisaka         RK_U32 sw_ref_frames          : 4;
1600*437bfbebSnyanmisaka         RK_U32 reserved0              : 2;
1601*437bfbebSnyanmisaka         RK_U32 sw_pic_height_in_cbs   : 13;
1602*437bfbebSnyanmisaka         RK_U32 sw_pic_width_in_cbs    : 13;
1603*437bfbebSnyanmisaka     } swreg4;
1604*437bfbebSnyanmisaka 
1605*437bfbebSnyanmisaka     struct {
1606*437bfbebSnyanmisaka         RK_U32 sw_ref_scaling_enable           : 1;
1607*437bfbebSnyanmisaka         RK_U32 sw_filt_level_base_gt32         : 1;
1608*437bfbebSnyanmisaka         RK_U32 sw_error_resilient              : 1;
1609*437bfbebSnyanmisaka         RK_U32 sw_force_interger_mv            : 1;
1610*437bfbebSnyanmisaka 
1611*437bfbebSnyanmisaka         RK_U32 sw_allow_intrabc                : 1;
1612*437bfbebSnyanmisaka         RK_U32 sw_allow_screen_content_tools   : 1;
1613*437bfbebSnyanmisaka         RK_U32 sw_reduced_tx_set_used          : 1;
1614*437bfbebSnyanmisaka         RK_U32 sw_enable_dual_filter           : 1;
1615*437bfbebSnyanmisaka 
1616*437bfbebSnyanmisaka         RK_U32 sw_enable_jnt_comp              : 1;
1617*437bfbebSnyanmisaka         RK_U32 sw_allow_filter_intra           : 1;
1618*437bfbebSnyanmisaka         RK_U32 sw_enable_intra_edge_filter     : 1;
1619*437bfbebSnyanmisaka         RK_U32 sw_tempor_mvp_e                 : 1;//RK_U32 reserved0                       : 1;
1620*437bfbebSnyanmisaka 
1621*437bfbebSnyanmisaka         RK_U32 sw_allow_interintra             : 1;
1622*437bfbebSnyanmisaka         RK_U32 sw_allow_masked_compound        : 1;
1623*437bfbebSnyanmisaka         RK_U32 sw_enable_cdef                  : 1;
1624*437bfbebSnyanmisaka         RK_U32 sw_switchable_motion_mode       : 1;
1625*437bfbebSnyanmisaka 
1626*437bfbebSnyanmisaka         RK_U32 sw_show_frame                   : 1;
1627*437bfbebSnyanmisaka         RK_U32 sw_superres_is_scaled           : 1;
1628*437bfbebSnyanmisaka         RK_U32 sw_allow_warp                   : 1;
1629*437bfbebSnyanmisaka         RK_U32 sw_disable_cdf_update           : 1;
1630*437bfbebSnyanmisaka 
1631*437bfbebSnyanmisaka         RK_U32 sw_preskip_segid                : 1;
1632*437bfbebSnyanmisaka         RK_U32 sw_delta_lf_present             : 1;
1633*437bfbebSnyanmisaka         RK_U32 sw_delta_lf_multi               : 1;
1634*437bfbebSnyanmisaka         RK_U32 sw_delta_lf_res_log             : 2;
1635*437bfbebSnyanmisaka 
1636*437bfbebSnyanmisaka         // RK_U32 reserved1                       : -14;
1637*437bfbebSnyanmisaka         RK_U32 sw_strm_start_bit               : 7;
1638*437bfbebSnyanmisaka     } swreg5;
1639*437bfbebSnyanmisaka 
1640*437bfbebSnyanmisaka     struct {
1641*437bfbebSnyanmisaka         RK_U32 sw_stream_len   : 32;
1642*437bfbebSnyanmisaka     } swreg6;
1643*437bfbebSnyanmisaka 
1644*437bfbebSnyanmisaka     struct {
1645*437bfbebSnyanmisaka         RK_U32 sw_delta_q_present            : 1;
1646*437bfbebSnyanmisaka         RK_U32 sw_delta_q_res_log            : 2;
1647*437bfbebSnyanmisaka         RK_U32 sw_cdef_damping               : 2;
1648*437bfbebSnyanmisaka         RK_U32 sw_cdef_bits                  : 2;
1649*437bfbebSnyanmisaka         RK_U32 sw_apply_grain                : 1;
1650*437bfbebSnyanmisaka         RK_U32 sw_num_y_points_b             : 1;
1651*437bfbebSnyanmisaka         RK_U32 sw_num_cb_points_b            : 1;
1652*437bfbebSnyanmisaka         RK_U32 sw_num_cr_points_b            : 1;
1653*437bfbebSnyanmisaka         RK_U32 sw_overlap_flag               : 1;
1654*437bfbebSnyanmisaka         RK_U32 sw_clip_to_restricted_range   : 1;
1655*437bfbebSnyanmisaka         RK_U32 sw_chroma_scaling_from_luma   : 1;
1656*437bfbebSnyanmisaka         RK_U32 sw_random_seed                : 16;
1657*437bfbebSnyanmisaka         RK_U32 sw_blackwhite_e               : 1;
1658*437bfbebSnyanmisaka         RK_U32 reserved0                     : 1;
1659*437bfbebSnyanmisaka     } swreg7;
1660*437bfbebSnyanmisaka 
1661*437bfbebSnyanmisaka     struct {
1662*437bfbebSnyanmisaka         RK_U32 sw_scaling_shift        : 4;
1663*437bfbebSnyanmisaka         RK_U32 sw_bit_depth_c_minus8   : 2;
1664*437bfbebSnyanmisaka         RK_U32 sw_bit_depth_y_minus8   : 2;
1665*437bfbebSnyanmisaka         RK_U32 sw_quant_base_qindex    : 8;
1666*437bfbebSnyanmisaka         RK_U32 sw_idr_pic_e            : 1;
1667*437bfbebSnyanmisaka         RK_U32 sw_superres_pic_width   : 15;
1668*437bfbebSnyanmisaka     } swreg8;
1669*437bfbebSnyanmisaka 
1670*437bfbebSnyanmisaka     struct {
1671*437bfbebSnyanmisaka         RK_U32 reserved0                   : 2;
1672*437bfbebSnyanmisaka         RK_U32 sw_ref4_sign_bias           : 1;
1673*437bfbebSnyanmisaka         RK_U32 sw_ref5_sign_bias           : 1;
1674*437bfbebSnyanmisaka         RK_U32 sw_ref6_sign_bias           : 1;
1675*437bfbebSnyanmisaka         RK_U32 sw_mf1_type                 : 3;
1676*437bfbebSnyanmisaka         RK_U32 sw_mf2_type                 : 3;
1677*437bfbebSnyanmisaka         RK_U32 sw_mf3_type                 : 3;
1678*437bfbebSnyanmisaka         RK_U32 sw_scale_denom_minus9       : 3;
1679*437bfbebSnyanmisaka         RK_U32 sw_last_active_seg          : 3;
1680*437bfbebSnyanmisaka         RK_U32 sw_context_update_tile_id   : 12;
1681*437bfbebSnyanmisaka     } swreg9;
1682*437bfbebSnyanmisaka 
1683*437bfbebSnyanmisaka     struct {
1684*437bfbebSnyanmisaka         RK_U32 sw_tile_transpose           : 1;
1685*437bfbebSnyanmisaka         RK_U32 sw_tile_enable              : 1;
1686*437bfbebSnyanmisaka         RK_U32 sw_multicore_full_width     : 8;
1687*437bfbebSnyanmisaka         RK_U32 sw_num_tile_rows_8k_av1     : 7;
1688*437bfbebSnyanmisaka         RK_U32 sw_num_tile_cols_8k         : 7;
1689*437bfbebSnyanmisaka         RK_U32 sw_multicore_tile_start_x   : 8;
1690*437bfbebSnyanmisaka     } swreg10;
1691*437bfbebSnyanmisaka 
1692*437bfbebSnyanmisaka     struct {
1693*437bfbebSnyanmisaka         RK_U32 sw_use_temporal3_mvs                 : 1;
1694*437bfbebSnyanmisaka         RK_U32 sw_use_temporal2_mvs                 : 1;
1695*437bfbebSnyanmisaka         RK_U32 sw_use_temporal1_mvs                 : 1;
1696*437bfbebSnyanmisaka         RK_U32 sw_use_temporal0_mvs                 : 1;
1697*437bfbebSnyanmisaka         RK_U32 sw_comp_pred_mode                    : 2;
1698*437bfbebSnyanmisaka         RK_U32 reserved0                            : 1;
1699*437bfbebSnyanmisaka         RK_U32 sw_high_prec_mv_e                    : 1;
1700*437bfbebSnyanmisaka         RK_U32 sw_mcomp_filt_type                   : 3;
1701*437bfbebSnyanmisaka         RK_U32 sw_multicore_expect_context_update   : 1;
1702*437bfbebSnyanmisaka         RK_U32 sw_multicore_sbx_offset              : 7;
1703*437bfbebSnyanmisaka         RK_U32 sw_multicore_tile_col                : 7;
1704*437bfbebSnyanmisaka         RK_U32 reserved1                            : 1;
1705*437bfbebSnyanmisaka         RK_U32 sw_transform_mode                    : 3;
1706*437bfbebSnyanmisaka         RK_U32 sw_dec_tile_size_mag                 : 2;
1707*437bfbebSnyanmisaka     } swreg11;
1708*437bfbebSnyanmisaka 
1709*437bfbebSnyanmisaka     struct {
1710*437bfbebSnyanmisaka         RK_U32 reserved0                    : 2;
1711*437bfbebSnyanmisaka         RK_U32 sw_seg_quant_sign            : 8;
1712*437bfbebSnyanmisaka         RK_U32 sw_max_cb_size               : 3;
1713*437bfbebSnyanmisaka         RK_U32 sw_min_cb_size               : 3;
1714*437bfbebSnyanmisaka         RK_U32 sw_av1_comp_pred_fixed_ref   : 3;
1715*437bfbebSnyanmisaka         RK_U32 sw_multicore_tile_width      : 7;
1716*437bfbebSnyanmisaka         RK_U32 sw_pic_height_pad            : 3;
1717*437bfbebSnyanmisaka         RK_U32 sw_pic_width_pad             : 3;
1718*437bfbebSnyanmisaka     } swreg12;
1719*437bfbebSnyanmisaka 
1720*437bfbebSnyanmisaka     struct {
1721*437bfbebSnyanmisaka         RK_U32 sw_segment_e                : 1;
1722*437bfbebSnyanmisaka         RK_U32 sw_segment_upd_e            : 1;
1723*437bfbebSnyanmisaka         RK_U32 sw_segment_temp_upd_e       : 1;
1724*437bfbebSnyanmisaka         RK_U32 sw_comp_pred_var_ref0_av1   : 3;
1725*437bfbebSnyanmisaka         RK_U32 sw_comp_pred_var_ref1_av1   : 3;
1726*437bfbebSnyanmisaka         RK_U32 sw_lossless_e               : 1;
1727*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1728*437bfbebSnyanmisaka         RK_U32 sw_qp_delta_ch_ac_av1       : 7;
1729*437bfbebSnyanmisaka         RK_U32 sw_qp_delta_ch_dc_av1       : 7;
1730*437bfbebSnyanmisaka         RK_U32 sw_qp_delta_y_dc_av1        : 7;
1731*437bfbebSnyanmisaka     } swreg13;
1732*437bfbebSnyanmisaka 
1733*437bfbebSnyanmisaka     struct {
1734*437bfbebSnyanmisaka         RK_U32 sw_quant_seg0               : 8;
1735*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg0          : 6;
1736*437bfbebSnyanmisaka         RK_U32 sw_skip_seg0                : 1;
1737*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg0          : 4;
1738*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg0   : 7;
1739*437bfbebSnyanmisaka         RK_U32 sw_filt_level0              : 6;
1740*437bfbebSnyanmisaka     } swreg14;
1741*437bfbebSnyanmisaka 
1742*437bfbebSnyanmisaka     struct {
1743*437bfbebSnyanmisaka         RK_U32 sw_quant_seg1               : 8;
1744*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg1          : 6;
1745*437bfbebSnyanmisaka         RK_U32 sw_skip_seg1                : 1;
1746*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg1          : 4;
1747*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg1   : 7;
1748*437bfbebSnyanmisaka         RK_U32 sw_filt_level1              : 6;
1749*437bfbebSnyanmisaka     } swreg15;
1750*437bfbebSnyanmisaka 
1751*437bfbebSnyanmisaka     struct {
1752*437bfbebSnyanmisaka         RK_U32 sw_quant_seg2               : 8;
1753*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg2          : 6;
1754*437bfbebSnyanmisaka         RK_U32 sw_skip_seg2                : 1;
1755*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg2          : 4;
1756*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg2   : 7;
1757*437bfbebSnyanmisaka         RK_U32 sw_filt_level2              : 6;
1758*437bfbebSnyanmisaka     } swreg16;
1759*437bfbebSnyanmisaka 
1760*437bfbebSnyanmisaka     struct {
1761*437bfbebSnyanmisaka         RK_U32 sw_quant_seg3               : 8;
1762*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg3          : 6;
1763*437bfbebSnyanmisaka         RK_U32 sw_skip_seg3                : 1;
1764*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg3          : 4;
1765*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg3   : 7;
1766*437bfbebSnyanmisaka         RK_U32 sw_filt_level3              : 6;
1767*437bfbebSnyanmisaka     } swreg17;
1768*437bfbebSnyanmisaka 
1769*437bfbebSnyanmisaka     struct {
1770*437bfbebSnyanmisaka         RK_U32 sw_quant_seg4               : 8;
1771*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg4          : 6;
1772*437bfbebSnyanmisaka         RK_U32 sw_skip_seg4                : 1;
1773*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg4          : 4;
1774*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg4   : 7;
1775*437bfbebSnyanmisaka         RK_U32 sw_lr_type                  : 6;
1776*437bfbebSnyanmisaka     } swreg18;
1777*437bfbebSnyanmisaka 
1778*437bfbebSnyanmisaka     struct {
1779*437bfbebSnyanmisaka         RK_U32 sw_quant_seg5               : 8;
1780*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg5          : 6;
1781*437bfbebSnyanmisaka         RK_U32 sw_skip_seg5                : 1;
1782*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg5              : 4;
1783*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg5   : 7;
1784*437bfbebSnyanmisaka         RK_U32 sw_lr_unit_size             : 6;
1785*437bfbebSnyanmisaka     } swreg19;
1786*437bfbebSnyanmisaka 
1787*437bfbebSnyanmisaka     struct {
1788*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg0   : 7;
1789*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg0   : 7;
1790*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg0   : 7;
1791*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg0           : 1;
1792*437bfbebSnyanmisaka         RK_U32 sw_mf1_last_offset          : 9;
1793*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1794*437bfbebSnyanmisaka     } swreg20;
1795*437bfbebSnyanmisaka 
1796*437bfbebSnyanmisaka     struct {
1797*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg1   : 7;
1798*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg1   : 7;
1799*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg1   : 7;
1800*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg1           : 1;
1801*437bfbebSnyanmisaka         RK_U32 sw_mf1_last2_offset         : 9;
1802*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1803*437bfbebSnyanmisaka     } swreg21;
1804*437bfbebSnyanmisaka 
1805*437bfbebSnyanmisaka     struct {
1806*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg2   : 7;
1807*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg2   : 7;
1808*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg2   : 7;
1809*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg2           : 1;
1810*437bfbebSnyanmisaka         RK_U32 sw_mf1_last3_offset         : 9;
1811*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1812*437bfbebSnyanmisaka     } swreg22;
1813*437bfbebSnyanmisaka 
1814*437bfbebSnyanmisaka     struct {
1815*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg3   : 7;
1816*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg3   : 7;
1817*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg3   : 7;
1818*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg3           : 1;
1819*437bfbebSnyanmisaka         RK_U32 sw_mf1_golden_offset        : 9;
1820*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1821*437bfbebSnyanmisaka     } swreg23;
1822*437bfbebSnyanmisaka 
1823*437bfbebSnyanmisaka     struct {
1824*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg4   : 7;
1825*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg4   : 7;
1826*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg4   : 7;
1827*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg4           : 1;
1828*437bfbebSnyanmisaka         RK_U32 sw_mf1_bwdref_offset        : 9;
1829*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1830*437bfbebSnyanmisaka     } swreg24;
1831*437bfbebSnyanmisaka 
1832*437bfbebSnyanmisaka     struct {
1833*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg5   : 7;
1834*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg5   : 7;
1835*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg5   : 7;
1836*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg5           : 1;
1837*437bfbebSnyanmisaka         RK_U32 sw_mf1_altref2_offset       : 9;
1838*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1839*437bfbebSnyanmisaka     } swreg25;
1840*437bfbebSnyanmisaka 
1841*437bfbebSnyanmisaka     struct {
1842*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg6   : 7;
1843*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg6   : 7;
1844*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg6   : 7;
1845*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg6           : 1;
1846*437bfbebSnyanmisaka         RK_U32 sw_mf1_altref_offset        : 9;
1847*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1848*437bfbebSnyanmisaka     } swreg26;
1849*437bfbebSnyanmisaka 
1850*437bfbebSnyanmisaka     struct {
1851*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta1_seg7   : 7;
1852*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta2_seg7   : 7;
1853*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta3_seg7   : 7;
1854*437bfbebSnyanmisaka         RK_U32 sw_global_mv_seg7           : 1;
1855*437bfbebSnyanmisaka         RK_U32 sw_mf2_last_offset          : 9;
1856*437bfbebSnyanmisaka         RK_U32 reserved0                   : 1;
1857*437bfbebSnyanmisaka     } swreg27;
1858*437bfbebSnyanmisaka 
1859*437bfbebSnyanmisaka     struct {
1860*437bfbebSnyanmisaka         RK_U32 sw_cb_offset          : 9;
1861*437bfbebSnyanmisaka         RK_U32 sw_cb_luma_mult       : 8;
1862*437bfbebSnyanmisaka         RK_U32 sw_cb_mult            : 8;
1863*437bfbebSnyanmisaka         RK_U32 sw_quant_delta_v_dc   : 7;
1864*437bfbebSnyanmisaka     } swreg28;
1865*437bfbebSnyanmisaka 
1866*437bfbebSnyanmisaka     struct {
1867*437bfbebSnyanmisaka         RK_U32 sw_cr_offset          : 9;
1868*437bfbebSnyanmisaka         RK_U32 sw_cr_luma_mult       : 8;
1869*437bfbebSnyanmisaka         RK_U32 sw_cr_mult            : 8;
1870*437bfbebSnyanmisaka         RK_U32 sw_quant_delta_v_ac   : 7;
1871*437bfbebSnyanmisaka     } swreg29;
1872*437bfbebSnyanmisaka 
1873*437bfbebSnyanmisaka     struct {
1874*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_5   : 7;
1875*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_4   : 7;
1876*437bfbebSnyanmisaka         RK_U32 sw_filt_mb_adj_1    : 7;
1877*437bfbebSnyanmisaka         RK_U32 sw_filt_mb_adj_0    : 7;
1878*437bfbebSnyanmisaka         RK_U32 sw_filt_sharpness   : 3;
1879*437bfbebSnyanmisaka         RK_U32 reserved0           : 1;
1880*437bfbebSnyanmisaka     } swreg30;
1881*437bfbebSnyanmisaka 
1882*437bfbebSnyanmisaka     struct {
1883*437bfbebSnyanmisaka         RK_U32 sw_quant_seg6               : 8;
1884*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg6          : 6;
1885*437bfbebSnyanmisaka         RK_U32 sw_skip_seg6                : 1;
1886*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg6              : 4;
1887*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg6   : 7;
1888*437bfbebSnyanmisaka         RK_U32 sw_skip_ref0                : 4;
1889*437bfbebSnyanmisaka         RK_U32 reserved0                   : 2;
1890*437bfbebSnyanmisaka     } swreg31;
1891*437bfbebSnyanmisaka 
1892*437bfbebSnyanmisaka     struct {
1893*437bfbebSnyanmisaka         RK_U32 sw_quant_seg7               : 8;
1894*437bfbebSnyanmisaka         RK_U32 sw_filt_level_seg7          : 6;
1895*437bfbebSnyanmisaka         RK_U32 sw_skip_seg7                : 1;
1896*437bfbebSnyanmisaka         RK_U32 sw_refpic_seg7              : 4;
1897*437bfbebSnyanmisaka         RK_U32 sw_filt_level_delta0_seg7   : 7;
1898*437bfbebSnyanmisaka         RK_U32 sw_skip_ref1                : 4;
1899*437bfbebSnyanmisaka         RK_U32 reserved0                   : 2;
1900*437bfbebSnyanmisaka     } swreg32;
1901*437bfbebSnyanmisaka 
1902*437bfbebSnyanmisaka     struct {
1903*437bfbebSnyanmisaka         RK_U32 sw_ref0_height   : 16;
1904*437bfbebSnyanmisaka         RK_U32 sw_ref0_width    : 16;
1905*437bfbebSnyanmisaka     } swreg33;
1906*437bfbebSnyanmisaka 
1907*437bfbebSnyanmisaka     struct {
1908*437bfbebSnyanmisaka         RK_U32 sw_ref1_height   : 16;
1909*437bfbebSnyanmisaka         RK_U32 sw_ref1_width    : 16;
1910*437bfbebSnyanmisaka     } swreg34;
1911*437bfbebSnyanmisaka 
1912*437bfbebSnyanmisaka     struct {
1913*437bfbebSnyanmisaka         RK_U32 sw_ref2_height   : 16;
1914*437bfbebSnyanmisaka         RK_U32 sw_ref2_width    : 16;
1915*437bfbebSnyanmisaka     } swreg35;
1916*437bfbebSnyanmisaka 
1917*437bfbebSnyanmisaka     struct {
1918*437bfbebSnyanmisaka         RK_U32 sw_ref0_ver_scale   : 16;
1919*437bfbebSnyanmisaka         RK_U32 sw_ref0_hor_scale   : 16;
1920*437bfbebSnyanmisaka     } swreg36;
1921*437bfbebSnyanmisaka 
1922*437bfbebSnyanmisaka     struct {
1923*437bfbebSnyanmisaka         RK_U32 sw_ref1_ver_scale   : 16;
1924*437bfbebSnyanmisaka         RK_U32 sw_ref1_hor_scale   : 16;
1925*437bfbebSnyanmisaka     } swreg37;
1926*437bfbebSnyanmisaka 
1927*437bfbebSnyanmisaka     struct {
1928*437bfbebSnyanmisaka         RK_U32 sw_ref2_ver_scale   : 16;
1929*437bfbebSnyanmisaka         RK_U32 sw_ref2_hor_scale   : 16;
1930*437bfbebSnyanmisaka     } swreg38;
1931*437bfbebSnyanmisaka 
1932*437bfbebSnyanmisaka     struct {
1933*437bfbebSnyanmisaka         RK_U32 sw_ref3_ver_scale   : 16;
1934*437bfbebSnyanmisaka         RK_U32 sw_ref3_hor_scale   : 16;
1935*437bfbebSnyanmisaka     } swreg39;
1936*437bfbebSnyanmisaka 
1937*437bfbebSnyanmisaka     struct {
1938*437bfbebSnyanmisaka         RK_U32 sw_ref4_ver_scale   : 16;
1939*437bfbebSnyanmisaka         RK_U32 sw_ref4_hor_scale   : 16;
1940*437bfbebSnyanmisaka     } swreg40;
1941*437bfbebSnyanmisaka 
1942*437bfbebSnyanmisaka     struct {
1943*437bfbebSnyanmisaka         RK_U32 sw_ref5_ver_scale   : 16;
1944*437bfbebSnyanmisaka         RK_U32 sw_ref5_hor_scale   : 16;
1945*437bfbebSnyanmisaka     } swreg41;
1946*437bfbebSnyanmisaka 
1947*437bfbebSnyanmisaka     struct {
1948*437bfbebSnyanmisaka         RK_U32 sw_ref6_ver_scale   : 16;
1949*437bfbebSnyanmisaka         RK_U32 sw_ref6_hor_scale   : 16;
1950*437bfbebSnyanmisaka     } swreg42;
1951*437bfbebSnyanmisaka     struct {
1952*437bfbebSnyanmisaka         RK_U32 sw_ref3_height   : 16;
1953*437bfbebSnyanmisaka         RK_U32 sw_ref3_width    : 16;
1954*437bfbebSnyanmisaka     } swreg43;
1955*437bfbebSnyanmisaka 
1956*437bfbebSnyanmisaka     struct {
1957*437bfbebSnyanmisaka         RK_U32 sw_ref4_height   : 16;
1958*437bfbebSnyanmisaka         RK_U32 sw_ref4_width    : 16;
1959*437bfbebSnyanmisaka     } swreg44;
1960*437bfbebSnyanmisaka 
1961*437bfbebSnyanmisaka     struct {
1962*437bfbebSnyanmisaka         RK_U32 sw_ref5_height   : 16;
1963*437bfbebSnyanmisaka         RK_U32 sw_ref5_width    : 16;
1964*437bfbebSnyanmisaka     } swreg45;
1965*437bfbebSnyanmisaka 
1966*437bfbebSnyanmisaka     struct {
1967*437bfbebSnyanmisaka         RK_U32 sw_ref6_height   : 16;
1968*437bfbebSnyanmisaka         RK_U32 sw_ref6_width    : 16;
1969*437bfbebSnyanmisaka     } swreg46;
1970*437bfbebSnyanmisaka 
1971*437bfbebSnyanmisaka     struct {
1972*437bfbebSnyanmisaka         RK_U32 sw_mf2_last2_offset    : 9;
1973*437bfbebSnyanmisaka         RK_U32 sw_mf2_last3_offset    : 9;
1974*437bfbebSnyanmisaka         RK_U32 sw_mf2_golden_offset   : 9;
1975*437bfbebSnyanmisaka         RK_U32 sw_qmlevel_y           : 4;
1976*437bfbebSnyanmisaka         RK_U32 reserved0              : 1;
1977*437bfbebSnyanmisaka     } swreg47;
1978*437bfbebSnyanmisaka 
1979*437bfbebSnyanmisaka     struct {
1980*437bfbebSnyanmisaka         RK_U32 sw_mf2_bwdref_offset    : 9;
1981*437bfbebSnyanmisaka         RK_U32 sw_mf2_altref2_offset   : 9;
1982*437bfbebSnyanmisaka         RK_U32 sw_mf2_altref_offset    : 9;
1983*437bfbebSnyanmisaka         RK_U32 sw_qmlevel_u            : 4;
1984*437bfbebSnyanmisaka         RK_U32 reserved0               : 1;
1985*437bfbebSnyanmisaka     } swreg48;
1986*437bfbebSnyanmisaka 
1987*437bfbebSnyanmisaka     struct {
1988*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_6   : 7;
1989*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_7   : 7;
1990*437bfbebSnyanmisaka         RK_U32 sw_qmlevel_v        : 4;
1991*437bfbebSnyanmisaka         RK_U32 reserved0           : 14;
1992*437bfbebSnyanmisaka     } swreg49;
1993*437bfbebSnyanmisaka 
1994*437bfbebSnyanmisaka     struct {
1995*437bfbebSnyanmisaka         RK_U32 SW_DEC_MAX_OWIDTH   : 16;
1996*437bfbebSnyanmisaka         RK_U32 SW_DEC_AV1_PROF     : 1;
1997*437bfbebSnyanmisaka         RK_U32 reserved0           : 15;
1998*437bfbebSnyanmisaka     } swreg50;
1999*437bfbebSnyanmisaka 
2000*437bfbebSnyanmisaka     struct {
2001*437bfbebSnyanmisaka         RK_U32 sw_superres_chroma_step   : 14;
2002*437bfbebSnyanmisaka         RK_U32 sw_superres_luma_step     : 14;
2003*437bfbebSnyanmisaka         RK_U32 reserved0                 : 4;
2004*437bfbebSnyanmisaka     } swreg51;
2005*437bfbebSnyanmisaka 
2006*437bfbebSnyanmisaka     struct {
2007*437bfbebSnyanmisaka         RK_U32 sw_superres_init_chroma_subpel_x   : 14;
2008*437bfbebSnyanmisaka         RK_U32 sw_superres_init_luma_subpel_x     : 14;
2009*437bfbebSnyanmisaka         RK_U32 reserved0                          : 4;
2010*437bfbebSnyanmisaka     } swreg52;
2011*437bfbebSnyanmisaka 
2012*437bfbebSnyanmisaka     struct {
2013*437bfbebSnyanmisaka         RK_U32 sw_cdef_chroma_secondary_strength   : 16;
2014*437bfbebSnyanmisaka         RK_U32 sw_cdef_luma_secondary_strength     : 16;
2015*437bfbebSnyanmisaka     } swreg53;
2016*437bfbebSnyanmisaka 
2017*437bfbebSnyanmisaka     struct {
2018*437bfbebSnyanmisaka         RK_U32 reserved0                 : 5;
2019*437bfbebSnyanmisaka         RK_U32 SW_DEC_ADDR64_SUPPORTED   : 1;
2020*437bfbebSnyanmisaka         RK_U32 reserved1                 : 11;
2021*437bfbebSnyanmisaka         RK_U32 SW_DEC_RFC_EXIST          : 2;
2022*437bfbebSnyanmisaka         RK_U32 reserved2                 : 13;
2023*437bfbebSnyanmisaka     } swreg54;
2024*437bfbebSnyanmisaka 
2025*437bfbebSnyanmisaka     struct {
2026*437bfbebSnyanmisaka         RK_U32 sw_apf_threshold        : 16;
2027*437bfbebSnyanmisaka         RK_U32 reserved0               : 14;
2028*437bfbebSnyanmisaka         RK_U32 sw_apf_single_pu_mode   : 1;
2029*437bfbebSnyanmisaka         RK_U32 sw_apf_disable          : 1;
2030*437bfbebSnyanmisaka     } swreg55;
2031*437bfbebSnyanmisaka 
2032*437bfbebSnyanmisaka     struct {
2033*437bfbebSnyanmisaka         RK_U32 SW_DEC_MAX_OHEIGHT   : 15;
2034*437bfbebSnyanmisaka         RK_U32 SW_DEC_DATA_S_W      : 2;
2035*437bfbebSnyanmisaka         RK_U32 SW_DEC_ADDR_S_W      : 1;
2036*437bfbebSnyanmisaka         RK_U32 SW_DEC_DATA_M_W      : 2;
2037*437bfbebSnyanmisaka         RK_U32 SW_DEC_ADDR_M_W      : 1;
2038*437bfbebSnyanmisaka         RK_U32 SW_DEC_SLAVE_BUS     : 2;
2039*437bfbebSnyanmisaka         RK_U32 SW_DEC_MASTER_BUS    : 2;
2040*437bfbebSnyanmisaka         RK_U32 SW_DEC_JOINT         : 1;
2041*437bfbebSnyanmisaka         RK_U32 reserved0            : 6;
2042*437bfbebSnyanmisaka     } swreg56;
2043*437bfbebSnyanmisaka 
2044*437bfbebSnyanmisaka     struct {
2045*437bfbebSnyanmisaka         RK_U32 reserved0      : 6;
2046*437bfbebSnyanmisaka         RK_U32 fuse_dec_av1   : 1;
2047*437bfbebSnyanmisaka         RK_U32 reserved1      : 25;
2048*437bfbebSnyanmisaka     } swreg57;
2049*437bfbebSnyanmisaka 
2050*437bfbebSnyanmisaka     struct {
2051*437bfbebSnyanmisaka         RK_U32 sw_dec_max_burst        : 8;
2052*437bfbebSnyanmisaka         RK_U32 sw_dec_buswidth         : 3;
2053*437bfbebSnyanmisaka         RK_U32 sw_dec_multicore_mode   : 2;
2054*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_wd_id_e      : 1;
2055*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_rd_id_e      : 1;
2056*437bfbebSnyanmisaka         RK_U32 reserved0               : 2;
2057*437bfbebSnyanmisaka         RK_U32 sw_dec_mc_polltime      : 10;
2058*437bfbebSnyanmisaka         RK_U32 sw_dec_mc_pollmode      : 2;
2059*437bfbebSnyanmisaka         RK_U32 reserved1               : 3;
2060*437bfbebSnyanmisaka     } swreg58;
2061*437bfbebSnyanmisaka 
2062*437bfbebSnyanmisaka     struct {
2063*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_3   : 7;
2064*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_2   : 7;
2065*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_1   : 7;
2066*437bfbebSnyanmisaka         RK_U32 sw_filt_ref_adj_0   : 7;
2067*437bfbebSnyanmisaka         RK_U32 sw_ref0_sign_bias   : 1;
2068*437bfbebSnyanmisaka         RK_U32 sw_ref1_sign_bias   : 1;
2069*437bfbebSnyanmisaka         RK_U32 sw_ref2_sign_bias   : 1;
2070*437bfbebSnyanmisaka         RK_U32 sw_ref3_sign_bias   : 1;
2071*437bfbebSnyanmisaka     } swreg59;
2072*437bfbebSnyanmisaka 
2073*437bfbebSnyanmisaka     struct {
2074*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_rd_id   : 16;
2075*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_wr_id   : 16;
2076*437bfbebSnyanmisaka     } swreg60;
2077*437bfbebSnyanmisaka 
2078*437bfbebSnyanmisaka     struct {
2079*437bfbebSnyanmisaka         RK_U32 reserved0           : 12;
2080*437bfbebSnyanmisaka         RK_U32 fuse_pp_maxw_352    : 1;
2081*437bfbebSnyanmisaka         RK_U32 fuse_pp_maxw_720    : 1;
2082*437bfbebSnyanmisaka         RK_U32 fuse_pp_maxw_1280   : 1;
2083*437bfbebSnyanmisaka         RK_U32 fuse_pp_maxw_1920   : 1;
2084*437bfbebSnyanmisaka         RK_U32 fuse_pp_maxw_4k     : 1;
2085*437bfbebSnyanmisaka         RK_U32 reserved1           : 12;
2086*437bfbebSnyanmisaka         RK_U32 fuse_pp_ablend      : 1;
2087*437bfbebSnyanmisaka         RK_U32 fuse_pp_scaling     : 1;
2088*437bfbebSnyanmisaka         RK_U32 fuse_pp_pp          : 1;
2089*437bfbebSnyanmisaka     } swreg61;
2090*437bfbebSnyanmisaka 
2091*437bfbebSnyanmisaka     struct {
2092*437bfbebSnyanmisaka         RK_U32 sw_cu_location_y   : 16;
2093*437bfbebSnyanmisaka         RK_U32 sw_cu_location_x   : 16;
2094*437bfbebSnyanmisaka     } swreg62;
2095*437bfbebSnyanmisaka 
2096*437bfbebSnyanmisaka     struct {
2097*437bfbebSnyanmisaka         RK_U32 sw_perf_cycle_count   : 32;
2098*437bfbebSnyanmisaka     } swreg63;
2099*437bfbebSnyanmisaka 
2100*437bfbebSnyanmisaka     /* swreg64 - swreg183 */
2101*437bfbebSnyanmisaka     VdpuAv1dBase addr_cfg;
2102*437bfbebSnyanmisaka 
2103*437bfbebSnyanmisaka     struct {
2104*437bfbebSnyanmisaka         RK_U32 sw_cur_last_roffset   : 9;
2105*437bfbebSnyanmisaka         RK_U32 sw_cur_last_offset    : 9;
2106*437bfbebSnyanmisaka         RK_U32 sw_mf3_last_offset    : 9;
2107*437bfbebSnyanmisaka         RK_U32 sw_ref0_gm_mode       : 2;
2108*437bfbebSnyanmisaka         RK_U32 reserved0             : 3;
2109*437bfbebSnyanmisaka     } swreg184;
2110*437bfbebSnyanmisaka 
2111*437bfbebSnyanmisaka     struct {
2112*437bfbebSnyanmisaka         RK_U32 sw_cur_last2_roffset   : 9;
2113*437bfbebSnyanmisaka         RK_U32 sw_cur_last2_offset    : 9;
2114*437bfbebSnyanmisaka         RK_U32 sw_mf3_last2_offset    : 9;
2115*437bfbebSnyanmisaka         RK_U32 sw_ref1_gm_mode        : 2;
2116*437bfbebSnyanmisaka         RK_U32 reserved0              : 3;
2117*437bfbebSnyanmisaka     } swreg185;
2118*437bfbebSnyanmisaka 
2119*437bfbebSnyanmisaka     struct {
2120*437bfbebSnyanmisaka         RK_U32 sw_cur_last3_roffset   : 9;
2121*437bfbebSnyanmisaka         RK_U32 sw_cur_last3_offset    : 9;
2122*437bfbebSnyanmisaka         RK_U32 sw_mf3_last3_offset    : 9;
2123*437bfbebSnyanmisaka         RK_U32 sw_ref2_gm_mode        : 2;
2124*437bfbebSnyanmisaka         RK_U32 reserved0              : 3;
2125*437bfbebSnyanmisaka     } swreg186;
2126*437bfbebSnyanmisaka 
2127*437bfbebSnyanmisaka     struct {
2128*437bfbebSnyanmisaka         RK_U32 sw_cur_golden_roffset   : 9;
2129*437bfbebSnyanmisaka         RK_U32 sw_cur_golden_offset    : 9;
2130*437bfbebSnyanmisaka         RK_U32 sw_mf3_golden_offset    : 9;
2131*437bfbebSnyanmisaka         RK_U32 sw_ref3_gm_mode         : 2;
2132*437bfbebSnyanmisaka         RK_U32 reserved0               : 3;
2133*437bfbebSnyanmisaka     } swreg187;
2134*437bfbebSnyanmisaka 
2135*437bfbebSnyanmisaka     struct {
2136*437bfbebSnyanmisaka         RK_U32 sw_cur_bwdref_roffset   : 9;
2137*437bfbebSnyanmisaka         RK_U32 sw_cur_bwdref_offset    : 9;
2138*437bfbebSnyanmisaka         RK_U32 sw_mf3_bwdref_offset    : 9;
2139*437bfbebSnyanmisaka         RK_U32 sw_ref4_gm_mode         : 2;
2140*437bfbebSnyanmisaka         RK_U32 reserved0               : 3;
2141*437bfbebSnyanmisaka     } swreg188;
2142*437bfbebSnyanmisaka 
2143*437bfbebSnyanmisaka     struct {
2144*437bfbebSnyanmisaka         RK_U32 sw_dec_out_tybase_msb   : 32;
2145*437bfbebSnyanmisaka     } swreg189;
2146*437bfbebSnyanmisaka 
2147*437bfbebSnyanmisaka     struct {
2148*437bfbebSnyanmisaka         RK_U32 sw_dec_out_tybase_lsb   : 32;
2149*437bfbebSnyanmisaka     } swreg190;
2150*437bfbebSnyanmisaka 
2151*437bfbebSnyanmisaka     struct {
2152*437bfbebSnyanmisaka         RK_U32 sw_refer0_tybase_msb   : 32;
2153*437bfbebSnyanmisaka     } swreg191;
2154*437bfbebSnyanmisaka 
2155*437bfbebSnyanmisaka     struct {
2156*437bfbebSnyanmisaka         RK_U32 sw_refer0_tybase_lsb   : 32;
2157*437bfbebSnyanmisaka     } swreg192;
2158*437bfbebSnyanmisaka 
2159*437bfbebSnyanmisaka     struct {
2160*437bfbebSnyanmisaka         RK_U32 sw_refer1_tybase_msb   : 32;
2161*437bfbebSnyanmisaka     } swreg193;
2162*437bfbebSnyanmisaka 
2163*437bfbebSnyanmisaka     struct {
2164*437bfbebSnyanmisaka         RK_U32 sw_refer1_tybase_lsb   : 32;
2165*437bfbebSnyanmisaka     } swreg194;
2166*437bfbebSnyanmisaka 
2167*437bfbebSnyanmisaka     struct {
2168*437bfbebSnyanmisaka         RK_U32 sw_refer2_tybase_msb   : 32;
2169*437bfbebSnyanmisaka     } swreg195;
2170*437bfbebSnyanmisaka 
2171*437bfbebSnyanmisaka     struct {
2172*437bfbebSnyanmisaka         RK_U32 sw_refer2_tybase_lsb   : 32;
2173*437bfbebSnyanmisaka     } swreg196;
2174*437bfbebSnyanmisaka 
2175*437bfbebSnyanmisaka     struct {
2176*437bfbebSnyanmisaka         RK_U32 sw_refer3_tybase_msb   : 32;
2177*437bfbebSnyanmisaka     } swreg197;
2178*437bfbebSnyanmisaka 
2179*437bfbebSnyanmisaka     struct {
2180*437bfbebSnyanmisaka         RK_U32 sw_refer3_tybase_lsb   : 32;
2181*437bfbebSnyanmisaka     } swreg198;
2182*437bfbebSnyanmisaka 
2183*437bfbebSnyanmisaka     struct {
2184*437bfbebSnyanmisaka         RK_U32 sw_refer4_tybase_msb   : 32;
2185*437bfbebSnyanmisaka     } swreg199;
2186*437bfbebSnyanmisaka 
2187*437bfbebSnyanmisaka     struct {
2188*437bfbebSnyanmisaka         RK_U32 sw_refer4_tybase_lsb   : 32;
2189*437bfbebSnyanmisaka     } swreg200;
2190*437bfbebSnyanmisaka 
2191*437bfbebSnyanmisaka     struct {
2192*437bfbebSnyanmisaka         RK_U32 sw_refer5_tybase_msb   : 32;
2193*437bfbebSnyanmisaka     } swreg201;
2194*437bfbebSnyanmisaka 
2195*437bfbebSnyanmisaka     struct {
2196*437bfbebSnyanmisaka         RK_U32 sw_refer5_tybase_lsb   : 32;
2197*437bfbebSnyanmisaka     } swreg202;
2198*437bfbebSnyanmisaka 
2199*437bfbebSnyanmisaka     struct {
2200*437bfbebSnyanmisaka         RK_U32 sw_refer6_tybase_msb   : 32;
2201*437bfbebSnyanmisaka     } swreg203;
2202*437bfbebSnyanmisaka 
2203*437bfbebSnyanmisaka     struct {
2204*437bfbebSnyanmisaka         RK_U32 sw_refer6_tybase_lsb   : 32;
2205*437bfbebSnyanmisaka     } swreg204;
2206*437bfbebSnyanmisaka 
2207*437bfbebSnyanmisaka     RK_U32 reserved_205_222[18];
2208*437bfbebSnyanmisaka     struct {
2209*437bfbebSnyanmisaka         RK_U32 sw_dec_out_tcbase_msb   : 32;
2210*437bfbebSnyanmisaka     } swreg223;
2211*437bfbebSnyanmisaka 
2212*437bfbebSnyanmisaka     struct {
2213*437bfbebSnyanmisaka         RK_U32 sw_dec_out_tcbase_lsb   : 32;
2214*437bfbebSnyanmisaka     } swreg224;
2215*437bfbebSnyanmisaka 
2216*437bfbebSnyanmisaka     struct {
2217*437bfbebSnyanmisaka         RK_U32 sw_refer0_tcbase_msb   : 32;
2218*437bfbebSnyanmisaka     } swreg225;
2219*437bfbebSnyanmisaka 
2220*437bfbebSnyanmisaka     struct {
2221*437bfbebSnyanmisaka         RK_U32 sw_refer0_tcbase_lsb   : 32;
2222*437bfbebSnyanmisaka     } swreg226;
2223*437bfbebSnyanmisaka 
2224*437bfbebSnyanmisaka     struct {
2225*437bfbebSnyanmisaka         RK_U32 sw_refer1_tcbase_msb   : 32;
2226*437bfbebSnyanmisaka     } swreg227;
2227*437bfbebSnyanmisaka 
2228*437bfbebSnyanmisaka     struct {
2229*437bfbebSnyanmisaka         RK_U32 sw_refer1_tcbase_lsb   : 32;
2230*437bfbebSnyanmisaka     } swreg228;
2231*437bfbebSnyanmisaka 
2232*437bfbebSnyanmisaka     struct {
2233*437bfbebSnyanmisaka         RK_U32 sw_refer2_tcbase_msb   : 32;
2234*437bfbebSnyanmisaka     } swreg229;
2235*437bfbebSnyanmisaka 
2236*437bfbebSnyanmisaka     struct {
2237*437bfbebSnyanmisaka         RK_U32 sw_refer2_tcbase_lsb   : 32;
2238*437bfbebSnyanmisaka     } swreg230;
2239*437bfbebSnyanmisaka 
2240*437bfbebSnyanmisaka     struct {
2241*437bfbebSnyanmisaka         RK_U32 sw_refer3_tcbase_msb   : 32;
2242*437bfbebSnyanmisaka     } swreg231;
2243*437bfbebSnyanmisaka 
2244*437bfbebSnyanmisaka     struct {
2245*437bfbebSnyanmisaka         RK_U32 sw_refer3_tcbase_lsb   : 32;
2246*437bfbebSnyanmisaka     } swreg232;
2247*437bfbebSnyanmisaka 
2248*437bfbebSnyanmisaka     struct {
2249*437bfbebSnyanmisaka         RK_U32 sw_refer4_tcbase_msb   : 32;
2250*437bfbebSnyanmisaka     } swreg233;
2251*437bfbebSnyanmisaka 
2252*437bfbebSnyanmisaka     struct {
2253*437bfbebSnyanmisaka         RK_U32 sw_refer4_tcbase_lsb   : 32;
2254*437bfbebSnyanmisaka     } swreg234;
2255*437bfbebSnyanmisaka 
2256*437bfbebSnyanmisaka     struct {
2257*437bfbebSnyanmisaka         RK_U32 sw_refer5_tcbase_msb   : 32;
2258*437bfbebSnyanmisaka     } swreg235;
2259*437bfbebSnyanmisaka 
2260*437bfbebSnyanmisaka     struct {
2261*437bfbebSnyanmisaka         RK_U32 sw_refer5_tcbase_lsb   : 32;
2262*437bfbebSnyanmisaka     } swreg236;
2263*437bfbebSnyanmisaka 
2264*437bfbebSnyanmisaka     struct {
2265*437bfbebSnyanmisaka         RK_U32 sw_refer6_tcbase_msb   : 32;
2266*437bfbebSnyanmisaka     } swreg237;
2267*437bfbebSnyanmisaka 
2268*437bfbebSnyanmisaka     struct {
2269*437bfbebSnyanmisaka         RK_U32 sw_refer6_tcbase_lsb   : 32;
2270*437bfbebSnyanmisaka     } swreg238;
2271*437bfbebSnyanmisaka 
2272*437bfbebSnyanmisaka     RK_U32 reserved_239_256[18];
2273*437bfbebSnyanmisaka     struct {
2274*437bfbebSnyanmisaka         RK_U32 sw_cur_altref2_roffset   : 9;
2275*437bfbebSnyanmisaka         RK_U32 sw_cur_altref2_offset    : 9;
2276*437bfbebSnyanmisaka         RK_U32 sw_mf3_altref2_offset    : 9;
2277*437bfbebSnyanmisaka         RK_U32 sw_ref5_gm_mode          : 2;
2278*437bfbebSnyanmisaka         RK_U32 reserved0                : 3;
2279*437bfbebSnyanmisaka     } swreg257;
2280*437bfbebSnyanmisaka 
2281*437bfbebSnyanmisaka     struct {
2282*437bfbebSnyanmisaka         RK_U32 sw_strm_buffer_len   : 32;
2283*437bfbebSnyanmisaka     } swreg258;
2284*437bfbebSnyanmisaka 
2285*437bfbebSnyanmisaka     struct {
2286*437bfbebSnyanmisaka         RK_U32 sw_strm_start_offset   : 32;
2287*437bfbebSnyanmisaka     } swreg259;
2288*437bfbebSnyanmisaka 
2289*437bfbebSnyanmisaka     struct {
2290*437bfbebSnyanmisaka         RK_U32 reserved0                  : 21;
2291*437bfbebSnyanmisaka         RK_U32 sw_ppd_blend_exist         : 1;
2292*437bfbebSnyanmisaka         RK_U32 reserved1                  : 1;
2293*437bfbebSnyanmisaka         RK_U32 sw_ppd_dith_exist          : 1;
2294*437bfbebSnyanmisaka         RK_U32 sw_ablend_crop_e           : 1;
2295*437bfbebSnyanmisaka         RK_U32 sw_pp_format_p010_e        : 1;
2296*437bfbebSnyanmisaka         RK_U32 sw_pp_format_customer1_e   : 1;
2297*437bfbebSnyanmisaka         RK_U32 sw_pp_crop_exist           : 1;
2298*437bfbebSnyanmisaka         RK_U32 sw_pp_up_level             : 1;
2299*437bfbebSnyanmisaka         RK_U32 sw_pp_down_level           : 2;
2300*437bfbebSnyanmisaka         RK_U32 sw_pp_exist                : 1;
2301*437bfbebSnyanmisaka     } swreg260;
2302*437bfbebSnyanmisaka 
2303*437bfbebSnyanmisaka     struct {
2304*437bfbebSnyanmisaka         RK_U32 sw_dec_error_code   : 8;
2305*437bfbebSnyanmisaka         RK_U32 reserved0           : 24;
2306*437bfbebSnyanmisaka     } swreg261;
2307*437bfbebSnyanmisaka 
2308*437bfbebSnyanmisaka     struct {
2309*437bfbebSnyanmisaka         RK_U32 sw_cur_altref_roffset   : 9;
2310*437bfbebSnyanmisaka         RK_U32 sw_cur_altref_offset    : 9;
2311*437bfbebSnyanmisaka         RK_U32 sw_mf3_altref_offset    : 9;
2312*437bfbebSnyanmisaka         RK_U32 sw_ref6_gm_mode         : 2;
2313*437bfbebSnyanmisaka         RK_U32 reserved0               : 3;
2314*437bfbebSnyanmisaka     } swreg262;
2315*437bfbebSnyanmisaka 
2316*437bfbebSnyanmisaka     struct {
2317*437bfbebSnyanmisaka         RK_U32 sw_cdef_luma_primary_strength   : 32;
2318*437bfbebSnyanmisaka     } swreg263;
2319*437bfbebSnyanmisaka 
2320*437bfbebSnyanmisaka     struct {
2321*437bfbebSnyanmisaka         RK_U32 sw_cdef_chroma_primary_strength   : 32;
2322*437bfbebSnyanmisaka     } swreg264;
2323*437bfbebSnyanmisaka 
2324*437bfbebSnyanmisaka     struct {
2325*437bfbebSnyanmisaka         RK_U32 sw_axi_arqos               : 4;
2326*437bfbebSnyanmisaka         RK_U32 sw_axi_awqos               : 4;
2327*437bfbebSnyanmisaka 
2328*437bfbebSnyanmisaka         RK_U32 sw_axi_wr_ostd_threshold   : 10;
2329*437bfbebSnyanmisaka         RK_U32 sw_axi_rd_ostd_threshold   : 10;
2330*437bfbebSnyanmisaka 
2331*437bfbebSnyanmisaka         RK_U32 reserved0                  : 3;
2332*437bfbebSnyanmisaka         RK_U32 sw_axi_wr_4k_dis           : 1;
2333*437bfbebSnyanmisaka     } swreg265;
2334*437bfbebSnyanmisaka 
2335*437bfbebSnyanmisaka     struct {
2336*437bfbebSnyanmisaka         RK_U32 reserved0             : 5;
2337*437bfbebSnyanmisaka         RK_U32 sw_128bit_mode        : 1;
2338*437bfbebSnyanmisaka         RK_U32 reserved1             : 4;
2339*437bfbebSnyanmisaka         RK_U32 sw_wr_shaper_bypass   : 1;
2340*437bfbebSnyanmisaka         RK_U32 reserved2             : 19;
2341*437bfbebSnyanmisaka         RK_U32 sw_error_conceal_e    : 1;
2342*437bfbebSnyanmisaka         RK_U32 reserved3             : 1;
2343*437bfbebSnyanmisaka     } swreg266;
2344*437bfbebSnyanmisaka 
2345*437bfbebSnyanmisaka     RK_U32 reserved_267_297[31];
2346*437bfbebSnyanmisaka     struct {
2347*437bfbebSnyanmisaka         RK_U32 sw_superres_chroma_step_invra   : 16;
2348*437bfbebSnyanmisaka         RK_U32 sw_superres_luma_step_invra     : 16;
2349*437bfbebSnyanmisaka     } swreg298;
2350*437bfbebSnyanmisaka 
2351*437bfbebSnyanmisaka     struct {
2352*437bfbebSnyanmisaka         RK_U32 sw_dec_pred_dataout_cnt   : 32;
2353*437bfbebSnyanmisaka     } swreg299;
2354*437bfbebSnyanmisaka 
2355*437bfbebSnyanmisaka     struct {
2356*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_r_len_cnt   : 32;
2357*437bfbebSnyanmisaka     } swreg300;
2358*437bfbebSnyanmisaka 
2359*437bfbebSnyanmisaka     struct {
2360*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_r_dat_cnt   : 32;
2361*437bfbebSnyanmisaka     } swreg301;
2362*437bfbebSnyanmisaka 
2363*437bfbebSnyanmisaka     struct {
2364*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_r_req_cnt   : 32;
2365*437bfbebSnyanmisaka     } swreg302;
2366*437bfbebSnyanmisaka 
2367*437bfbebSnyanmisaka     struct {
2368*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_rlast_cnt   : 32;
2369*437bfbebSnyanmisaka     } swreg303;
2370*437bfbebSnyanmisaka 
2371*437bfbebSnyanmisaka     struct {
2372*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_w_len_cnt   : 32;
2373*437bfbebSnyanmisaka     } swreg304;
2374*437bfbebSnyanmisaka 
2375*437bfbebSnyanmisaka     struct {
2376*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_w_dat_cnt   : 32;
2377*437bfbebSnyanmisaka     } swreg305;
2378*437bfbebSnyanmisaka 
2379*437bfbebSnyanmisaka     struct {
2380*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_w_req_cnt   : 32;
2381*437bfbebSnyanmisaka     } swreg306;
2382*437bfbebSnyanmisaka 
2383*437bfbebSnyanmisaka     struct {
2384*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_wlast_cnt   : 32;
2385*437bfbebSnyanmisaka     } swreg307;
2386*437bfbebSnyanmisaka 
2387*437bfbebSnyanmisaka     struct {
2388*437bfbebSnyanmisaka         RK_U32 sw_dec_axi_w_ack   : 32;
2389*437bfbebSnyanmisaka     } swreg308;
2390*437bfbebSnyanmisaka 
2391*437bfbebSnyanmisaka     struct {
2392*437bfbebSnyanmisaka         RK_U32 hw_build_id   : 32;
2393*437bfbebSnyanmisaka     } swreg309;
2394*437bfbebSnyanmisaka 
2395*437bfbebSnyanmisaka     struct {
2396*437bfbebSnyanmisaka         RK_U32 hw_syn_id   : 16;
2397*437bfbebSnyanmisaka         RK_U32 reserved0   : 16;
2398*437bfbebSnyanmisaka     } swreg310;
2399*437bfbebSnyanmisaka 
2400*437bfbebSnyanmisaka     struct {
2401*437bfbebSnyanmisaka         RK_U32 reserved0   : 32;
2402*437bfbebSnyanmisaka     } swreg311;
2403*437bfbebSnyanmisaka 
2404*437bfbebSnyanmisaka     struct {
2405*437bfbebSnyanmisaka         RK_U32 reserved0   : 32;
2406*437bfbebSnyanmisaka     } swreg312;
2407*437bfbebSnyanmisaka 
2408*437bfbebSnyanmisaka     struct {
2409*437bfbebSnyanmisaka         RK_U32 reserved0   : 32;
2410*437bfbebSnyanmisaka     } swreg313;
2411*437bfbebSnyanmisaka 
2412*437bfbebSnyanmisaka     struct {
2413*437bfbebSnyanmisaka         RK_U32 sw_dec_alignment   : 16;
2414*437bfbebSnyanmisaka         RK_U32 reserved0          : 16;
2415*437bfbebSnyanmisaka     } swreg314;
2416*437bfbebSnyanmisaka 
2417*437bfbebSnyanmisaka     struct {
2418*437bfbebSnyanmisaka         RK_U32 sw_tile_left   : 32;
2419*437bfbebSnyanmisaka     } swreg315;
2420*437bfbebSnyanmisaka 
2421*437bfbebSnyanmisaka     RK_U32 reserved_316;
2422*437bfbebSnyanmisaka     struct {
2423*437bfbebSnyanmisaka         RK_U32 reserved0            : 28;
2424*437bfbebSnyanmisaka         RK_U32 sw_pp_line_cnt_sel   : 2;
2425*437bfbebSnyanmisaka         RK_U32 reserved1            : 2;
2426*437bfbebSnyanmisaka     } swreg317;
2427*437bfbebSnyanmisaka 
2428*437bfbebSnyanmisaka     struct {
2429*437bfbebSnyanmisaka         RK_U32 sw_ext_timeout_cycles       : 31;
2430*437bfbebSnyanmisaka         RK_U32 sw_ext_timeout_override_e   : 1;
2431*437bfbebSnyanmisaka     } swreg318;
2432*437bfbebSnyanmisaka 
2433*437bfbebSnyanmisaka     struct {
2434*437bfbebSnyanmisaka         RK_U32 sw_timeout_cycles       : 31;
2435*437bfbebSnyanmisaka         RK_U32 sw_timeout_override_e   : 1;
2436*437bfbebSnyanmisaka     } swreg319;
2437*437bfbebSnyanmisaka 
2438*437bfbebSnyanmisaka     VdpuAv1dPPCfg vdpu_av1d_pp_cfg;
2439*437bfbebSnyanmisaka 
2440*437bfbebSnyanmisaka } VdpuAv1dRegSet;
2441*437bfbebSnyanmisaka 
2442*437bfbebSnyanmisaka #endif
2443