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