1*437bfbebSnyanmisaka /* SPDX-License-Identifier: Apache-2.0 */ 2*437bfbebSnyanmisaka /* 3*437bfbebSnyanmisaka * Copyright (c) 2025 Rockchip Electronics Co., Ltd. 4*437bfbebSnyanmisaka */ 5*437bfbebSnyanmisaka 6*437bfbebSnyanmisaka #ifndef __HAL_JPEGE_VEPU511_REG_H__ 7*437bfbebSnyanmisaka #define __HAL_JPEGE_VEPU511_REG_H__ 8*437bfbebSnyanmisaka 9*437bfbebSnyanmisaka #include "rk_type.h" 10*437bfbebSnyanmisaka #include "vepu511_common.h" 11*437bfbebSnyanmisaka 12*437bfbebSnyanmisaka typedef struct Vepu511JpegRoiRegion_t { 13*437bfbebSnyanmisaka struct { 14*437bfbebSnyanmisaka RK_U32 roi0_rdoq_start_x : 11; 15*437bfbebSnyanmisaka RK_U32 roi0_rdoq_start_y : 11; 16*437bfbebSnyanmisaka RK_U32 reserved : 3; 17*437bfbebSnyanmisaka RK_U32 roi0_rdoq_level : 6; 18*437bfbebSnyanmisaka RK_U32 roi0_rdoq_en : 1; 19*437bfbebSnyanmisaka } roi_cfg0; 20*437bfbebSnyanmisaka 21*437bfbebSnyanmisaka struct { 22*437bfbebSnyanmisaka RK_U32 roi0_rdoq_width_m1 : 11; 23*437bfbebSnyanmisaka RK_U32 roi0_rdoq_height_m1 : 11; 24*437bfbebSnyanmisaka /* the below 10 bits only for roi0 */ 25*437bfbebSnyanmisaka RK_U32 reserved : 3; 26*437bfbebSnyanmisaka RK_U32 frm_rdoq_level : 6; 27*437bfbebSnyanmisaka RK_U32 frm_rdoq_en : 1; 28*437bfbebSnyanmisaka } roi_cfg1; 29*437bfbebSnyanmisaka } Vepu511JpegRoiRegion; 30*437bfbebSnyanmisaka 31*437bfbebSnyanmisaka /* 0x00000400 reg256 - 0x0000050c reg323*/ 32*437bfbebSnyanmisaka typedef struct Vepu511JpegReg_t { 33*437bfbebSnyanmisaka /* 0x00000400 reg256 */ 34*437bfbebSnyanmisaka RK_U32 adr_bsbt; 35*437bfbebSnyanmisaka 36*437bfbebSnyanmisaka /* 0x00000404 reg257 */ 37*437bfbebSnyanmisaka RK_U32 adr_bsbb; 38*437bfbebSnyanmisaka 39*437bfbebSnyanmisaka /* 0x00000408 reg258 */ 40*437bfbebSnyanmisaka RK_U32 adr_bsbs; 41*437bfbebSnyanmisaka 42*437bfbebSnyanmisaka /* 0x0000040c reg259 */ 43*437bfbebSnyanmisaka RK_U32 adr_bsbr; 44*437bfbebSnyanmisaka 45*437bfbebSnyanmisaka /* 0x00000410 reg260 */ 46*437bfbebSnyanmisaka RK_U32 adr_vsy_b; 47*437bfbebSnyanmisaka 48*437bfbebSnyanmisaka /* 0x00000414 reg261 */ 49*437bfbebSnyanmisaka RK_U32 adr_vsc_b; 50*437bfbebSnyanmisaka 51*437bfbebSnyanmisaka /* 0x00000418 reg262 */ 52*437bfbebSnyanmisaka RK_U32 adr_vsy_t; 53*437bfbebSnyanmisaka 54*437bfbebSnyanmisaka /* 0x0000041c reg263 */ 55*437bfbebSnyanmisaka RK_U32 adr_vsc_t; 56*437bfbebSnyanmisaka 57*437bfbebSnyanmisaka /* 0x00000420 reg264 */ 58*437bfbebSnyanmisaka RK_U32 adr_src0; 59*437bfbebSnyanmisaka 60*437bfbebSnyanmisaka /* 0x00000424 reg265 */ 61*437bfbebSnyanmisaka RK_U32 adr_src1; 62*437bfbebSnyanmisaka 63*437bfbebSnyanmisaka /* 0x00000428 reg266 */ 64*437bfbebSnyanmisaka RK_U32 adr_src2; 65*437bfbebSnyanmisaka 66*437bfbebSnyanmisaka /* 0x0000042c reg267 */ 67*437bfbebSnyanmisaka RK_U32 bsp_size; 68*437bfbebSnyanmisaka 69*437bfbebSnyanmisaka /* 0x430 - 0x43c */ 70*437bfbebSnyanmisaka RK_U32 reserved268_271[4]; 71*437bfbebSnyanmisaka 72*437bfbebSnyanmisaka /* 0x00000440 reg272 */ 73*437bfbebSnyanmisaka struct { 74*437bfbebSnyanmisaka RK_U32 pic_wd8_m1 : 11; 75*437bfbebSnyanmisaka RK_U32 reserved : 1; 76*437bfbebSnyanmisaka RK_U32 pp0_vnum_m1 : 4; 77*437bfbebSnyanmisaka RK_U32 pic_hd8_m1 : 11; 78*437bfbebSnyanmisaka RK_U32 reserved1 : 1; 79*437bfbebSnyanmisaka RK_U32 pp0_jnum_m1 : 4; 80*437bfbebSnyanmisaka } enc_rsl; 81*437bfbebSnyanmisaka 82*437bfbebSnyanmisaka /* 0x00000444 reg273 */ 83*437bfbebSnyanmisaka struct { 84*437bfbebSnyanmisaka RK_U32 pic_wfill : 6; 85*437bfbebSnyanmisaka RK_U32 reserved : 10; 86*437bfbebSnyanmisaka RK_U32 pic_hfill : 6; 87*437bfbebSnyanmisaka RK_U32 reserved1 : 10; 88*437bfbebSnyanmisaka } src_fill; 89*437bfbebSnyanmisaka 90*437bfbebSnyanmisaka /* 0x00000448 reg274 */ 91*437bfbebSnyanmisaka struct { 92*437bfbebSnyanmisaka RK_U32 alpha_swap : 1; 93*437bfbebSnyanmisaka RK_U32 rbuv_swap : 1; 94*437bfbebSnyanmisaka RK_U32 src_cfmt : 4; 95*437bfbebSnyanmisaka RK_U32 reserved : 2; 96*437bfbebSnyanmisaka RK_U32 src_range_trns_en : 1; 97*437bfbebSnyanmisaka RK_U32 src_range_trns_sel : 1; 98*437bfbebSnyanmisaka RK_U32 chroma_ds_mode : 1; 99*437bfbebSnyanmisaka RK_U32 reserved1 : 21; 100*437bfbebSnyanmisaka } src_fmt; 101*437bfbebSnyanmisaka 102*437bfbebSnyanmisaka /* 0x0000044c reg275 */ 103*437bfbebSnyanmisaka struct { 104*437bfbebSnyanmisaka RK_U32 csc_wgt_b2y : 9; 105*437bfbebSnyanmisaka RK_U32 csc_wgt_g2y : 9; 106*437bfbebSnyanmisaka RK_U32 csc_wgt_r2y : 9; 107*437bfbebSnyanmisaka RK_U32 reserved : 5; 108*437bfbebSnyanmisaka } src_udfy; 109*437bfbebSnyanmisaka 110*437bfbebSnyanmisaka /* 0x00000450 reg276 */ 111*437bfbebSnyanmisaka struct { 112*437bfbebSnyanmisaka RK_U32 csc_wgt_b2u : 9; 113*437bfbebSnyanmisaka RK_U32 csc_wgt_g2u : 9; 114*437bfbebSnyanmisaka RK_U32 csc_wgt_r2u : 9; 115*437bfbebSnyanmisaka RK_U32 reserved : 5; 116*437bfbebSnyanmisaka } src_udfu; 117*437bfbebSnyanmisaka 118*437bfbebSnyanmisaka /* 0x00000454 reg277 */ 119*437bfbebSnyanmisaka struct { 120*437bfbebSnyanmisaka RK_U32 csc_wgt_b2v : 9; 121*437bfbebSnyanmisaka RK_U32 csc_wgt_g2v : 9; 122*437bfbebSnyanmisaka RK_U32 csc_wgt_r2v : 9; 123*437bfbebSnyanmisaka RK_U32 reserved : 5; 124*437bfbebSnyanmisaka } src_udfv; 125*437bfbebSnyanmisaka 126*437bfbebSnyanmisaka /* 0x00000458 reg278 */ 127*437bfbebSnyanmisaka struct { 128*437bfbebSnyanmisaka RK_U32 csc_ofst_v : 8; 129*437bfbebSnyanmisaka RK_U32 csc_ofst_u : 8; 130*437bfbebSnyanmisaka RK_U32 csc_ofst_y : 5; 131*437bfbebSnyanmisaka RK_U32 reserved : 11; 132*437bfbebSnyanmisaka } src_udfo; 133*437bfbebSnyanmisaka 134*437bfbebSnyanmisaka /* 0x0000045c reg279 */ 135*437bfbebSnyanmisaka struct { 136*437bfbebSnyanmisaka RK_U32 cr_force_value : 8; 137*437bfbebSnyanmisaka RK_U32 cb_force_value : 8; 138*437bfbebSnyanmisaka RK_U32 chroma_force_en : 1; 139*437bfbebSnyanmisaka RK_U32 reserved : 9; 140*437bfbebSnyanmisaka RK_U32 src_mirr : 1; 141*437bfbebSnyanmisaka RK_U32 src_rot : 2; 142*437bfbebSnyanmisaka RK_U32 reserved1 : 1; 143*437bfbebSnyanmisaka RK_U32 rkfbcd_en : 1; 144*437bfbebSnyanmisaka RK_U32 reserved2 : 1; 145*437bfbebSnyanmisaka } src_proc; 146*437bfbebSnyanmisaka 147*437bfbebSnyanmisaka /* 0x00000460 reg280 */ 148*437bfbebSnyanmisaka struct { 149*437bfbebSnyanmisaka RK_U32 pic_ofst_x : 14; 150*437bfbebSnyanmisaka RK_U32 reserved : 2; 151*437bfbebSnyanmisaka RK_U32 pic_ofst_y : 14; 152*437bfbebSnyanmisaka RK_U32 reserved1 : 2; 153*437bfbebSnyanmisaka } pic_ofst; 154*437bfbebSnyanmisaka 155*437bfbebSnyanmisaka /* 0x00000464 reg281 */ 156*437bfbebSnyanmisaka struct { 157*437bfbebSnyanmisaka RK_U32 src_strd0 : 21; 158*437bfbebSnyanmisaka RK_U32 reserved : 11; 159*437bfbebSnyanmisaka } src_strd0; 160*437bfbebSnyanmisaka 161*437bfbebSnyanmisaka /* 0x00000468 reg282 */ 162*437bfbebSnyanmisaka struct { 163*437bfbebSnyanmisaka RK_U32 src_strd1 : 16; 164*437bfbebSnyanmisaka RK_U32 reserved : 16; 165*437bfbebSnyanmisaka } src_strd1; 166*437bfbebSnyanmisaka 167*437bfbebSnyanmisaka /* 0x0000046c reg283 */ 168*437bfbebSnyanmisaka struct { 169*437bfbebSnyanmisaka RK_U32 pp_corner_filter_strength : 2; 170*437bfbebSnyanmisaka RK_U32 reserved : 2; 171*437bfbebSnyanmisaka RK_U32 pp_edge_filter_strength : 2; 172*437bfbebSnyanmisaka RK_U32 reserved1 : 2; 173*437bfbebSnyanmisaka RK_U32 pp_internal_filter_strength : 2; 174*437bfbebSnyanmisaka RK_U32 reserved2 : 22; 175*437bfbebSnyanmisaka } src_flt_cfg; 176*437bfbebSnyanmisaka 177*437bfbebSnyanmisaka /* 0x00000470 reg284 */ 178*437bfbebSnyanmisaka struct { 179*437bfbebSnyanmisaka RK_U32 bias_y : 15; 180*437bfbebSnyanmisaka RK_U32 reserved : 17; 181*437bfbebSnyanmisaka } y_cfg; 182*437bfbebSnyanmisaka 183*437bfbebSnyanmisaka /* 0x00000474 reg285 */ 184*437bfbebSnyanmisaka struct { 185*437bfbebSnyanmisaka RK_U32 bias_u : 15; 186*437bfbebSnyanmisaka RK_U32 reserved : 17; 187*437bfbebSnyanmisaka } u_cfg; 188*437bfbebSnyanmisaka 189*437bfbebSnyanmisaka /* 0x00000478 reg286 */ 190*437bfbebSnyanmisaka struct { 191*437bfbebSnyanmisaka RK_U32 bias_v : 15; 192*437bfbebSnyanmisaka RK_U32 reserved : 17; 193*437bfbebSnyanmisaka } v_cfg; 194*437bfbebSnyanmisaka 195*437bfbebSnyanmisaka /* 0x0000047c reg287 */ 196*437bfbebSnyanmisaka struct { 197*437bfbebSnyanmisaka RK_U32 ri : 25; 198*437bfbebSnyanmisaka RK_U32 out_mode : 1; 199*437bfbebSnyanmisaka RK_U32 start_rst_m : 3; 200*437bfbebSnyanmisaka RK_U32 pic_last_ecs : 1; 201*437bfbebSnyanmisaka RK_U32 reserved : 1; 202*437bfbebSnyanmisaka RK_U32 stnd : 1; 203*437bfbebSnyanmisaka } base_cfg; 204*437bfbebSnyanmisaka 205*437bfbebSnyanmisaka /* 0x00000480 reg288 */ 206*437bfbebSnyanmisaka struct { 207*437bfbebSnyanmisaka RK_U32 uvc_partition0_len : 12; 208*437bfbebSnyanmisaka RK_U32 uvc_partition_len : 12; 209*437bfbebSnyanmisaka RK_U32 uvc_skip_len : 6; 210*437bfbebSnyanmisaka RK_U32 reserved : 2; 211*437bfbebSnyanmisaka } uvc_cfg; 212*437bfbebSnyanmisaka 213*437bfbebSnyanmisaka /* 0x00000484 reg289 */ 214*437bfbebSnyanmisaka struct { 215*437bfbebSnyanmisaka RK_U32 reserved : 4; 216*437bfbebSnyanmisaka RK_U32 eslf_badr : 28; 217*437bfbebSnyanmisaka } adr_eslf; 218*437bfbebSnyanmisaka 219*437bfbebSnyanmisaka /* 0x00000488 reg290 */ 220*437bfbebSnyanmisaka struct { 221*437bfbebSnyanmisaka RK_U32 eslf_rptr : 10; 222*437bfbebSnyanmisaka RK_U32 eslf_wptr : 10; 223*437bfbebSnyanmisaka RK_U32 eslf_blen : 10; 224*437bfbebSnyanmisaka RK_U32 eslf_updt : 2; 225*437bfbebSnyanmisaka } eslf_buf; 226*437bfbebSnyanmisaka 227*437bfbebSnyanmisaka /* 0x48c */ 228*437bfbebSnyanmisaka RK_U32 reserved_291; 229*437bfbebSnyanmisaka 230*437bfbebSnyanmisaka /* 0x00000490 reg292 - 0x0000050c reg323*/ 231*437bfbebSnyanmisaka Vepu511JpegRoiRegion roi_regions[16]; 232*437bfbebSnyanmisaka } Vepu511JpegReg; 233*437bfbebSnyanmisaka 234*437bfbebSnyanmisaka /* 0x00002ca0 reg2856 - - 0x00002e1c reg2951 */ 235*437bfbebSnyanmisaka typedef struct JpegVepu511Tab_t { 236*437bfbebSnyanmisaka RK_U16 qua_tab0[64]; 237*437bfbebSnyanmisaka RK_U16 qua_tab1[64]; 238*437bfbebSnyanmisaka RK_U16 qua_tab2[64]; 239*437bfbebSnyanmisaka } JpegVepu511Tab; 240*437bfbebSnyanmisaka 241*437bfbebSnyanmisaka typedef struct Vepu511JpegOsdCfg_t { 242*437bfbebSnyanmisaka /* 0x00003138 reg3150 */ 243*437bfbebSnyanmisaka struct { 244*437bfbebSnyanmisaka RK_U32 osd_en : 1; 245*437bfbebSnyanmisaka RK_U32 reserved : 4; 246*437bfbebSnyanmisaka RK_U32 osd_qp_adj_en : 1; 247*437bfbebSnyanmisaka RK_U32 osd_range_trns_en : 1; 248*437bfbebSnyanmisaka RK_U32 osd_range_trns_sel : 1; 249*437bfbebSnyanmisaka RK_U32 osd_fmt : 4; 250*437bfbebSnyanmisaka RK_U32 osd_alpha_swap : 1; 251*437bfbebSnyanmisaka RK_U32 osd_rbuv_swap : 1; 252*437bfbebSnyanmisaka RK_U32 reserved1 : 8; 253*437bfbebSnyanmisaka RK_U32 osd_fg_alpha : 8; 254*437bfbebSnyanmisaka RK_U32 osd_fg_alpha_sel : 2; 255*437bfbebSnyanmisaka } osd_cfg0; 256*437bfbebSnyanmisaka 257*437bfbebSnyanmisaka /* 0x0000313c reg3151 */ 258*437bfbebSnyanmisaka struct { 259*437bfbebSnyanmisaka RK_U32 osd_lt_xcrd : 14; 260*437bfbebSnyanmisaka RK_U32 osd_lt_ycrd : 14; 261*437bfbebSnyanmisaka RK_U32 osd_endn : 4; 262*437bfbebSnyanmisaka } osd_cfg1; 263*437bfbebSnyanmisaka 264*437bfbebSnyanmisaka /* 0x00003140 reg3152 */ 265*437bfbebSnyanmisaka struct { 266*437bfbebSnyanmisaka RK_U32 osd_rb_xcrd : 14; 267*437bfbebSnyanmisaka RK_U32 osd_rb_ycrd : 14; 268*437bfbebSnyanmisaka RK_U32 reserved : 4; 269*437bfbebSnyanmisaka } osd_cfg2; 270*437bfbebSnyanmisaka 271*437bfbebSnyanmisaka /* 0x00003144 reg3153 */ 272*437bfbebSnyanmisaka RK_U32 osd_st_addr; 273*437bfbebSnyanmisaka 274*437bfbebSnyanmisaka /* 0x3148 */ 275*437bfbebSnyanmisaka RK_U32 reserved_3154; 276*437bfbebSnyanmisaka 277*437bfbebSnyanmisaka /* 0x0000314c reg3155 */ 278*437bfbebSnyanmisaka struct { 279*437bfbebSnyanmisaka RK_U32 osd_stride : 17; 280*437bfbebSnyanmisaka RK_U32 reserved : 8; 281*437bfbebSnyanmisaka RK_U32 osd_ch_ds_mode : 1; 282*437bfbebSnyanmisaka RK_U32 reserved1 : 6; 283*437bfbebSnyanmisaka } osd_cfg5; 284*437bfbebSnyanmisaka 285*437bfbebSnyanmisaka /* 0x00003150 reg3156 */ 286*437bfbebSnyanmisaka struct { 287*437bfbebSnyanmisaka RK_U32 osd_v_b_lut0 : 8; 288*437bfbebSnyanmisaka RK_U32 osd_u_g_lut0 : 8; 289*437bfbebSnyanmisaka RK_U32 osd_y_r_lut0 : 8; 290*437bfbebSnyanmisaka RK_U32 osd_v_b_lut1 : 8; 291*437bfbebSnyanmisaka } osd_cfg6; 292*437bfbebSnyanmisaka 293*437bfbebSnyanmisaka /* 0x00003154 reg3157 */ 294*437bfbebSnyanmisaka struct { 295*437bfbebSnyanmisaka RK_U32 osd0_u_g_lut1 : 8; 296*437bfbebSnyanmisaka RK_U32 osd0_y_r_lut1 : 8; 297*437bfbebSnyanmisaka RK_U32 osd0_alpha_lut0 : 8; 298*437bfbebSnyanmisaka RK_U32 osd0_alpha_lut1 : 8; 299*437bfbebSnyanmisaka } osd_cfg7; 300*437bfbebSnyanmisaka 301*437bfbebSnyanmisaka /* 0x3158 */ 302*437bfbebSnyanmisaka RK_U32 reserved_3158; 303*437bfbebSnyanmisaka } JpegVepu511Osd_cfg; 304*437bfbebSnyanmisaka 305*437bfbebSnyanmisaka /* 0x00003138 reg3150 - - 0x00003264 reg3225 */ 306*437bfbebSnyanmisaka typedef struct Vepu511JpegOsd_t { 307*437bfbebSnyanmisaka JpegVepu511Osd_cfg osd_cfg[8]; 308*437bfbebSnyanmisaka /* 0x00003258 reg3222 */ 309*437bfbebSnyanmisaka struct { 310*437bfbebSnyanmisaka RK_U32 osd_csc_yr : 9; 311*437bfbebSnyanmisaka RK_U32 osd_csc_yg : 9; 312*437bfbebSnyanmisaka RK_U32 osd_csc_yb : 9; 313*437bfbebSnyanmisaka RK_U32 reserved : 5; 314*437bfbebSnyanmisaka } osd_whi_cfg0; 315*437bfbebSnyanmisaka 316*437bfbebSnyanmisaka /* 0x0000325c reg3223 */ 317*437bfbebSnyanmisaka struct { 318*437bfbebSnyanmisaka RK_U32 osd_csc_ur : 9; 319*437bfbebSnyanmisaka RK_U32 osd_csc_ug : 9; 320*437bfbebSnyanmisaka RK_U32 osd_csc_ub : 9; 321*437bfbebSnyanmisaka RK_U32 reserved : 5; 322*437bfbebSnyanmisaka } osd_whi_cfg1; 323*437bfbebSnyanmisaka 324*437bfbebSnyanmisaka /* 0x00003260 reg3224 */ 325*437bfbebSnyanmisaka struct { 326*437bfbebSnyanmisaka RK_U32 osd_csc_vr : 9; 327*437bfbebSnyanmisaka RK_U32 osd_csc_vg : 9; 328*437bfbebSnyanmisaka RK_U32 osd_csc_vb : 9; 329*437bfbebSnyanmisaka RK_U32 reserved : 5; 330*437bfbebSnyanmisaka } osd_whi_cfg2; 331*437bfbebSnyanmisaka 332*437bfbebSnyanmisaka /* 0x00003264 reg3225 */ 333*437bfbebSnyanmisaka struct { 334*437bfbebSnyanmisaka RK_U32 osd_csc_ofst_y : 8; 335*437bfbebSnyanmisaka RK_U32 osd_csc_ofst_u : 8; 336*437bfbebSnyanmisaka RK_U32 osd_csc_ofst_v : 8; 337*437bfbebSnyanmisaka RK_U32 reserved : 8; 338*437bfbebSnyanmisaka } osd_whi_cfg3; 339*437bfbebSnyanmisaka } JpegVepu511Osd; 340*437bfbebSnyanmisaka 341*437bfbebSnyanmisaka /* class: buffer/video syntax */ 342*437bfbebSnyanmisaka /* 0x00000270 reg156 - 0x0000050c reg323 */ 343*437bfbebSnyanmisaka typedef struct JpegVepu511Base_t { 344*437bfbebSnyanmisaka /* 0x00000270 reg156 - 0x0000039c reg231 */ 345*437bfbebSnyanmisaka Vepu511FrmCommon common; 346*437bfbebSnyanmisaka 347*437bfbebSnyanmisaka /* 0x000003a0 reg232 - 0x000003f4 reg253*/ 348*437bfbebSnyanmisaka RK_U32 reserved232_253[22]; 349*437bfbebSnyanmisaka 350*437bfbebSnyanmisaka /* 0x000003f8 reg254 */ 351*437bfbebSnyanmisaka struct { 352*437bfbebSnyanmisaka RK_U32 slice_sta_x : 9; 353*437bfbebSnyanmisaka RK_U32 reserved1 : 7; 354*437bfbebSnyanmisaka RK_U32 slice_sta_y : 10; 355*437bfbebSnyanmisaka RK_U32 reserved2 : 5; 356*437bfbebSnyanmisaka RK_U32 slice_enc_ena : 1; 357*437bfbebSnyanmisaka } slice_enc_cfg0; 358*437bfbebSnyanmisaka 359*437bfbebSnyanmisaka /* 0x000003fc reg255 */ 360*437bfbebSnyanmisaka struct { 361*437bfbebSnyanmisaka RK_U32 slice_end_x : 9; 362*437bfbebSnyanmisaka RK_U32 reserved : 7; 363*437bfbebSnyanmisaka RK_U32 slice_end_y : 10; 364*437bfbebSnyanmisaka RK_U32 reserved1 : 6; 365*437bfbebSnyanmisaka } slice_enc_cfg1; 366*437bfbebSnyanmisaka 367*437bfbebSnyanmisaka /* 0x00000400 reg256 - 0x0000050c reg323 */ 368*437bfbebSnyanmisaka Vepu511JpegReg jpegReg; 369*437bfbebSnyanmisaka } JpegVepu511Base; 370*437bfbebSnyanmisaka 371*437bfbebSnyanmisaka typedef struct JpegV511RegSet_t { 372*437bfbebSnyanmisaka Vepu511ControlCfg reg_ctl; 373*437bfbebSnyanmisaka JpegVepu511Base reg_base; 374*437bfbebSnyanmisaka JpegVepu511Tab jpeg_table; 375*437bfbebSnyanmisaka Vepu511OsdRegs reg_osd; 376*437bfbebSnyanmisaka Vepu511Dbg reg_dbg; 377*437bfbebSnyanmisaka } JpegV511RegSet; 378*437bfbebSnyanmisaka 379*437bfbebSnyanmisaka typedef struct JpegV511Status_t { 380*437bfbebSnyanmisaka RK_U32 hw_status; 381*437bfbebSnyanmisaka Vepu511Status st; 382*437bfbebSnyanmisaka } JpegV511Status; 383*437bfbebSnyanmisaka 384*437bfbebSnyanmisaka #endif 385