| /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ |
| /* |
| * drivers/amlogic/media/di_multi/di_reg_v3.h |
| * |
| * Copyright (C) 2017 Amlogic, Inc. All rights reserved. |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License as published by |
| * the Free Software Foundation; either version 2 of the License, or |
| * (at your option) any later version. |
| * |
| * This program is distributed in the hope that it will be useful, but WITHOUT |
| * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
| * more details. |
| * |
| */ |
| |
| #ifndef __DI_REG_V3_H__ |
| #define __DI_REG_V3_H__ |
| |
| /********************************************************** |
| * register for sc2 |
| **********************************************************/ |
| #define DI_TOP_PRE_CTRL 0x17c5 |
| #define DI_TOP_POST_CTRL 0x17c6 |
| |
| #define DI_SC2_PRE_GL_CTRL 0x17c7 /* sc2 change add */ |
| #define DI_SC2_PRE_GL_THD 0x17c8 /* sc2 change add */ |
| #define DI_SC2_POST_GL_CTRL 0x17c9 /* sc2 change add */ |
| #define DI_SC2_POST_GL_THD 0x17ca /* sc2 change add */ |
| #define DI_RO_PRE_DBG 0x17cb |
| #define DI_RO_POST_DBG 0x17cc |
| #define DI_TOP_CTRL 0x17cd |
| #define DI_AFBCD_GCLK0 0x17ce |
| #define DI_AFBCD_GCLK1 0x17cf |
| #define DI_RDMIF_DEPTH0 0x17d0 |
| #define DI_RDMIF_DEPTH1 0x17d1 |
| #define DI_RDMIF_DEPTH2 0x17d2 |
| #define DI_TOP_CTRL1 0x17d3 |
| #define DI_AFBCE0_HOLD_CTRL 0x17d4 |
| #define DI_AFBCE1_HOLD_CTRL 0x17d5 |
| |
| /* pre nr */ |
| #define NRWR_DBG_AXI_CMD_CNT 0x2090 |
| #define NRWR_DBG_AXI_DAT_CNT 0x2091 |
| #define DI_NRWR_CANVAS 0x2092 |
| #define DI_NRWR_URGENT 0x2093 |
| #define DI_SC2_NRWR_X 0x2094 |
| #define DI_SC2_NRWR_Y 0x2095 |
| //bit 31:30 NRWR_words_lim |
| //bit 29 NRWR_rev_y |
| //bit 28:16 NRWR_start_y |
| //bit 15 NRWR_ext_en |
| //bit 12:0 NRWR_end_y |
| #define DI_SC2_NRWR_CTRL 0x2096 |
| //bit 31 pending_ddr_wrrsp_NRWR |
| //bit 30 NRWR_reg_swap |
| //bit 29:26 NRWR_burst_lim |
| //bit 25 NRWR_canvas_syncen |
| //bit 24 NRWR_no_clk_gate |
| //bit 23:22 NRWR_rgb_mode |
| //0:422 to one canvas;1:4:4:4 to one canvas 2:Y to luma , |
| // CBCR to chroma canvas ,for nv12/21; 3 : reserved |
| //bit 21:20 NRWR_hconv_mode |
| //bit 19:18 NRWR_vconv_mode |
| //bit 17 NRWR_swap_cbcr |
| //bit 16 NRWR_urgent |
| //bit 15:8 NRWR_canvas_index_chroma |
| //bit 7:0 NRWR_canvas_index_luma |
| #define DI_NRWR_SHRK_CTRL 0x2097 |
| //bit 31:10 reserved |
| //bit 9:8 reg_vshrk_mode |
| //unsigned, default = 0, 0:1/2 horizonal |
| //shrink 1:1/4 horizonal shrink 2:1/8 horizonal shrink |
| //bit 7:6 reg_hshrk_mode |
| //unsigned, default = 0, 0:1/2 vertical |
| //shrink 1:1/4 vertical shrink 2:1/8 vertical shrink |
| //bit 5:2 reg_gclk_ctrl //unsigned, default = 0 |
| //bit 1 reg_frm_rst //unsigned, default = 0 |
| //bit 0 reg_shrk_en //unsigned, default = 0 |
| #define DI_NRWR_SHRK_SIZE 0x2098 |
| //bit 31:26 reserved |
| //bit 25:13 reg_frm_hsize |
| //unsigned, default = 1920, hsize in |
| //bit 12:0 reg_frm_vsize |
| //unsigned, default = 1080, vsize in |
| #define DI_NRWR_CROP_CTRL 0x209a |
| //Bit 31 reg_crop_en |
| //unsigned , RW,default = 0,dimm_layer enable signal |
| //Bit 30:4 reserved |
| //Bit 3:0 reg_hold_line |
| //unsigned , RW,default = 4,dimm_layer data |
| #define DI_NRWR_CROP_DIMM_CTRL 0x209b |
| //Bit 31 reg_dimm_layer_en |
| //unsigned , RW,default = 0,dimm_layer enable signal |
| //Bit 30 reserved |
| //Bit 29:0 reg_dimm_data |
| //unsigned , RW,default = 29'h00080200,dimm_layer data |
| #define DI_NRWR_CROP_SIZE_IN 0x209c |
| //Bit 31:29, reserved |
| //Bit 28:16 reg_crop_hsize |
| //unsigned, default = 1920 , pic horz size in unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, reg_crop_vsize |
| //unsigned, default = 1080 , pic vert size in unit: pixel |
| |
| #define DI_NRWR_CROP_HSCOPE 0x209d |
| //Bit 31:29, reserved |
| //Bit 28:16, reg_cropwin_end_h unsigned, default = 1919 ; |
| //Bit 15:13, reserved |
| //Bit 12:0, reg_cropwin_bgn_h unsigned, default = 0 ; |
| #define DI_NRWR_CROP_VSCOPE 0x209e |
| //Bit 31:29, reserved |
| //Bit 28:16, reg_cropwin_end_v unsigned, default = 1079 ; |
| //Bit 15:13, reserved |
| //Bit 12:0, reg_cropwin_bgn_v unsigned, default = 0 ; |
| //t7 |
| #define DI_NRWR_BADDR0 0x20a0 |
| //Bit 31:0 wmif_baddr_luma unsigned, default = 0x20000 |
| #define DI_NRWR_STRIDE0 0x20a1 |
| //Bit 31 canvas_mode_en unsigned, default = 0 ; |
| //Bit 30:14 reserved |
| //Bit 13:0 wmif_stride_luma unsigned, default = 0x1000; |
| #define DI_NRWR_BADDR1 0x20a2 |
| //Bit 31:0 wmif_baddr_chroma unsigned, default = 0x20000 |
| #define DI_NRWR_STRIDE1 0x20a3 |
| //Bit 31 canvas_mode_en unsigned, default = 0 ; |
| //Bit 30:14 reserved |
| //Bit 13:0 wmif_stride_chroma unsigned, default = 0x1000; |
| |
| /* post wr */ |
| #define DIWR_DBG_AXI_CMD_CNT 0x20f0 |
| #define DIWR_DBG_AXI_DAT_CNT 0x20f1 |
| #define DI_DIWR_CANVAS 0x20f2 |
| #define DI_DIWR_URGENT 0x20f3 |
| #define DI_SC2_DIWR_X 0x20f4 |
| #define DI_SC2_DIWR_Y 0x20f5 |
| //bit 31:30 diwr_words_lim |
| //bit 29 diwr_rev_y |
| //bit 28:16 diwr_start_y |
| //bit 15 diwr_ext_en |
| //bit 12:0 diwr_end_y |
| #define DI_SC2_DIWR_CTRL 0x20f6 |
| //bit 31 pending_ddr_wrrsp_diwr |
| //bit 30 diwr_reg_swap |
| //bit 29:26 diwr_burst_lim |
| //bit 25 diwr_canvas_syncen |
| //bit 24 diwr_no_clk_gate |
| //bit 23:22 diwr_rgb_mode |
| //0:422 to one canvas;1:4:4:4 to one canvas 2: |
| //Y to luma , CBCR to chroma canvas ,for nv12/21; 3 : reserved |
| //bit 21:20 diwr_hconv_mode |
| //bit 19:18 diwr_vconv_mode |
| //bit 17 diwr_swap_cbcr |
| //bit 16 diwr_urgent |
| //bit 15:8 diwr_canvas_index_chroma |
| //bit 7:0 diwr_canvas_index_luma |
| #define DI_DIWR_SHRK_CTRL 0x20f7 |
| //bit 31:10 reserved |
| //bit 9:8 reg_vshrk_mode unsigned, default = 0, |
| //0:1/2 horizonal shrink 1:1/4 horizonal shrink 2:1/8 horizonal shrink |
| //bit 7:6 reg_hshrk_mode unsigned, default = 0, |
| //0:1/2 vertical shrink 1:1/4 vertical shrink 2:1/8 vertical shrink |
| //bit 5:2 reg_gclk_ctrl unsigned, default = 0 |
| //bit 1 reg_frm_rst unsigned, default = 0 |
| //bit 0 reg_shrk_en unsigned, default = 0 |
| #define DI_DIWR_SHRK_SIZE 0x20f8 |
| //bit 31:26 reserved |
| //bit 25:13 reg_frm_hsize unsigned, default = 1920, hsize in |
| //bit 12:0 reg_frm_vsize unsigned, default = 1080, vsize in |
| #define DI_DIWR_CROP_CTRL 0x20fa |
| //Bit 31 reg_crop_en |
| //unsigned , RW,default = 0,dimm_layer enable signal |
| //Bit 30:4 reserved |
| //Bit 3:0 reg_hold_line |
| //unsigned , RW,default = 4,dimm_layer data |
| #define DI_DIWR_CROP_DIMM_CTRL 0x20fb |
| //Bit 31 reg_dimm_layer_en |
| //unsigned , RW,default = 0,dimm_layer enable signal |
| //Bit 30 reserved |
| //Bit 29:0 reg_dimm_data |
| //unsigned , RW,default = 29'h00080200,dimm_layer data |
| #define DI_DIWR_CROP_SIZE_IN 0x20fc |
| //Bit 31:29, reserved |
| //Bit 28:16 reg_crop_hsize |
| //unsigned, default = 1920 , pic horz size in unit: pixel |
| //Bit 15:13, reserved/ |
| //Bit 12:0, reg_crop_vsize |
| //unsigned, default = 1080 , pic vert size in unit: pixel |
| #define DI_DIWR_CROP_HSCOPE 0x20fd |
| //Bit 31:29, reserved |
| //Bit 28:16, reg_cropwin_end_h unsigned, default = 1919 ; |
| //Bit 15:13, reserved |
| //Bit 12:0, reg_cropwin_bgn_h unsigned, default = 0 ; |
| #define DI_DIWR_CROP_VSCOPE 0x20fe |
| //Bit 31:29, reserved |
| //Bit 28:16, reg_cropwin_end_v unsigned, default = 1079 ; |
| //Bit 15:13, reserved |
| //Bit 12:0, reg_cropwin_bgn_v unsigned, default = 0 ; |
| //t7 |
| #define DI_DIWR_BADDR0 0x20a8 |
| //Bit 31:0 wmif_baddr_luma unsigned, default = 0x20000 |
| #define DI_DIWR_STRIDE0 0x20a9 |
| //Bit 31 canvas_mode_en unsigned, default = 0 ; |
| //Bit 30:14 reserved |
| //Bit 13:0 wmif_stride_luma unsigned, default = 0x1000; |
| #define DI_DIWR_BADDR1 0x20aa |
| //Bit 31:0 wmif_baddr_chroma unsigned, default = 0x20000 |
| #define DI_DIWR_STRIDE1 0x20ab |
| //Bit 31 canvas_mode_en unsigned, default = 0 ; |
| //Bit 30:14 reserved |
| //Bit 13:0 wmif_stride_chroma unsigned, default = 0x1000; |
| |
| /* mif */ |
| /* need move to here */ |
| #define RDMIFXN_GEN_REG 0x5400 |
| #define RDMIFXN_CANVAS0 0x5401 |
| #define RDMIFXN_CANVAS1 0x5402 |
| #define RDMIFXN_LUMA_X0 0x5403 |
| #define RDMIFXN_LUMA_Y0 0x5404 |
| #define RDMIFXN_CHROMA_X0 0x5405 |
| #define RDMIFXN_CHROMA_Y0 0x5406 |
| #define RDMIFXN_LUMA_X1 0x5407 |
| #define RDMIFXN_LUMA_Y1 0x5408 |
| #define RDMIFXN_CHROMA_X1 0x5409 |
| #define RDMIFXN_CHROMA_Y1 0x540a |
| #define RDMIFXN_RPT_LOOP 0x540b |
| #define RDMIFXN_LUMA0_RPT_PAT 0x540c |
| #define RDMIFXN_CHROMA0_RPT_PAT 0x540d |
| #define RDMIFXN_LUMA1_RPT_PAT 0x540e |
| #define RDMIFXN_CHROMA1_RPT_PAT 0x540f |
| #define RDMIFXN_LUMA_PSEL 0x5410 |
| #define RDMIFXN_CHROMA_PSEL 0x5411 |
| #define RDMIFXN_DUMMY_PIXEL 0x5412 |
| #define RDMIFXN_LUMA_FIFO_SIZE 0x5413 |
| #define RDMIFXN_AXI_CMD_CNT 0x5414 |
| #define RDMIFXN_AXI_RDAT_CNT 0x5415 |
| #define RDMIFXN_RANGE_MAP_Y 0x5416 |
| #define RDMIFXN_RANGE_MAP_CB 0x5417 |
| #define RDMIFXN_RANGE_MAP_CR 0x5418 |
| #define RDMIFXN_GEN_REG2 0x5419 |
| #define RDMIFXN_PROT 0x541a |
| #define RDMIFXN_URGENT_CTRL 0x541b |
| #define RDMIFXN_GEN_REG3 0x541c |
| #define RDMIFXN_CFMT_CTRL 0x541d |
| #define RDMIFXN_CFMT_W 0x541e |
| //t7 |
| #define RDMIFXN_BADDR_Y 0x5420 |
| //Bit 31:0 cntl_f0_baddr_y |
| //unsigned, RW, default = 0 |
| #define RDMIFXN_BADDR_CB 0x5421 |
| //Bit 31:0 cntl_f0_baddr_cb |
| //unsigned, RW, default = 0 |
| #define RDMIFXN_BADDR_CR 0x5422 |
| //Bit 31:0 cntl_f0_baddr_cr |
| //unsigned, RW, default = 0 |
| #define RDMIFXN_STRIDE_0 0x5423 |
| //Bit 31:29 reserved |
| //Bit 28:16 cntl_f0_stride_cb |
| //unsigned, RW, default = 256 |
| //Bit 15:13 reserved |
| //Bit 12:0 cntl_f0_stride_y |
| //unsigned, RW, default = 256 |
| #define RDMIFXN_STRIDE_1 0x5424 |
| //Bit 31:17 reserved |
| //Bit 16 cntl_f0_acc_mode |
| //unsigned, RW, default = 0 |
| //Bit 15:13 reserved |
| //Bit 12:0 cntl_f0_stride_cr |
| //unsigned, RW, default = 256 |
| #define DI_SC2_INP_GEN_REG 0x5400 |
| #define DI_SC2_INP_CANVAS0 0x5401 |
| #define DI_SC2_INP_CANVAS1 0x5402 |
| #define DI_SC2_INP_LUMA_X0 0x5403 |
| #define DI_SC2_INP_LUMA_Y0 0x5404 |
| #define DI_SC2_INP_CHROMA_X0 0x5405 |
| #define DI_SC2_INP_CHROMA_Y0 0x5406 |
| #define DI_SC2_INP_LUMA_X1 0x5407 |
| #define DI_SC2_INP_LUMA_Y1 0x5408 |
| #define DI_SC2_INP_CHROMA_X1 0x5409 |
| #define DI_SC2_INP_CHROMA_Y1 0x540a |
| #define DI_SC2_INP_RPT_LOOP 0x540b |
| #define DI_SC2_INP_LUMA0_RPT_PAT 0x540c |
| #define DI_SC2_INP_CHROMA0_RPT_PAT 0x540d |
| #define DI_SC2_INP_LUMA1_RPT_PAT 0x540e |
| #define DI_SC2_INP_CHROMA1_RPT_PAT 0x540f |
| #define DI_SC2_INP_LUMA_PSEL 0x5410 |
| #define DI_SC2_INP_CHROMA_PSEL 0x5411 |
| #define DI_SC2_INP_DUMMY_PIXEL 0x5412 |
| #define DI_SC2_INP_LUMA_FIFO_SIZE 0x5413 |
| #define DI_SC2_INP_AXI_CMD_CNT 0x5414 |
| #define DI_SC2_INP_AXI_RDAT_CNT 0x5415 |
| #define DI_SC2_INP_RANGE_MAP_Y 0x5416 |
| #define DI_SC2_INP_RANGE_MAP_CB 0x5417 |
| #define DI_SC2_INP_RANGE_MAP_CR 0x5418 |
| #define DI_SC2_INP_GEN_REG2 0x5419 |
| #define DI_SC2_INP_PROT 0x541a |
| #define DI_SC2_INP_URGENT_CTRL 0x541b |
| #define DI_SC2_INP_GEN_REG3 0x541c |
| #define DI_SC2_INP_CFMT_CTRL 0x541d |
| #define DI_SC2_INP_CFMT_W 0x541e |
| //t7 |
| #define DI_T7_INP_BADDR_Y 0x5420 |
| #define DI_T7_INP_BADDR_CB 0x5421 |
| #define DI_T7_INP_BADDR_CR 0x5422 |
| #define DI_T7_INP_STRIDE_0 0x5423 |
| #define DI_T7_INP_STRIDE_1 0x5424 |
| |
| #define DI_SC2_CHAN2_GEN_REG 0x5480 //off = 0x80 |
| #define DI_SC2_CHAN2_CANVAS0 0x5481 |
| #define DI_SC2_CHAN2_CANVAS1 0x5482 |
| #define DI_SC2_CHAN2_LUMA_X0 0x5483 |
| #define DI_SC2_CHAN2_LUMA_Y0 0x5484 |
| #define DI_SC2_CHAN2_CHROMA_X0 0x5485 |
| #define DI_SC2_CHAN2_CHROMA_Y0 0x5486 |
| #define DI_SC2_CHAN2_LUMA_X1 0x5487 |
| #define DI_SC2_CHAN2_LUMA_Y1 0x5488 |
| #define DI_SC2_CHAN2_CHROMA_X1 0x5489 |
| #define DI_SC2_CHAN2_CHROMA_Y1 0x548a |
| #define DI_SC2_CHAN2_RPT_LOOP 0x548b |
| #define DI_SC2_CHAN2_LUMA0_RPT_PAT 0x548c |
| #define DI_SC2_CHAN2_CHROMA0_RPT_PAT 0x548d |
| #define DI_SC2_CHAN2_LUMA1_RPT_PAT 0x548e |
| #define DI_SC2_CHAN2_CHROMA1_RPT_PAT 0x548f |
| #define DI_SC2_CHAN2_LUMA_PSEL 0x5490 |
| #define DI_SC2_CHAN2_CHROMA_PSEL 0x5491 |
| #define DI_SC2_CHAN2_DUMMY_PIXEL 0x5492 |
| #define DI_SC2_CHAN2_LUMA_FIFO_SIZE 0x5493 |
| #define DI_SC2_CHAN2_AXI_CMD_CNT 0x5494 |
| #define DI_SC2_CHAN2_AXI_RDAT_CNT 0x5495 |
| #define DI_SC2_CHAN2_RANGE_MAP_Y 0x5496 |
| #define DI_SC2_CHAN2_RANGE_MAP_CB 0x5497 |
| #define DI_SC2_CHAN2_RANGE_MAP_CR 0x5498 |
| #define DI_SC2_CHAN2_GEN_REG2 0x5499 |
| #define DI_SC2_CHAN2_PROT 0x549a |
| #define DI_SC2_CHAN2_URGENT_CTRL 0x549b |
| #define DI_SC2_CHAN2_GEN_REG3 0x549c |
| #define DI_SC2_CHAN2_CFMT_CTRL 0x549d |
| #define DI_SC2_CHAN2_CFMT_W 0x549e |
| //t7: |
| #define DI_T7_CHAN2_BADDR_Y 0x54a0 |
| #define DI_T7_CHAN2_BADDR_CB 0x54a1 |
| #define DI_T7_CHAN2_BADDR_CR 0x54a2 |
| #define DI_T7_CHAN2_STRIDE_0 0x54a3 |
| #define DI_T7_CHAN2_STRIDE_1 0x54a4 |
| |
| #define DI_SC2_MEM_GEN_REG 0x5500 //off = 0x100 |
| #define DI_SC2_MEM_CANVAS0 0x5501 |
| #define DI_SC2_MEM_CANVAS1 0x5502 |
| #define DI_SC2_MEM_LUMA_X0 0x5503 |
| #define DI_SC2_MEM_LUMA_Y0 0x5504 |
| #define DI_SC2_MEM_CHROMA_X0 0x5505 |
| #define DI_SC2_MEM_CHROMA_Y0 0x5506 |
| #define DI_SC2_MEM_LUMA_X1 0x5507 |
| #define DI_SC2_MEM_LUMA_Y1 0x5508 |
| #define DI_SC2_MEM_CHROMA_X1 0x5509 |
| #define DI_SC2_MEM_CHROMA_Y1 0x550a |
| #define DI_SC2_MEM_RPT_LOOP 0x550b |
| #define DI_SC2_MEM_LUMA0_RPT_PAT 0x550c |
| #define DI_SC2_MEM_CHROMA0_RPT_PAT 0x550d |
| #define DI_SC2_MEM_LUMA1_RPT_PAT 0x550e |
| #define DI_SC2_MEM_CHROMA1_RPT_PAT 0x550f |
| #define DI_SC2_MEM_LUMA_PSEL 0x5510 |
| #define DI_SC2_MEM_CHROMA_PSEL 0x5511 |
| #define DI_SC2_MEM_DUMMY_PIXEL 0x5512 |
| #define DI_SC2_MEM_LUMA_FIFO_SIZE 0x5513 |
| #define DI_SC2_MEM_AXI_CMD_CNT 0x5514 |
| #define DI_SC2_MEM_AXI_RDAT_CNT 0x5515 |
| #define DI_SC2_MEM_RANGE_MAP_Y 0x5516 |
| #define DI_SC2_MEM_RANGE_MAP_CB 0x5517 |
| #define DI_SC2_MEM_RANGE_MAP_CR 0x5518 |
| #define DI_SC2_MEM_GEN_REG2 0x5519 |
| #define DI_SC2_MEM_PROT 0x551a |
| #define DI_SC2_MEM_URGENT_CTRL 0x551b |
| #define DI_SC2_MEM_GEN_REG3 0x551c |
| #define DI_SC2_MEM_CFMT_CTRL 0x551d |
| #define DI_SC2_MEM_CFMT_W 0x551e |
| |
| //t7: |
| #define DI_T7_MEM_BADDR_Y 0x5520 |
| #define DI_T7_MEM_BADDR_CB 0x5521 |
| #define DI_T7_MEM_BADDR_CR 0x5522 |
| #define DI_T7_MEM_STRIDE_0 0x5523 |
| #define DI_T7_MEM_STRIDE_1 0x5524 |
| |
| #define DI_SC2_IF1_GEN_REG 0x5580 //off = 0x180 |
| #define DI_SC2_IF1_CANVAS0 0x5581 |
| #define DI_SC2_IF1_CANVAS1 0x5582 |
| #define DI_SC2_IF1_LUMA_X0 0x5583 |
| #define DI_SC2_IF1_LUMA_Y0 0x5584 |
| #define DI_SC2_IF1_CHROMA_X0 0x5585 |
| #define DI_SC2_IF1_CHROMA_Y0 0x5586 |
| #define DI_SC2_IF1_LUMA_X1 0x5587 |
| #define DI_SC2_IF1_LUMA_Y1 0x5588 |
| #define DI_SC2_IF1_CHROMA_X1 0x5589 |
| #define DI_SC2_IF1_CHROMA_Y1 0x558a |
| #define DI_SC2_IF1_RPT_LOOP 0x558b |
| #define DI_SC2_IF1_LUMA0_RPT_PAT 0x558c |
| #define DI_SC2_IF1_CHROMA0_RPT_PAT 0x558d |
| #define DI_SC2_IF1_LUMA1_RPT_PAT 0x558e |
| #define DI_SC2_IF1_CHROMA1_RPT_PAT 0x558f |
| #define DI_SC2_IF1_LUMA_PSEL 0x5590 |
| #define DI_SC2_IF1_CHROMA_PSEL 0x5591 |
| #define DI_SC2_IF1_DUMMY_PIXEL 0x5592 |
| #define DI_SC2_IF1_LUMA_FIFO_SIZE 0x5593 |
| #define DI_SC2_IF1_AXI_CMD_CNT 0x5594 |
| #define DI_SC2_IF1_AXI_RDAT_CNT 0x5595 |
| #define DI_SC2_IF1_RANGE_MAP_Y 0x5596 |
| #define DI_SC2_IF1_RANGE_MAP_CB 0x5597 |
| #define DI_SC2_IF1_RANGE_MAP_CR 0x5598 |
| #define DI_SC2_IF1_GEN_REG2 0x5599 |
| #define DI_SC2_IF1_PROT 0x559a |
| #define DI_SC2_IF1_URGENT_CTRL 0x559b |
| #define DI_SC2_IF1_GEN_REG3 0x559c |
| #define DI_SC2_IF1_CFMT_CTRL 0x559d |
| #define DI_SC2_IF1_CFMT_W 0x559e |
| //t7 |
| #define DI_T7_IF1_BADDR_Y 0x55a0 |
| #define DI_T7_IF1_BADDR_CB 0x55a1 |
| #define DI_T7_IF1_BADDR_CR 0x55a2 |
| #define DI_T7_IF1_STRIDE_0 0x55a3 |
| #define DI_T7_IF1_STRIDE_1 0x55a4 |
| |
| #define DI_SC2_IF0_GEN_REG 0x5600 //off = 0x200 |
| #define DI_SC2_IF0_CANVAS0 0x5601 |
| #define DI_SC2_IF0_CANVAS1 0x5602 |
| #define DI_SC2_IF0_LUMA_X0 0x5603 |
| #define DI_SC2_IF0_LUMA_Y0 0x5604 |
| #define DI_SC2_IF0_CHROMA_X0 0x5605 |
| #define DI_SC2_IF0_CHROMA_Y0 0x5606 |
| #define DI_SC2_IF0_LUMA_X1 0x5607 |
| #define DI_SC2_IF0_LUMA_Y1 0x5608 |
| #define DI_SC2_IF0_CHROMA_X1 0x5609 |
| #define DI_SC2_IF0_CHROMA_Y1 0x560a |
| #define DI_SC2_IF0_RPT_LOOP 0x560b |
| #define DI_SC2_IF0_LUMA0_RPT_PAT 0x560c |
| #define DI_SC2_IF0_CHROMA0_RPT_PAT 0x560d |
| #define DI_SC2_IF0_LUMA1_RPT_PAT 0x560e |
| #define DI_SC2_IF0_CHROMA1_RPT_PAT 0x560f |
| #define DI_SC2_IF0_LUMA_PSEL 0x5610 |
| #define DI_SC2_IF0_CHROMA_PSEL 0x5611 |
| #define DI_SC2_IF0_DUMMY_PIXEL 0x5612 |
| #define DI_SC2_IF0_LUMA_FIFO_SIZE 0x5613 |
| #define DI_SC2_IF0_AXI_CMD_CNT 0x5614 |
| #define DI_SC2_IF0_AXI_RDAT_CNT 0x5615 |
| #define DI_SC2_IF0_RANGE_MAP_Y 0x5616 |
| #define DI_SC2_IF0_RANGE_MAP_CB 0x5617 |
| #define DI_SC2_IF0_RANGE_MAP_CR 0x5618 |
| #define DI_SC2_IF0_GEN_REG2 0x5619 |
| #define DI_SC2_IF0_PROT 0x561a |
| #define DI_SC2_IF0_URGENT_CTRL 0x561b |
| #define DI_SC2_IF0_GEN_REG3 0x561c |
| #define DI_SC2_IF0_CFMT_CTRL 0x561d |
| #define DI_SC2_IF0_CFMT_W 0x561e |
| //t7: |
| #define DI_T7_IF0_BADDR_Y 0x5620 |
| #define DI_T7_IF0_BADDR_CB 0x5621 |
| #define DI_T7_IF0_BADDR_CR 0x5622 |
| #define DI_T7_IF0_STRIDE_0 0x5623 |
| #define DI_T7_IF0_STRIDE_1 0x5624 |
| |
| #define DI_SC2_IF2_GEN_REG 0x5680 //off = 0x280 |
| #define DI_SC2_IF2_CANVAS0 0x5681 |
| #define DI_SC2_IF2_CANVAS1 0x5682 |
| #define DI_SC2_IF2_LUMA_X0 0x5683 |
| #define DI_SC2_IF2_LUMA_Y0 0x5684 |
| #define DI_SC2_IF2_CHROMA_X0 0x5685 |
| #define DI_SC2_IF2_CHROMA_Y0 0x5686 |
| #define DI_SC2_IF2_LUMA_X1 0x5687 |
| #define DI_SC2_IF2_LUMA_Y1 0x5688 |
| #define DI_SC2_IF2_CHROMA_X1 0x5689 |
| #define DI_SC2_IF2_CHROMA_Y1 0x568a |
| #define DI_SC2_IF2_RPT_LOOP 0x568b |
| #define DI_SC2_IF2_LUMA0_RPT_PAT 0x568c |
| #define DI_SC2_IF2_CHROMA0_RPT_PAT 0x568d |
| #define DI_SC2_IF2_LUMA1_RPT_PAT 0x568e |
| #define DI_SC2_IF2_CHROMA1_RPT_PAT 0x568f |
| #define DI_SC2_IF2_LUMA_PSEL 0x5690 |
| #define DI_SC2_IF2_CHROMA_PSEL 0x5691 |
| #define DI_SC2_IF2_DUMMY_PIXEL 0x5692 |
| #define DI_SC2_IF2_LUMA_FIFO_SIZE 0x5693 |
| #define DI_SC2_IF2_AXI_CMD_CNT 0x5694 |
| #define DI_SC2_IF2_AXI_RDAT_CNT 0x5695 |
| #define DI_SC2_IF2_RANGE_MAP_Y 0x5696 |
| #define DI_SC2_IF2_RANGE_MAP_CB 0x5697 |
| #define DI_SC2_IF2_RANGE_MAP_CR 0x5698 |
| #define DI_SC2_IF2_GEN_REG2 0x5699 |
| #define DI_SC2_IF2_PROT 0x569a |
| #define DI_SC2_IF2_URGENT_CTRL 0x569b |
| #define DI_SC2_IF2_GEN_REG3 0x569c |
| #define DI_SC2_IF2_CFMT_CTRL 0x569d |
| #define DI_SC2_IF2_CFMT_W 0x569e |
| //t7 |
| #define DI_T7_IF2_BADDR_Y 0x56a0 |
| #define DI_T7_IF2_BADDR_CB 0x56a1 |
| #define DI_T7_IF2_BADDR_CR 0x56a2 |
| #define DI_T7_IF2_STRIDE_0 0x56a3 |
| #define DI_T7_IF2_STRIDE_1 0x56a4 |
| |
| //========================================================================== |
| // VD_TOP for t7 each afbc add xx38 |
| //========================================================================== |
| #define AFBCDM_VDTOP_CTRL0 0x5438 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| /*afbcd*/ |
| #define AFBCDM_ENABLE 0x5440 |
| //Bit 31:29, reserved |
| //Bit 28:23, reg_gclk_ctrl_core unsigned, default = 0 |
| //Bit 22, reg_fmt_size_sw_mode |
| //unsigned, default = 0, 0:hw mode 1:sw mode for format size |
| //Bit 21, reg_addr_link_en unsigned, default = 1, 1:enable |
| //Bit 20, reg_fmt444_comb unsigned, default = 0, 0: 444 8bit uncomb |
| //Bit 19, reg_dos_uncomp_mode unsigned , default = 0 |
| //Bit 18:16, soft_rst unsigned , default = 4 |
| //Bit 15:14, reserved |
| //Bit 13:12, ddr_blk_size unsigned , default = 1 |
| //Bit 11:9, cmd_blk_size unsigend , default = 3 |
| //Bit 8, dec_enable unsigned , default = 0 |
| //Bit 7:2, reserved |
| //Bit 1, head_len_sel unsigned , default = 1 |
| //Bit 0, dec_frm_start unsigned , default = 0 |
| #define AFBCDM_MODE 0x5441 |
| //Bit 31:30, reserved |
| //Bit 29, ddr_sz_mode |
| //uns, default = 0 , 0: fixed block ddr size 1 : unfixed block ddr size; |
| //Bit 28, blk_mem_mode |
| //uns, default = 0 , 0: fixed 16x128 size; 1 : fixed 12x128 size |
| //Bit 27:26, rev_mode |
| //uns, default = 0 , reverse mode |
| //Bit 25:24, mif_urgent |
| //uns, default = 3 , info mif and data mif urgent |
| //Bit 23, reserved |
| //Bit 22:16, hold_line_num uns, default = 0 , |
| //Bit 15:14, burst_len |
| //uns, default = 2, 0: burst1 1:burst2 2:burst4 |
| //Bit 13:8, compbits_yuv uns, default = 0 , |
| // bit 1:0,: |
| //y component bitwidth : 00-8bit 01-9bit 10-10bit 11-12bit |
| // bit 3:2,: |
| //u component bitwidth : 00-8bit 01-9bit 10-10bit 11-12bit |
| // bit 5:4,: |
| //v component bitwidth : 00-8bit 01-9bit 10-10bit 11-12bit |
| //Bit 7:6, vert_skip_y uns, default = 0 , |
| // luma vert skip mode : 00-y0y1, 01-y0, 10-y1, 11-(y0+y1)/2 |
| //Bit 5:4, horz_skip_y uns, default = 0 , |
| // luma horz skip mode : 00-y0y1, 01-y0, 10-y1, 11-(y0+y1)/2 |
| //Bit 3:2, vert_skip_uv uns, default = 0 , |
| // chroma vert skip mode : 00-y0y1, 01-y0, 10-y1, 11-(y0+y1)/2 |
| //Bit 1:0, horz_skip_uv uns, default = 0 , |
| // chroma horz skip mode : 00-y0y1, 01-y0, 10-y1, 11-(y0+y1)/2 |
| #define AFBCDM_SIZE_IN 0x5442 |
| //Bit 31:29, reserved |
| //Bit 28:16 hsize_in |
| //uns, default = 1920 , pic horz size in unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, vsize_in |
| //uns, default = 1080 , pic vert size in unit: pixel |
| #define AFBCDM_DEC_DEF_COLOR 0x5443 |
| //Bit 31:30, reserved |
| //Bit 29:20, def_color_y |
| //uns, default = 255, afbc dec y default setting value |
| //Bit 19:10, def_color_u |
| //uns, default = 128, afbc dec u default setting value |
| //Bit 9: 0, def_color_v |
| //uns, default = 128, afbc dec v default setting value |
| #define AFBCDM_CONV_CTRL 0x5444 |
| //Bit 31:14, reserved |
| //Bit 13:12, fmt_mode |
| //uns, default = 2, 0:yuv444 1:yuv422 2:yuv420 |
| //Bit 11: 0, conv_lbuf_len |
| //uns, default = 256, unit=16 pixel need to set = 2^n |
| #define AFBCDM_LBUF_DEPTH 0x5445 |
| //Bit 31:28, reserved |
| //Bit 27:16, dec_lbuf_depth uns, default = 128; // unit= 8 pixel |
| //Bit 15:12, reserved |
| //Bit 11:0, mif_lbuf_depth uns, default = 128; |
| #define AFBCDM_HEAD_BADDR 0x5446 |
| //Bit 31:0, mif_info_baddr uns, default = 32'h0; |
| #define AFBCDM_BODY_BADDR 0x5447 |
| //Bit 31:0, mif_data_baddr uns, default = 32'h00010000; |
| #define AFBCDM_SIZE_OUT 0x5448 |
| //Bit 31:29, reserved |
| //Bit 28:16, hsize_out uns, default = 1920 ; // unit: 1 pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, vsize_out uns, default = 1080 ; // unit: 1 pixel |
| #define AFBCDM_OUT_YSCOPE 0x5449 |
| //Bit 31:29, reserved |
| //Bit 28:16, out_vert_bgn uns, default = 0 ; // unit: 1 pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, out_vert_end uns, default = 1079 ; |
| // unit: 1 pixel |
| #define AFBCDM_STAT 0x544a |
| //Bit 31:1, ro_dbg_top_info uns, default = 0 |
| //Bit 0, frm_end_stat uns, default = 0 frame end status |
| #define AFBCDM_VD_CFMT_CTRL 0x544b |
| |
| //Bit 31 cfmt_gclk_bit_dis uns, default = 0 ; |
| // it true, disable clock, otherwise enable clock |
| //Bit 30 cfmt_soft_rst_bit uns, default = 0 ; |
| // soft rst bit |
| //Bit 29 reserved |
| //Bit 28 chfmt_rpt_pix uns, default = 0 ; |
| // if true, horizontal formatter use repeating to generete pixel, |
| //otherwise use bilinear interpolation |
| //Bit 27:24 chfmt_ini_phase uns, default = 0 ; |
| // horizontal formatter initial phase |
| //Bit 23 chfmt_rpt_p0_en uns, default = 0 ; |
| // horizontal formatter repeat pixel 0 enable |
| //Bit 22:21 chfmt_yc_ratio uns, default = 0 ; |
| // horizontal Y/C ratio, 00: 1:1, 01: 2:1, 10: 4:1 |
| //Bit 20 chfmt_en uns, default = 0 ; |
| // horizontal formatter enable |
| //Bit 19 cvfmt_phase0_always_en uns, default = 0 ; |
| //if true, always use phase0 while vertical formater, meaning always |
| // repeat data, no interpolation |
| //Bit 18 cvfmt_rpt_last_dis uns, default = 0 ; |
| //if true, disable vertical formatter chroma repeat last line |
| //Bit 17 cvfmt_phase0_nrpt_en uns, default = 0 ; |
| //veritcal formatter dont need repeat line on phase0, 1: enable, 0: disable |
| //Bit 16 cvfmt_rpt_line0_en uns, default = 0 ; |
| //veritcal formatter repeat line 0 enable |
| //Bit 15:12 cvfmt_skip_line_num uns, default = 0 ; |
| //vertical formatter skip line num at the beginning |
| //Bit 11:8 cvfmt_ini_phase uns, default = 0 ; |
| //vertical formatter initial phase |
| //Bit 7:1 cvfmt_phase_step uns, default = 0 ; |
| //vertical formatter phase step (3.4) |
| //Bit 0 cvfmt_en uns, default = 0 ; |
| //vertical formatter enable |
| #define AFBCDM_VD_CFMT_W 0x544c |
| //Bit 31:29 reserved |
| //Bit 28:16 chfmt_w |
| // uns, default = 0 ;horizontal formatter width |
| //Bit 15:13 reserved |
| //Bit 12:0 cvfmt_w |
| //uns, default = 0 ;vertical formatter width |
| #define AFBCDM_MIF_HOR_SCOPE 0x544d |
| //Bit 31:26, reserved |
| //Bit 25:16, mif_blk_bgn_h uns, default = 0 ; |
| // unit: 32 pixel/block hor |
| //Bit 15:10, reserved |
| //Bit 9: 0, mif_blk_end_h uns, default = 59 ; |
| // unit: 32 pixel/block hor |
| #define AFBCDM_MIF_VER_SCOPE 0x544e |
| //Bit 31:28, reserved |
| //Bit 27:16, mif_blk_bgn_v uns, default = 0 ; |
| // unit: 32 pixel/block ver |
| //Bit 15:12, reserved |
| //Bit 11: 0, mif_blk_end_v uns, default = 269; |
| // unit: 32 pixel/block ver |
| #define AFBCDM_PIXEL_HOR_SCOPE 0x544f |
| //Bit 31:29, reserved |
| //Bit 28:16, dec_pixel_bgn_h uns, default = 0 ; |
| // unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12: 0, dec_pixel_end_h uns, default = 1919 ; |
| // unit: pixel |
| #define AFBCDM_PIXEL_VER_SCOPE 0x5450 |
| //Bit 31:29, reserved |
| //Bit 28:16, dec_pixel_bgn_v uns, default = 0 ; |
| // unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12: 0, dec_pixel_end_v uns, default = 1079 ; |
| // unit: pixel |
| #define AFBCDM_VD_CFMT_H 0x5451 |
| //Bit 31:13, reserved |
| //Bit 12:0 cfmt_h uns, default = 142 ; |
| //vertical formatter height |
| #define AFBCDM_IQUANT_ENABLE 0x5452 |
| //Bit 31:12 reserved |
| //Bit 11 reg_quant_expand_en_1 |
| //unsigned, RW, default = 0 enable for quantization value expansion |
| //Bit 10 reg_quant_expand_en_0 |
| //unsigned, RW, default = 0 enable for quantization value expansion |
| //Bit 9: 8 reg_bcleav_ofst |
| //signed , RW, default = 0 |
| //bcleave ofset to get lower range, especially under lossy, |
| //for v1/v2, x=0 is equivalent, default = -1; |
| //Bit 7: 5 reserved |
| //Bit 4 reg_quant_enable_1 |
| // unsigned , RW, default = 0 enable for quant to get some lossy |
| //Bit 3: 1 reserved |
| //Bit 0 reg_quant_enable_0 |
| // unsigned , RW, default = 0 enable for quant to get some lossy |
| #define AFBCDM_IQUANT_LUT_1 0x5453 |
| //Bit 31 reserved |
| //Bit 30:28 reg_iquant_yclut_0_11 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 27 reserved |
| //Bit 26:24 reg_iquant_yclut_0_10 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 23 reserved |
| //Bit 22:20 reg_iquant_yclut_0_9 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 19 reserved |
| //Bit 18:16 reg_iquant_yclut_0_8 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 15 reserved/ |
| //Bit 14:12 reg_iquant_yclut_0_7 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_0_6 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_0_5 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_0_4 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define AFBCDM_IQUANT_LUT_2 0x5454 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_0_3 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_0_2 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_0_1 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_0_0 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define AFBCDM_IQUANT_LUT_3 0x5455 |
| //Bit 31 reserved |
| //Bit 30:28 reg_iquant_yclut_1_11 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 27 reserved |
| //Bit 26:24 reg_iquant_yclut_1_10 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 23 reserved |
| //Bit 22:20 reg_iquant_yclut_1_9 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 19 reserved |
| //Bit 18:16 reg_iquant_yclut_1_8 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_1_7 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_1_6 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_1_5 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_1_4 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define AFBCDM_IQUANT_LUT_4 0x5456 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_1_3 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_1_2 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_1_1 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_1_0 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define AFBCDM_ROT_CTRL 0x5460 |
| //Bit 31:30 reg_rot_ohds2_mode |
| //unsigned, RW, default = 0 , |
| //rot output format down hor drop mode,0:average 1:use 0 2:use 1 |
| //Bit 29:28 reg_rot_ovds2_mode |
| //unsigned, RW, default = 0 , |
| //rot output format down ver drop mode,0:average 1:use 0 2:use 1 |
| //Bit 27 reg_pip_mode |
| //unsigned, RW, default = 0 , |
| //0:dec_src from vdin/dos 1:dec_src from pip |
| //Bit 26:24 reg_rot_uv_vshrk_drop_mode |
| //unsigned, RW, default = 0 , 0: |
| //average (1/2: 1:left 2:right) |
| // (1/4: 1:[0] 2:[1] 3:[2] 4:[3], 5:left_121 6:right_121) |
| //Bit 23 reserved |
| //Bit 22:20 reg_rot_uv_hshrk_drop_mode |
| //unsigned, RW, default = 0 , 0: |
| //average (1/2: 1:left 2:right) |
| //(1/4: 1:[0] 2:[1] 3:[2] 4:[3], 5:left_121 6:right_121) |
| //Bit 19:18 reg_rot_uv_vshrk_ratio |
| //unsigned, RW, default = 0 , 0: |
| //no shrink 1:1/2 shrink 2:1/4 shrink |
| //Bit 17:16 reg_rot_uv_hshrk_ratio |
| //unsigned, RW, default = 0 , 0: |
| //no shrink 1:1/2 shrink 2:1/4 shrink |
| //Bit 15 reserved |
| //Bit 14:12 reg_rot_y_vshrk_drop_mode |
| //unsigned, RW, default = 0 , 0: |
| //average (1/2: 1:left 2:right) |
| //(1/4: 1:[0] 2:[1] 3:[2] 4:[3], 5:left_121 6:right_121) |
| //Bit 11 reserved |
| //Bit 10:8 reg_rot_y_hshrk_drop_mode |
| //unsigned, RW, default = 0 , 0:average |
| //(1/2: 1:left 2:right) |
| //(1/4: 1:[0] 2:[1] 3:[2] 4:[3], 5:left_121 6:right_121) |
| //Bit 7:6 reg_rot_y_vshrk_ratio |
| //unsigned, RW, default = 0 , 0:no shrink 1:1/2 shrink 2:1/4 shrink |
| //Bit 5:4 reg_rot_y_hshrk_ratio |
| //unsigned, RW, default = 0 , 0:no shrink 1:1/2 shrink 2:1/4 shrink |
| //Bit 3:2 reg_rot_uv422_drop_mode |
| //unsigned, RW, default = 0 , 0:average 1:left 2:right |
| //Bit 1 reg_rot_uv422_omode |
| //unsigned, RW, default = 0 , |
| //when rot input fmt422, 0:output_uv422 1:output_uv420 |
| //Bit 0 reg_rot_enable |
| //unsigned, RW, default = 0 , rotation enable |
| #define AFBCDM_ROT_SCOPE 0x5461 |
| //Bit 31:26 reserved |
| //Bit 25:20 reg_rot_debug_probe |
| //unsigned, RW , default = 0, |
| //y:[2:0] uv:[5:3]; 0:iblk_size 1:oblk_size 2: |
| //iblk_cnt 3:oblk_cnt 4:hsize_in 5:vsize_in 6:vstep |
| //Bit 19 reg_rot_dout_ds_mode_sw |
| //unsigned, RW , default = 0, 0:use hardware mode 1:use software mode |
| //Bit 18:17 reg_rot_dout_ds_mode |
| //unsigned, RW , default = 0, |
| //rot output fmt_down mode: [0]:h_downscale [1]:v_downscale |
| //Bit 16 reg_rot_ifmt_force444 |
| //unsigned, RW , default = 1, 1: rot input fmt force as 444 |
| //Bit 15:14 reg_rot_ofmt_mode |
| //unsigned, RW , default = 0, rot output fmt mode |
| //Bit 13:12 reg_rot_compbits_out_y |
| //unsigned, RW , default = 0, rot output compbit y |
| //Bit 11:10 reg_rot_compbits_out_uv |
| //unsigned, RW , default = 0, rot output compbit uv |
| //Bit 9:8 reg_rot_wrbgn_v |
| //unsigned, RW , default = 0, rot pic vert size window begin pixel |
| //Bit 7:5 reserved |
| //Bit 4:0 reg_rot_wrbgn_h |
| //unsigned, RW , default = 0, rot pic hori size window begin pixel |
| #define AFBCDM_RPLC_CTRL 0x5462 |
| //Bit 31 reg_rplc_inter_corr_en |
| //unsigned, RW , default = 0 , |
| //pip replace inte-frame edge correct enable |
| //Bit 30 reg_rplc_dummy_corr_en |
| //unsigned, RW , default = 0 , |
| //pip replace outsize of real-pipframe edge correct enable |
| //Bit 29 reg_rplc_byps |
| //unsigned, RW , default = 1 , //pip replace module bypass |
| //Bit 28:16 reg_rplc_vsize_in |
| //unsigned, RW , default = 1080, // |
| //Bit 15:13 reserved |
| //Bit 12:0 reg_rplc_hsize_in |
| //unsigned, RW , default = 1920, |
| #define AFBCDM_RPLC_PICEN 0x5463 |
| //Bit 31:28 reserved |
| //Bit 27:16 reg_rplc_def_color_y |
| //unsigned, RW , default =0 , //pip replace def_color_y |
| //Bit 15:0 reg_rplc_pic_enable |
| //unsigned, RW , default =16'hffff , //pip replace pip_picure enbale |
| #define AFBCDM_RPLC_DEFCOL 0x5464 |
| //Bit 31:24 reserved |
| //Bit 23:12 reg_rplc_def_color_v |
| //unsigned, RW , default =0 , //pip replace def_color_v |
| //Bit 11:0 reg_rplc_def_color_u |
| //unsigned, RW , default =0 , //pip replace def_color_u |
| #define AFBCDM_RPLC_SCPXN_ADDR 0x5465 |
| //Bit 31:0 reg_rplc_scpxn_addr |
| //unsigned, RW , default =0 , //pip replace scopx16 addr |
| #define AFBCDM_RPLC_SCPXN_DATA 0x5466 |
| //Bit 31:0 reg_rplc_scpxn_data |
| //unsigned, RW , default =0 , //pip replace scopx16 data |
| #define AFBCDM_ROT_RO_STAT 0x5467 |
| //Bit 31:0 ro_rot_debug |
| //unsigned, RO , default = 0, rot some status |
| #define AFBCDM_FGRAIN_CTRL 0x5470 |
| //Bit 31:26 reserved |
| //Bit 25:24 reg_sync_ctrl |
| // unsigned , RW, default = 0 |
| //Bit 23 reserved |
| //Bit 22 reg_dma_st_clr |
| // unsigned , RW, default = 0 clear DMA error status |
| //Bit 21 reg_hold4dma_scale |
| // unsigned , RW, default = 0 1 to wait DMA scale data |
| //ready before accept input data default = 0 |
| //Bit 20 reg_hold4dma_tbl |
| // unsigned , RW, default = 0 1 to wait DMA grain table |
| //data ready before accept input data default = 0 |
| //Bit 19 reg_cin_uv_swap |
| // unsigned , RW, default = 0 1 to swap U/V input |
| //Bit 18 reg_cin_rev |
| // unsigned , RW, default = 0 1 to reverse the U/V input order |
| //Bit 17 reg_yin_rev |
| // unsigned , RW, default = 0 1 to reverse the Y input order |
| //Bit 16 reg_fgrain_ext_imode |
| // unsigned , RW, default = 1 0 to |
| //indicate the input data is *4 in 8bit mode |
| //Bit 15 reg_use_par_apply_fgrain |
| // unsigned , RW, default = 0 1 to use apply_fgrain from DMA table |
| //Bit 14 reg_fgrain_last_ln_mode |
| // unsigned , RW, default = 0 1 to keep fgrain noise generator |
| //though the input is finished for rdmif. |
| //Bit 13 reg_fgrain_use_sat4bp |
| // unsigned , RW, default = 0 1 to use fgain_max/min |
| //for sat not {DW{1'b1}}/0 |
| //Bit 12 reg_apply_c_mode |
| // unsigned , RW, default = 1 0 to following C |
| //Bit 11 reg_fgrain_tbl_sign_mode |
| // unsigned , RW, default = 1 0 to indicate signed bit |
| //is not extended in 8bit mode |
| //Bit 10 reg_fgrain_tbl_ext_mode |
| // unsigned , RW, default = 1 0 to indicate the grain table is *4 in 8bit mode |
| //Bit 9: 8 reg_fmt_mode |
| // unsigned , RW, default = 2 0:444; 1:422; 2:420; 3:reserved |
| //Bit 7: 6 reg_comp_bits |
| // unsigned , RW, default = 1 0:8bits; 1:10bits, else 12 bits |
| //Bit 5: 4 reg_rev_mode |
| // unsigned . RW, default = 0 0:h_rev; 1:v_rev; |
| //Bit 3 reserved |
| //Bit 2 reg_block_mode |
| // unsigned , RW, default = 1 |
| //Bit 1 reg_fgrain_loc_en |
| // unsigned , RW, default = 0 frame-based fgrain enable |
| //Bit 0 reg_fgrain_glb_en |
| // unsigned , RW, default = 0 global-based fgrain enable |
| #define AFBCDM_FGRAIN_WIN_H 0x5471 |
| //Bit 31:16 reg_win_end_h .unsigned , default = 3812 |
| //Bit 15: 0, reg_win_bgn_h .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_WIN_V 0x5472 |
| //Bit 31:16 reg_win_end_v .unsigned , default = 2156 |
| //Bit 15: 0, reg_win_bgn_v .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_SW_Y_RANNGE 0x5473 |
| //Bit 31, reg_fgrain_sw_yrange .unsigned , default = 0 |
| //Bit 30:26, reserved |
| //Bit 25:16, reg_fgrain_ymax .unsigned , default = 1023 |
| //Bit 15:10, reserved |
| //Bit 9: 0, reg_fgrain_ymin .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_SW_C_RANNGE 0x5474 |
| //Bit 31, reg_fgrain_sw_crange .unsigned , default = 0 |
| //Bit 30:26, reserved |
| //Bit 25:16, reg_fgrain_cmax .unsigned , default = 1023 |
| //Bit 15:10, reserved |
| //Bit 9: 0, reg_fgrain_cmin .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_GCLK_CTRL_0 0x5475 |
| //Bit 31:0, reg_fgrain_gclk_ctrl0 .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_GCLK_CTRL_1 0x5476 |
| //Bit 31:0, reg_fgrain_gclk_ctrl1 .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_GCLK_CTRL_2 0x5477 |
| //Bit 31:0, reg_fgrain_gclk_ctrl2 .unsigned , default = 0 |
| #define AFBCDM_FGRAIN_PARAM_ADDR 0x5478 |
| #define AFBCDM_FGRAIN_PARAM_DATA 0x5479 |
| |
| /*afbcd for vd1*/ |
| #define AFBCDM_VD1_ENABLE 0x4840 //-0xc00 |
| #define AFBCDM_VD1_MODE 0x4841 |
| #define AFBCDM_VD1_SIZE_IN 0x4842 |
| #define AFBCDM_VD1_DEC_DEF_COLOR 0x4843 |
| #define AFBCDM_VD1_CONV_CTRL 0x4844 |
| #define AFBCDM_VD1_LBUF_DEPTH 0x4845 |
| #define AFBCDM_VD1_HEAD_BADDR 0x4846 |
| #define AFBCDM_VD1_BODY_BADDR 0x4847 |
| #define AFBCDM_VD1_SIZE_OUT 0x4848 |
| #define AFBCDM_VD1_OUT_YSCOPE 0x4849 |
| #define AFBCDM_VD1_STAT 0x484a |
| #define AFBCDM_VD1_VD_CFMT_CTRL 0x484b |
| #define AFBCDM_VD1_VD_CFMT_W 0x484c |
| #define AFBCDM_VD1_MIF_HOR_SCOPE 0x484d |
| #define AFBCDM_VD1_MIF_VER_SCOPE 0x484e |
| #define AFBCDM_VD1_PIXEL_HOR_SCOPE 0x484f |
| #define AFBCDM_VD1_PIXEL_VER_SCOPE 0x4850 |
| #define AFBCDM_VD1_VD_CFMT_H 0x4851 |
| #define AFBCDM_VD1_IQUANT_ENABLE 0x4852 |
| #define AFBCDM_VD1_IQUANT_LUT_1 0x4853 |
| #define AFBCDM_VD1_IQUANT_LUT_2 0x4854 |
| #define AFBCDM_VD1_IQUANT_LUT_3 0x4855 |
| #define AFBCDM_VD1_IQUANT_LUT_4 0x4856 |
| #define AFBCDM_VD1_ROT_CTRL 0x4860 |
| #define AFBCDM_VD1_ROT_SCOPE 0x4861 |
| #define AFBCDM_VD1_RPLC_CTRL 0x4862 |
| #define AFBCDM_VD1_RPLC_PICEN 0x4863 |
| #define AFBCDM_VD1_RPLC_DEFCOL 0x4864 |
| #define AFBCDM_VD1_RPLC_SCPXN_ADDR 0x4865 |
| #define AFBCDM_VD1_RPLC_SCPXN_DATA 0x4866 |
| #define AFBCDM_VD1_ROT_RO_STAT 0x4867 |
| #define AFBCDM_VD1_FGRAIN_CTRL 0x4870 |
| #define AFBCDM_VD1_FGRAIN_WIN_H 0x4871 |
| #define AFBCDM_VD1_FGRAIN_WIN_V 0x4872 |
| #define AFBCDM_VD1_FGRAIN_SW_Y_RANNGE 0x4873 |
| #define AFBCDM_VD1_FGRAIN_SW_C_RANNGE 0x4874 |
| #define AFBCDM_VD1_FGRAIN_GCLK_CTRL_0 0x4875 |
| #define AFBCDM_VD1_FGRAIN_GCLK_CTRL_1 0x4876 |
| #define AFBCDM_VD1_FGRAIN_GCLK_CTRL_2 0x4877 |
| #define AFBCDM_VD1_FGRAIN_PARAM_ADDR 0x4878 |
| #define AFBCDM_VD1_FGRAIN_PARAM_DATA 0x4879 |
| |
| //for t7: |
| #define AFBCDM_INP_CTRL0 0x5438 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| /*afbcd add*/ |
| #define AFBCDM_INP_ENABLE 0x5440 |
| #define AFBCDM_INP_MODE 0x5441 |
| #define AFBCDM_INP_SIZE_IN 0x5442 |
| #define AFBCDM_INP_DEC_DEF_COLOR 0x5443 |
| #define AFBCDM_INP_CONV_CTRL 0x5444 |
| #define AFBCDM_INP_LBUF_DEPTH 0x5445 |
| #define AFBCDM_INP_HEAD_BADDR 0x5446 |
| #define AFBCDM_INP_BODY_BADDR 0x5447 |
| #define AFBCDM_INP_SIZE_OUT 0x5448 |
| #define AFBCDM_INP_OUT_YSCOPE 0x5449 |
| #define AFBCDM_INP_STAT 0x544a |
| #define AFBCDM_INP_VD_CFMT_CTRL 0x544b |
| #define AFBCDM_INP_VD_CFMT_W 0x544c |
| #define AFBCDM_INP_MIF_HOR_SCOPE 0x544d |
| #define AFBCDM_INP_MIF_VER_SCOPE 0x544e |
| #define AFBCDM_INP_PIXEL_HOR_SCOPE 0x544f |
| #define AFBCDM_INP_PIXEL_VER_SCOPE 0x5450 |
| #define AFBCDM_INP_VD_CFMT_H 0x5451 |
| #define AFBCDM_INP_IQUANT_ENABLE 0x5452 |
| #define AFBCDM_INP_IQUANT_LUT_1 0x5453 |
| #define AFBCDM_INP_IQUANT_LUT_2 0x5454 |
| #define AFBCDM_INP_IQUANT_LUT_3 0x5455 |
| #define AFBCDM_INP_IQUANT_LUT_4 0x5456 |
| #define AFBCDM_INP_ROT_CTRL 0x5460 |
| #define AFBCDM_INP_ROT_SCOPE 0x5461 |
| #define AFBCDM_INP_RPLC_CTRL 0x5462 |
| #define AFBCDM_INP_RPLC_PICEN 0x5463 |
| #define AFBCDM_INP_RPLC_DEFCOL 0x5464 |
| #define AFBCDM_INP_RPLC_SCPXN_ADDR 0x5465 |
| #define AFBCDM_INP_RPLC_SCPXN_DATA 0x5466 |
| #define AFBCDM_INP_ROT_RO_STAT 0x5467 |
| #define AFBCDM_INP_FGRAIN_CTRL 0x5470 |
| #define AFBCDM_INP_FGRAIN_WIN_H 0x5471 |
| #define AFBCDM_INP_FGRAIN_WIN_V 0x5472 |
| #define AFBCDM_INP_FGRAIN_SW_Y_RANNGE 0x5473 |
| #define AFBCDM_INP_FGRAIN_SW_C_RANNGE 0x5474 |
| #define AFBCDM_INP_FGRAIN_GCLK_CTRL_0 0x5475 |
| #define AFBCDM_INP_FGRAIN_GCLK_CTRL_1 0x5476 |
| #define AFBCDM_INP_FGRAIN_GCLK_CTRL_2 0x5477 |
| #define AFBCDM_INP_FGRAIN_PARAM_ADDR 0x5478 |
| #define AFBCDM_INP_FGRAIN_PARAM_DATA 0x5479 |
| |
| //for t7: |
| #define AFBCDM_CHAN2_CTRL0 0x54b8 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| #define AFBCDM_CHAN2_ENABLE 0x54c0 //0x80 |
| #define AFBCDM_CHAN2_MODE 0x54c1 |
| #define AFBCDM_CHAN2_SIZE_IN 0x54c2 |
| #define AFBCDM_CHAN2_DEC_DEF_COLOR 0x54c3 |
| #define AFBCDM_CHAN2_CONV_CTRL 0x54c4 |
| #define AFBCDM_CHAN2_LBUF_DEPTH 0x54c5 |
| #define AFBCDM_CHAN2_HEAD_BADDR 0x54c6 |
| #define AFBCDM_CHAN2_BODY_BADDR 0x54c7 |
| #define AFBCDM_CHAN2_SIZE_OUT 0x54c8 |
| #define AFBCDM_CHAN2_OUT_YSCOPE 0x54c9 |
| #define AFBCDM_CHAN2_STAT 0x54ca |
| #define AFBCDM_CHAN2_VD_CFMT_CTRL 0x54cb |
| #define AFBCDM_CHAN2_VD_CFMT_W 0x54cc |
| #define AFBCDM_CHAN2_MIF_HOR_SCOPE 0x54cd |
| #define AFBCDM_CHAN2_MIF_VER_SCOPE 0x54ce |
| #define AFBCDM_CHAN2_PIXEL_HOR_SCOPE 0x54cf |
| #define AFBCDM_CHAN2_PIXEL_VER_SCOPE 0x54d0 |
| #define AFBCDM_CHAN2_VD_CFMT_H 0x54d1 |
| #define AFBCDM_CHAN2_IQUANT_ENABLE 0x54d2 |
| #define AFBCDM_CHAN2_IQUANT_LUT_1 0x54d3 |
| #define AFBCDM_CHAN2_IQUANT_LUT_2 0x54d4 |
| #define AFBCDM_CHAN2_IQUANT_LUT_3 0x54d5 |
| #define AFBCDM_CHAN2_IQUANT_LUT_4 0x54d6 |
| #define AFBCDM_CHAN2_ROT_CTRL 0x54e0 |
| #define AFBCDM_CHAN2_ROT_SCOPE 0x54e1 |
| #define AFBCDM_CHAN2_RPLC_CTRL 0x54e2 |
| #define AFBCDM_CHAN2_RPLC_PICEN 0x54e3 |
| #define AFBCDM_CHAN2_RPLC_DEFCOL 0x54e4 |
| #define AFBCDM_CHAN2_RPLC_SCPXN_ADDR 0x54e5 |
| #define AFBCDM_CHAN2_RPLC_SCPXN_DATA 0x54e6 |
| #define AFBCDM_CHAN2_ROT_RO_STAT 0x54e7 |
| #define AFBCDM_CHAN2_FGRAIN_CTRL 0x54f0 |
| #define AFBCDM_CHAN2_FGRAIN_WIN_H 0x54f1 |
| #define AFBCDM_CHAN2_FGRAIN_WIN_V 0x54f2 |
| #define AFBCDM_CHAN2_FGRAIN_SW_Y_RANNGE 0x54f3 |
| #define AFBCDM_CHAN2_FGRAIN_SW_C_RANNGE 0x54f4 |
| #define AFBCDM_CHAN2_FGRAIN_GCLK_CTRL_0 0x54f5 |
| #define AFBCDM_CHAN2_FGRAIN_GCLK_CTRL_1 0x54f6 |
| #define AFBCDM_CHAN2_FGRAIN_GCLK_CTRL_2 0x54f7 |
| #define AFBCDM_CHAN2_FGRAIN_PARAM_ADDR 0x54f8 |
| #define AFBCDM_CHAN2_FGRAIN_PARAM_DATA 0x54f9 |
| |
| //for t7: |
| #define AFBCDM_MEM_CTRL0 0x5538 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| #define AFBCDM_MEM_ENABLE 0x5540 /*0x100*/ |
| #define AFBCDM_MEM_MODE 0x5541 |
| #define AFBCDM_MEM_SIZE_IN 0x5542 |
| #define AFBCDM_MEM_DEC_DEF_COLOR 0x5543 |
| #define AFBCDM_MEM_CONV_CTRL 0x5544 |
| #define AFBCDM_MEM_LBUF_DEPTH 0x5545 |
| #define AFBCDM_MEM_HEAD_BADDR 0x5546 |
| #define AFBCDM_MEM_BODY_BADDR 0x5547 |
| #define AFBCDM_MEM_SIZE_OUT 0x5548 |
| #define AFBCDM_MEM_OUT_YSCOPE 0x5549 |
| #define AFBCDM_MEM_STAT 0x554a |
| #define AFBCDM_MEM_VD_CFMT_CTRL 0x554b |
| #define AFBCDM_MEM_VD_CFMT_W 0x554c |
| #define AFBCDM_MEM_MIF_HOR_SCOPE 0x554d |
| #define AFBCDM_MEM_MIF_VER_SCOPE 0x554e |
| #define AFBCDM_MEM_PIXEL_HOR_SCOPE 0x554f |
| #define AFBCDM_MEM_PIXEL_VER_SCOPE 0x5550 |
| #define AFBCDM_MEM_VD_CFMT_H 0x5551 |
| #define AFBCDM_MEM_IQUANT_ENABLE 0x5552 |
| #define AFBCDM_MEM_IQUANT_LUT_1 0x5553 |
| #define AFBCDM_MEM_IQUANT_LUT_2 0x5554 |
| #define AFBCDM_MEM_IQUANT_LUT_3 0x5555 |
| #define AFBCDM_MEM_IQUANT_LUT_4 0x5556 |
| #define AFBCDM_MEM_ROT_CTRL 0x5560 |
| #define AFBCDM_MEM_ROT_SCOPE 0x5561 |
| #define AFBCDM_MEM_RPLC_CTRL 0x5562 |
| #define AFBCDM_MEM_RPLC_PICEN 0x5563 |
| #define AFBCDM_MEM_RPLC_DEFCOL 0x5564 |
| #define AFBCDM_MEM_RPLC_SCPXN_ADDR 0x5565 |
| #define AFBCDM_MEM_RPLC_SCPXN_DATA 0x5566 |
| #define AFBCDM_MEM_ROT_RO_STAT 0x5567 |
| #define AFBCDM_MEM_FGRAIN_CTRL 0x5570 |
| #define AFBCDM_MEM_FGRAIN_WIN_H 0x5571 |
| #define AFBCDM_MEM_FGRAIN_WIN_V 0x5572 |
| #define AFBCDM_MEM_FGRAIN_SW_Y_RANNGE 0x5573 |
| #define AFBCDM_MEM_FGRAIN_SW_C_RANNGE 0x5574 |
| #define AFBCDM_MEM_FGRAIN_GCLK_CTRL_0 0x5575 |
| #define AFBCDM_MEM_FGRAIN_GCLK_CTRL_1 0x5576 |
| #define AFBCDM_MEM_FGRAIN_GCLK_CTRL_2 0x5577 |
| #define AFBCDM_MEM_FGRAIN_PARAM_ADDR 0x5578 |
| #define AFBCDM_MEM_FGRAIN_PARAM_DATA 0x5579 |
| |
| //for t7: |
| #define AFBCDM_IF1_CTRL0 0x55b8 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| #define AFBCDM_IF1_ENABLE 0x55c0 /*0x180*/ |
| #define AFBCDM_IF1_MODE 0x55c1 |
| #define AFBCDM_IF1_SIZE_IN 0x55c2 |
| #define AFBCDM_IF1_DEC_DEF_COLOR 0x55c3 |
| #define AFBCDM_IF1_CONV_CTRL 0x55c4 |
| #define AFBCDM_IF1_LBUF_DEPTH 0x55c5 |
| #define AFBCDM_IF1_HEAD_BADDR 0x55c6 |
| #define AFBCDM_IF1_BODY_BADDR 0x55c7 |
| #define AFBCDM_IF1_SIZE_OUT 0x55c8 |
| #define AFBCDM_IF1_OUT_YSCOPE 0x55c9 |
| #define AFBCDM_IF1_STAT 0x55ca |
| #define AFBCDM_IF1_VD_CFMT_CTRL 0x55cb |
| #define AFBCDM_IF1_VD_CFMT_W 0x55cc |
| #define AFBCDM_IF1_MIF_HOR_SCOPE 0x55cd |
| #define AFBCDM_IF1_MIF_VER_SCOPE 0x55ce |
| #define AFBCDM_IF1_PIXEL_HOR_SCOPE 0x55cf |
| #define AFBCDM_IF1_PIXEL_VER_SCOPE 0x55d0 |
| #define AFBCDM_IF1_VD_CFMT_H 0x55d1 |
| #define AFBCDM_IF1_IQUANT_ENABLE 0x55d2 |
| #define AFBCDM_IF1_IQUANT_LUT_1 0x55d3 |
| #define AFBCDM_IF1_IQUANT_LUT_2 0x55d4 |
| #define AFBCDM_IF1_IQUANT_LUT_3 0x55d5 |
| #define AFBCDM_IF1_IQUANT_LUT_4 0x55d6 |
| #define AFBCDM_IF1_ROT_CTRL 0x55e0 |
| #define AFBCDM_IF1_ROT_SCOPE 0x55e1 |
| #define AFBCDM_IF1_RPLC_CTRL 0x55e2 |
| #define AFBCDM_IF1_RPLC_PICEN 0x55e3 |
| #define AFBCDM_IF1_RPLC_DEFCOL 0x55e4 |
| #define AFBCDM_IF1_RPLC_SCPXN_ADDR 0x55e5 |
| #define AFBCDM_IF1_RPLC_SCPXN_DATA 0x55e6 |
| #define AFBCDM_IF1_ROT_RO_STAT 0x55e7 |
| #define AFBCDM_IF1_FGRAIN_CTRL 0x55f0 |
| #define AFBCDM_IF1_FGRAIN_WIN_H 0x55f1 |
| #define AFBCDM_IF1_FGRAIN_WIN_V 0x55f2 |
| #define AFBCDM_IF1_FGRAIN_SW_Y_RANNGE 0x55f3 |
| #define AFBCDM_IF1_FGRAIN_SW_C_RANNGE 0x55f4 |
| #define AFBCDM_IF1_FGRAIN_GCLK_CTRL_0 0x55f5 |
| #define AFBCDM_IF1_FGRAIN_GCLK_CTRL_1 0x55f6 |
| #define AFBCDM_IF1_FGRAIN_GCLK_CTRL_2 0x55f7 |
| #define AFBCDM_IF1_FGRAIN_PARAM_ADDR 0x55f8 |
| #define AFBCDM_IF1_FGRAIN_PARAM_DATA 0x55f9 |
| |
| //for t7: |
| #define AFBCDM_IF0_CTRL0 0x5638 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| #define AFBCDM_IF0_ENABLE 0x5640 /*0x200*/ |
| #define AFBCDM_IF0_MODE 0x5641 |
| #define AFBCDM_IF0_SIZE_IN 0x5642 |
| #define AFBCDM_IF0_DEC_DEF_COLOR 0x5643 |
| #define AFBCDM_IF0_CONV_CTRL 0x5644 |
| #define AFBCDM_IF0_LBUF_DEPTH 0x5645 |
| #define AFBCDM_IF0_HEAD_BADDR 0x5646 |
| #define AFBCDM_IF0_BODY_BADDR 0x5647 |
| #define AFBCDM_IF0_SIZE_OUT 0x5648 |
| #define AFBCDM_IF0_OUT_YSCOPE 0x5649 |
| #define AFBCDM_IF0_STAT 0x564a |
| #define AFBCDM_IF0_VD_CFMT_CTRL 0x564b |
| #define AFBCDM_IF0_VD_CFMT_W 0x564c |
| #define AFBCDM_IF0_MIF_HOR_SCOPE 0x564d |
| #define AFBCDM_IF0_MIF_VER_SCOPE 0x564e |
| #define AFBCDM_IF0_PIXEL_HOR_SCOPE 0x564f |
| #define AFBCDM_IF0_PIXEL_VER_SCOPE 0x5650 |
| #define AFBCDM_IF0_VD_CFMT_H 0x5651 |
| #define AFBCDM_IF0_IQUANT_ENABLE 0x5652 |
| #define AFBCDM_IF0_IQUANT_LUT_1 0x5653 |
| #define AFBCDM_IF0_IQUANT_LUT_2 0x5654 |
| #define AFBCDM_IF0_IQUANT_LUT_3 0x5655 |
| #define AFBCDM_IF0_IQUANT_LUT_4 0x5656 |
| #define AFBCDM_IF0_ROT_CTRL 0x5660 |
| #define AFBCDM_IF0_ROT_SCOPE 0x5661 |
| #define AFBCDM_IF0_RPLC_CTRL 0x5662 |
| #define AFBCDM_IF0_RPLC_PICEN 0x5663 |
| #define AFBCDM_IF0_RPLC_DEFCOL 0x5664 |
| #define AFBCDM_IF0_RPLC_SCPXN_ADDR 0x5665 |
| #define AFBCDM_IF0_RPLC_SCPXN_DATA 0x5666 |
| #define AFBCDM_IF0_ROT_RO_STAT 0x5667 |
| #define AFBCDM_IF0_FGRAIN_CTRL 0x5670 |
| #define AFBCDM_IF0_FGRAIN_WIN_H 0x5671 |
| #define AFBCDM_IF0_FGRAIN_WIN_V 0x5672 |
| #define AFBCDM_IF0_FGRAIN_SW_Y_RANNGE 0x5673 |
| #define AFBCDM_IF0_FGRAIN_SW_C_RANNGE 0x5674 |
| #define AFBCDM_IF0_FGRAIN_GCLK_CTRL_0 0x5675 |
| #define AFBCDM_IF0_FGRAIN_GCLK_CTRL_1 0x5676 |
| #define AFBCDM_IF0_FGRAIN_GCLK_CTRL_2 0x5677 |
| #define AFBCDM_IF0_FGRAIN_PARAM_ADDR 0x5678 |
| #define AFBCDM_IF0_FGRAIN_PARAM_DATA 0x5679 |
| |
| //for t7: |
| #define AFBCDM_IF2_CTRL0 0x56b8 |
| //Bit 31:22 reserved // |
| //Bit 21:16 reg_afbc_gclk_ctrl // unsigned, RW, default = 0 |
| //Bit 15 reg_frm_start_sel // unsigned, RW, default = 0 |
| //Bit 14 reg_use_4kram // unsigned, RW, default = 0 |
| //Bit 13 reg_afbc_vd_sel |
| // unsigned, RW, default = 0, 0:nor_rdmif 1:afbc_dec |
| //Bit 12 reg_rdmif_lbuf_bypas |
| // unsigned, RW, default = 1, 1:rdmif lbuf bypass |
| //Bit 11:0 reg_rdmif_lbuf_depth // unsigned, RW, default = 512 |
| |
| #define AFBCDM_IF2_ENABLE 0x56c0 |
| #define AFBCDM_IF2_MODE 0x56c1 |
| #define AFBCDM_IF2_SIZE_IN 0x56c2 |
| #define AFBCDM_IF2_DEC_DEF_COLOR 0x56c3 |
| #define AFBCDM_IF2_CONV_CTRL 0x56c4 |
| #define AFBCDM_IF2_LBUF_DEPTH 0x56c5 |
| #define AFBCDM_IF2_HEAD_BADDR 0x56c6 |
| #define AFBCDM_IF2_BODY_BADDR 0x56c7 |
| #define AFBCDM_IF2_SIZE_OUT 0x56c8 |
| #define AFBCDM_IF2_OUT_YSCOPE 0x56c9 |
| #define AFBCDM_IF2_STAT 0x56ca |
| #define AFBCDM_IF2_VD_CFMT_CTRL 0x56cb |
| #define AFBCDM_IF2_VD_CFMT_W 0x56cc |
| #define AFBCDM_IF2_MIF_HOR_SCOPE 0x56cd |
| #define AFBCDM_IF2_MIF_VER_SCOPE 0x56ce |
| #define AFBCDM_IF2_PIXEL_HOR_SCOPE 0x56cf |
| #define AFBCDM_IF2_PIXEL_VER_SCOPE 0x56d0 |
| #define AFBCDM_IF2_VD_CFMT_H 0x56d1 |
| #define AFBCDM_IF2_IQUANT_ENABLE 0x56d2 |
| #define AFBCDM_IF2_IQUANT_LUT_1 0x56d3 |
| #define AFBCDM_IF2_IQUANT_LUT_2 0x56d4 |
| #define AFBCDM_IF2_IQUANT_LUT_3 0x56d5 |
| #define AFBCDM_IF2_IQUANT_LUT_4 0x56d6 |
| #define AFBCDM_IF2_ROT_CTRL 0x56e0 |
| #define AFBCDM_IF2_ROT_SCOPE 0x56e1 |
| #define AFBCDM_IF2_RPLC_CTRL 0x56e2 |
| #define AFBCDM_IF2_RPLC_PICEN 0x56e3 |
| #define AFBCDM_IF2_RPLC_DEFCOL 0x56e4 |
| #define AFBCDM_IF2_RPLC_SCPXN_ADDR 0x56e5 |
| #define AFBCDM_IF2_RPLC_SCPXN_DATA 0x56e6 |
| #define AFBCDM_IF2_ROT_RO_STAT 0x56e7 |
| #define AFBCDM_IF2_FGRAIN_CTRL 0x56f0 |
| #define AFBCDM_IF2_FGRAIN_WIN_H 0x56f1 |
| #define AFBCDM_IF2_FGRAIN_WIN_V 0x56f2 |
| #define AFBCDM_IF2_FGRAIN_SW_Y_RANNGE 0x56f3 |
| #define AFBCDM_IF2_FGRAIN_SW_C_RANNGE 0x56f4 |
| #define AFBCDM_IF2_FGRAIN_GCLK_CTRL_0 0x56f5 |
| #define AFBCDM_IF2_FGRAIN_GCLK_CTRL_1 0x56f6 |
| #define AFBCDM_IF2_FGRAIN_GCLK_CTRL_2 0x56f7 |
| #define AFBCDM_IF2_FGRAIN_PARAM_ADDR 0x56f8 |
| #define AFBCDM_IF2_FGRAIN_PARAM_DATA 0x56f9 |
| /* afbce */ |
| #ifdef DEF_AFBCE |
| #define DI_AFBCE_ENABLE 0x2060 |
| //Bit 31:20, gclk_ctrl unsigned , default = 0, |
| //Bit 19:16, di_afbce_sync_sel unsigned , default = 0, |
| //Bit 15:14, reserved |
| //Bit 13, enc_rst_mode unsigned , default = 0, |
| //Bit 12, enc_en_mode unsigned , default = 0, |
| //Bit 11:9, reserved |
| //Bit 8, enc_enable unsigned , default = 0, |
| //Bit 7:1, reserved |
| //Bit 0, reserved enc_frm_start pulse use this bit don't use |
| #define DI_AFBCE_MODE 0x2061 |
| //Bit 31:29, soft_rst unsigned, default = 0 ,the use as go_field |
| //Bit 28, reserved |
| //Bit 27:26, rev_mode unsigned, default = 0 , reverse mode |
| //Bit 25:24, mif_urgent |
| //unsigned, default = 3 , info mif and data mif urgent |
| //Bit 23, reserved |
| //Bit 22:16, hold_line_num |
| //unsigned, default = 4, 0: burst1 1:burst2 2:burst4 |
| //Bit 15:14, burst_mode |
| //unsigned, default = 1, 0: burst1 1:burst2 2:burst4 |
| //Bit 13:1, reserved |
| //Bit 0, reg_fmt444_comb |
| //unsigned, default = 0, 0: 444 8bit uncomb |
| #define DI_AFBCE_SIZE_IN 0x2062 |
| //Bit 31:29, reserved |
| //Bit 28:16 hsize_in |
| //unsigned, default = 1920 , pic horz size in unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, vsize_in |
| //unsigned, default = 1080 , pic vert size in unit: pixel |
| #define DI_AFBCE_BLK_SIZE_IN 0x2063 |
| //Bit 31:29, reserved |
| //Bit 28:16 hblk_size |
| //unsigned, default = 60 , pic horz size in unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, vblk_size |
| //unsigned, default = 270, pic vert size in unit: pixel |
| #define DI_AFBCE_HEAD_BADDR 0x2064 |
| //Bit 31:0, head_baddr unsigned, default = 32'h00; |
| #define DI_AFBCE_MIF_SIZE 0x2065 |
| //Bit 31:30, reserved |
| //Bit 29:28, ddr_blk_size unsigned, default = 1; |
| //Bit 27, reserved |
| //Bit 26:24, cmd_blk_size unsigned, default = 3; |
| //Bit 23:21, reserved |
| //Bit 20:16, uncmp_size unsigned, default = 20; |
| //Bit 15:0, mmu_page_size unsigned, default = 4096; |
| #define DI_AFBCE_PIXEL_IN_HOR_SCOPE 0x2066 |
| //Bit 31:29, reserved |
| //Bit 28:16, enc_win_end_h unsigned, default = 1919 ; // |
| //Bit 15:13, reserved |
| //Bit 12:0, enc_win_bgn_h unsigned, default = 0 ; // |
| #define DI_AFBCE_PIXEL_IN_VER_SCOPE 0x2067 |
| //Bit 31:29, reserved |
| //Bit 28:16, enc_win_end_v unsigned, default = 1079 ; // |
| //Bit 15:13, reserved |
| //Bit 12:0, enc_win_bgn_v unsigned, default = 0 ; // |
| #define DI_AFBCE_CONV_CTRL 0x2068 |
| //Bit 31:29, reserved |
| //Bit 28:16, fmt_ybuf_depth unsigned, default = 2048 |
| //Bit 15:12, reserved |
| //Bit 11: 0, lbuf_depth |
| //unsigned, default = 256, unit=16 pixel need to set = 2^n |
| #define DI_AFBCE_MIF_HOR_SCOPE 0x2069 |
| //Bit 31:26, reserved |
| //Bit 25:16, blk_end_h unsigned, default = 0 ; // |
| //Bit 15:10, reserved |
| //Bit 9:0, blk_bgn_h unsigned, default = 59 ; // |
| #define DI_AFBCE_MIF_VER_SCOPE 0x206a |
| //Bit 31:28, reserved |
| //Bit 27:16, blk_end_v unsigned, default = 0 ; // |
| //Bit 15:12, reserved |
| //Bit 11:0, blk_bgn_v unsigned, default = 269 ; // |
| #define DI_AFBCE_STAT1 0x206b |
| //Bit 31, ro_frm_end_pulse1 unsigned, RO,default = 0 ;frame end status |
| //Bit 30:0, ro_dbg_top_info1 unsigned, RO,default = 0 ; |
| #define DI_AFBCE_STAT2 0x206c |
| //Bit 31, reserved |
| //Bit 30:0, ro_dbg_top_info2 unsigned, RO,default = 0 ; |
| #define DI_AFBCE_FORMAT 0x206d |
| //Bit 31:12 reserved |
| //Bit 11:10 reserved |
| |
| //Bit 9: 8 reg_format_mode |
| // unsigned , RW, default = 2 data format;0 :YUV444,1:YUV422,2:YUV420,3:RGB |
| //Bit 7: 4 reg_compbits_c |
| // unsigned , RW, default = 10 chroma bitwidth |
| //Bit 3: 0 reg_compbits_y |
| // unsigned , RW, default = 10 luma bitwidth |
| #define DI_AFBCE_MODE_EN 0x206e |
| //Bit 31:28 reserved |
| //Bit 27:26 reserved |
| //Bit 25 reg_adpt_interleave_ymode |
| // unsigned , RW, default = 0 force 0 to disable it: no HW implementation |
| //Bit 24 reg_adpt_interleave_cmode |
| // unsigned , RW, default = 0 force 0 to disable it: not HW implementation |
| //Bit 23 reg_adpt_yinterleave_luma_ride |
| // unsigned , RW, default = 1 vertical interleave piece luma reorder ride; |
| // 0: no reorder ride; 1: w/4 as ride |
| //Bit 22 reg_adpt_yinterleave_chrm_ride |
| // unsigned , RW, default = 1 vertical interleave piece chroma reorder ride; |
| //0: no reorder ride; 1: w/2 as ride |
| //Bit 21 reg_adpt_xinterleave_luma_ride |
| // unsigned , RW, default = 1 vertical interleave piece luma reorder ride; |
| //0: no reorder ride; 1: w/4 as ride |
| //Bit 20 reg_adpt_xinterleave_chrm_ride |
| // unsigned , RW, default = 1 vertical interleave piece chroma reorder ride; |
| //0: no reorder ride; 1: w/2 as ride |
| //Bit 19 reserved |
| //Bit 18 reg_disable_order_mode_i_6 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 17 reg_disable_order_mode_i_5 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 16 reg_disable_order_mode_i_4 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 15 reg_disable_order_mode_i_3 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 14 reg_disable_order_mode_i_2 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 13 reg_disable_order_mode_i_1 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 12 reg_disable_order_mode_i_0 |
| // unsigned , RW, default = 0 disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 11 reserved |
| //Bit 10 reg_minval_yenc_en |
| // unsigned , RW, default = 0 |
| //force disable, final decision to remove this ws 1% performance loss |
| //Bit 9 reg_16x4block_enable |
| // unsigned , RW, default = 0 block as mission, but permit 16x4 block |
| //Bit 8 reg_uncompress_split_mode |
| // unsigned , RW, default = 0 0: no split; 1: split |
| //Bit 7: 6 reserved |
| //Bit 5 reg_input_padding_uv128 |
| // unsigned , RW, default = 0 |
| //input picture 32x4 block gap mode: 0: pad uv=0; 1: pad uv=128 |
| //Bit 4 reg_dwds_padding_uv128 |
| // unsigned , RW, default = 0 |
| //downsampled image for double write 32x gap mode: |
| // 0: pad uv=0; 1: pad uv=128 |
| //Bit 3: 1 reg_force_order_mode_value |
| // unsigned , RW, default = 0 force order mode 0~7 |
| //Bit 0 reg_force_order_mode_en |
| // unsigned , RW, default = 0 |
| //force order mode enable: |
| //0: no force; 1: forced to force_value |
| #define DI_AFBCE_DWSCALAR 0x206f |
| //Bit 31: 8 reserved |
| //Bit 7: 6 reg_dwscalar_w0 |
| // unsigned , RW, default = 3 horizontal 1st step scalar mode: |
| //0: 1:1 no scalar; |
| //1: 2:1 data drop (0,2,4, 6) pixel kept; |
| //2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| //Bit 5: 4 reg_dwscalar_w1 |
| // unsigned , RW, default = 0 horizontal 2nd step scalar mode: |
| //0: 1:1 no scalar; |
| //1: 2:1 data drop (0,2,4, 6) pixel kept; |
| //2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| //Bit 3: 2 reg_dwscalar_h0 |
| // unsigned , RW, default = 2 vertical 1st step scalar mode: |
| //0: 1:1 no scalar; |
| //1: 2:1 data drop (0,2,4, 6) pixel kept; |
| //2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| //Bit 1: 0 reg_dwscalar_h1 |
| // unsigned , |
| //RW, default = 3 vertical 2nd step scalar mode: |
| //0: 1:1 no scalar; |
| //1: 2:1 data drop (0,2,4, 6) pixel kept; |
| //2: 2:1 data drop (1, 3, 5,7..) //pixels kept; 3: avg |
| #define DI_AFBCE_DEFCOLOR_1 0x2070 |
| //Bit 31:24 reserved |
| //Bit 23:12 reg_enc_defalutcolor_3 |
| // unsigned , |
| //RW, default = 4095 Picture wise default color value in [YCbCr] |
| //Bit 11: 0 reg_enc_defalutcolor_0 |
| // unsigned , |
| //RW, default = 4095 Picture wise default color value in [YCbCr] |
| #define DI_AFBCE_DEFCOLOR_2 0x2071 |
| //Bit 31:24 reserved |
| //Bit 23:12 reg_enc_defalutcolor_2 |
| // unsigned , |
| //RW, default = 2048 wise default color value in [Y Cb Cr] |
| //Bit 11: 0 reg_enc_defalutcolor_1 |
| // unsigned , |
| //RW, default = 2048 wise default color value in [Y Cb Cr] |
| #define DI_AFBCE_QUANT_ENABLE 0x2072 |
| //Bit 31:12 reserved |
| //Bit 11 reg_quant_expand_en_1 |
| // unsigned , //RW, default = 0 enable for quantization value expansion |
| //Bit 10 reg_quant_expand_en_0 |
| // unsigned , //RW, default = 0 enable for quantization value expansion |
| //Bit 9: 8 reg_bcleav_ofst |
| // signed , RW, default = 0 bcleave ofset to get lower range, |
| // especially under lossy, for v1/v2, x=0 is equivalent, default = -1; |
| //Bit 7: 5 reserved |
| //Bit 4 reg_quant_enable_1 |
| // unsigned , RW, default = 0 enable for quant to get some lossy |
| //Bit 3: 1 reserved |
| //Bit 0 reg_quant_enable_0 |
| // unsigned , RW, default = 0 enable for quant to get some lossy |
| #define DI_AFBCE_IQUANT_LUT_1 0x2073 |
| //Bit 31 reserved |
| //Bit 30:28 reg_iquant_yclut_0_11 |
| // unsigned , RW, default = 0 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 27 reserved |
| //Bit 26:24 reg_iquant_yclut_0_10 |
| // unsigned , RW, default = 1 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 23 reserved |
| //Bit 22:20 reg_iquant_yclut_0_9 |
| // unsigned , RW, default = 2 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 19 reserved |
| //Bit 18:16 reg_iquant_yclut_0_8 |
| // unsigned , RW, default = 3 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_0_7 |
| // unsigned , RW, default = 4 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_0_6 |
| // unsigned , RW, default = 5 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_0_5 |
| // unsigned , RW, default = 5 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_0_4 |
| // unsigned , RW, default = 4 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE_IQUANT_LUT_2 0x2074 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_0_3 |
| // unsigned , RW, default = 3 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_0_2 |
| // unsigned , RW, default = 2 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_0_1 |
| // unsigned , RW, default = 1 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_0_0 |
| // unsigned , RW, default = 0 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE_IQUANT_LUT_3 0x2075 |
| //Bit 31 reserved |
| //Bit 30:28 reg_iquant_yclut_1_11 |
| // unsigned , RW, default = 0 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 27 reserved |
| //Bit 26:24 reg_iquant_yclut_1_10 |
| // unsigned , RW, default = 1 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 23 reserved |
| //Bit 22:20 reg_iquant_yclut_1_9 |
| // unsigned , RW, default = 2 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 19 reserved |
| //Bit 18:16 reg_iquant_yclut_1_8 |
| // unsigned , RW, default = 3 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_1_7 |
| // unsigned , RW, default = 4 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_1_6 |
| // unsigned , RW, default = 5 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_1_5 |
| // unsigned , RW, default = 5 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_1_4 |
| // unsigned , RW, default = 4 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE_IQUANT_LUT_4 0x2076 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_1_3 |
| // unsigned , RW, default = 3 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_1_2 |
| // unsigned , RW, default = 2 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_1_1 |
| // unsigned , RW, default = 1 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_1_0 |
| // unsigned , RW, default = 0 quantization lut for mintree leavs, |
| //iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE_RQUANT_LUT_1 0x2077 |
| //Bit 31 reserved |
| //Bit 30:28 reg_rquant_yclut_0_11 |
| // unsigned , RW, default = 5 quantization lut for bctree leavs, |
| //quant=2^lut(bc_leav_r+1), |
| //can be calculated from iquant_yclut(fw_setting) |
| //Bit 27 reserved |
| //Bit 26:24 reg_rquant_yclut_0_10 |
| // unsigned , RW, default = 5 |
| //Bit 23 reserved |
| //Bit 22:20 reg_rquant_yclut_0_9 |
| // unsigned , RW, default = 4 |
| //Bit 19 reserved |
| //Bit 18:16 reg_rquant_yclut_0_8 |
| // unsigned , RW, default = 4 |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_0_7 |
| // unsigned , RW, default = 3 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_0_6 |
| // unsigned , RW, default = 3 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_0_5 |
| // unsigned , RW, default = 2 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_0_4 |
| // unsigned , RW, default = 2 |
| #define DI_AFBCE_RQUANT_LUT_2 0x2078 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_0_3 |
| // unsigned , RW, default = 1 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_0_2 |
| // unsigned , RW, default = 1 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_0_1 |
| // unsigned , RW, default = 0 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_0_0 |
| // unsigned , RW, default = 0 |
| #define DI_AFBCE_RQUANT_LUT_3 0x2079 |
| //Bit 31 reserved |
| //Bit 30:28 reg_rquant_yclut_1_11 |
| // unsigned , RW, default = 5 |
| //quantization lut for bctree leavs, quant=2^lut(bc_leav_r+1), |
| //can be calculated from iquant_yclut(fw_setting) |
| //Bit 27 reserved |
| //Bit 26:24 reg_rquant_yclut_1_10 |
| // unsigned , RW, default = 5 |
| //Bit 23 reserved |
| //Bit 22:20 reg_rquant_yclut_1_9 |
| // unsigned , RW, default = 4 |
| //Bit 19 reserved |
| //Bit 18:16 reg_rquant_yclut_1_8 |
| // unsigned , RW, default = 4 |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_1_7 |
| // unsigned , RW, default = 3 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_1_6 |
| // unsigned , RW, default = 3 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_1_5 |
| // unsigned , RW, default = 2 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_1_4 |
| // unsigned , RW, default = 2 |
| #define DI_AFBCE_RQUANT_LUT_4 0x207a |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_1_3 |
| // unsigned , RW, default = 1 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_1_2 |
| // unsigned , RW, default = 1 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_1_1 |
| // unsigned , RW, default = 0 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_1_0 |
| // unsigned , RW, default = 0 |
| #define DI_AFBCE_YUV_FORMAT_CONV_MODE 0x207b |
| //Bit 31: 8 reserved |
| //Bit 7 reserved |
| //Bit 6: 4 reg_444to422_mode |
| // unsigned , RW, default = 0 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_422to420_mode |
| // unsigned , RW, default = 0 |
| #define DI_AFBCE_DUMMY_DATA 0x207c |
| //Bit 31:30 reserved |
| //Bit 29: 0 reg_dummy_data |
| // unsigned , default = 0 ; |
| #define DI_AFBCE_CLR_FLAG 0x207d |
| //Bit 31:0 reg_di_afbce_clr_flag |
| // unsigned, default = 0 ; |
| #define DI_AFBCE_STA_FLAGT 0x207e |
| //Bit 31:0 ro_di_afbce__sta_flag |
| // unsigned, RO,default = 0 ; |
| #define DI_AFBCE_MMU_NUM 0x207f |
| //Bit 31:16 reserved |
| //Bit 15: 0 ro_frm_mmu_num |
| // unsigned, RO,default = 0 ; |
| #define DI_AFBCE_MMU_RMIF_CTRL1 0x2080 |
| //Bit 31:26 reserved |
| //Bit 25:24 reg_sync_sel |
| // unsigned , default = 0, axi canvas id sync with frm rst |
| //Bit 23:16 reg_canvas_id |
| // unsigned , default = 0, axi canvas id num |
| //Bit 15 reserved |
| //Bit 14:12 reg_cmd_intr_len |
| // unsigned , default = 1, |
| //interrupt send cmd when how many series axi cmd, |
| // 0=12 1=16 2=24 3=32 4=40 5=48 6=56 7=64 |
| //Bit 11:10 reg_cmd_req_size |
| // unsigned , default = 1, |
| // how many room fifo have, then axi send series req, 0=16 1=32 2=24 3=64 |
| //Bit 9:8 reg_burst_len |
| // unsigned , default = 2, burst type: 0-single 1-bst2 2-bst4 |
| //Bit 7 reg_swap_64bit |
| // unsigned , default = 0, 64bits of 128bit swap enable |
| //Bit 6 reg_little_endian |
| // unsigned , default = 0, big endian enable |
| //Bit 5 reg_y_rev |
| // unsigned , default = 0, vertical reverse enable |
| //Bit 4 reg_x_rev |
| // unsigned , default = 0, horizontal reverse enable |
| //Bit 3 reserved |
| //Bit 2:0 reg_pack_mode |
| // unsigned , default = 3, 0:4bit 1:8bit 2:16bit 3:32bit 4:64bit 5:128bit |
| #define DI_AFBCE_MMU_RMIF_CTRL2 0x2081 |
| //Bit 31:30 reg_sw_rst |
| // unsigned , default = 0, |
| //Bit 29:24 reserved |
| //Bit 23:18 reg_gclk_ctrl |
| //Bit 17 reserved |
| //Bit 16:0 reg_urgent_ctrl |
| // unsigned , default = 0, urgent control reg : |
| // 16 reg_ugt_init : urgent initial value |
| // 15 reg_ugt_en : urgent enable |
| // 14 reg_ugt_type : 1= wrmif 0=rdmif |
| // 7:4 reg_ugt_top_th: urgent top threshold |
| // 3:0 reg_ugt_bot_th: urgent bottom threshold |
| #define DI_AFBCE_MMU_RMIF_CTRL3 0x2082 |
| //Bit 31:17 reserved |
| //Bit 16 reg_acc_mode // unsigned , default = 1, |
| //Bit 15:13 reserved |
| //Bit 12:0 reg_stride // unsigned , default = 4096, |
| #define DI_AFBCE_MMU_RMIF_CTRL4 0x2083 |
| //Bit 31:0 reg_baddr // unsigned , default = 0, |
| #define DI_AFBCE_MMU_RMIF_SCOPE_X 0x2084 |
| //Bit 31:29 reserved |
| //Bit 28:16 reg_x_end |
| // unsigned , default = 4095, the canvas hor end pixel position |
| //Bit 15:13 reserved |
| //Bit 12: 0 reg_x_start |
| // unsigned , default = 0, the canvas hor start pixel position |
| #define DI_AFBCE_MMU_RMIF_SCOPE_Y 0x2085 |
| //Bit 31:29 reserved |
| //Bit 28:16 reg_y_end |
| // unsigned , default = 0, the canvas ver end pixel position |
| //Bit 15:13 reserved |
| //Bit 12: 0 reg_y_start |
| // unsigned , default = 0, the canvas ver start pixel positio |
| #define DI_AFBCE_MMU_RMIF_RO_STAT 0x2086 |
| //Bit 15:0 reg_status // unsigned , |
| |
| #endif |
| #define DI_AFBCE_PIP_CTRL 0x208a |
| //Bit 31:3 reserved |
| //Bit 2 reg_enc_align_en |
| //unsigned , RW,default = 1, |
| //Bit 1 reg_pip_ini_ctrl |
| //unsigned , RW,default = 0, |
| //Bit 0 reg_pip_mode |
| //unsigned , RW,default = 0, |
| #define DI_AFBCE_ROT_CTRL 0x208b |
| //Bit 31:5 reserved |
| //Bit 4 reg_rot_en |
| //unsigned , RW,default = 0, rotation enable |
| //Bit 3:0 reg_vstep |
| //unsigned , RW,default = 8, |
| //rotation vstep ,setting acorrding rotation shrink mode |
| #define DI_AFBCE_DIMM_CTRL 0x208c |
| //Bit 31 reg_dimm_layer_en |
| //unsigned , RW,default = 0,dimm_layer enable signal |
| //Bit 30 reserved |
| //Bit 29:0 reg_dimm_data |
| //unsigned , RW,default = 29'h00080200,dimm_layer data |
| #define DI_AFBCE_BND_DEC_MISC 0x208d |
| //Bit 31:28 reserved |
| //Bit 27:26 bnd_dec_rev_mode |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 25:24 bnd_dec_mif_urgent |
| //unsigned , RW,default = 3 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 23:22 bnd_dec_burst_len |
| //unsigned , RW,default = 2 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 21:20 bnd_dec_ddr_blk_size |
| //unsigned , RW,default = 1 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 19 reserved |
| //Bit 18:16 bnd_dec_cmd_blk_size |
| //unsigned , RW,default = 3 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 15 reserved |
| //Bit 14 bnd_dec_blk_mem_mode |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 13 bnd_dec_addr_link_en |
| //unsigned , RW,default = 1 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 12 bnd_dec_always_body_rden |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 11:0 bnd_dec_mif_lbuf_depth |
| //unsigned , RW,default = 128 |
| //only pip mode use those bits,ususaly don't need configure |
| #define DI_AFBCE_RD_ARB_MISC 0x208e |
| //Bit 31:13 reserved |
| //Bit 12 reg_arb_sw_rst |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 11:10 reserved |
| //Bit 9 reg_arb_arblk_last1 |
| //unsigned , RW,default = 0 |
| // only pip mode use those bits,ususaly don't need configure |
| //Bit 8 reg_arb_arblk_last0 |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 7:4 reg_arb_weight_ch1 |
| //unsigned , RW,default = 4 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 3:0 reg_arb_weight_ch0 |
| //unsigned , RW,default = 10 |
| //only pip mode use those bits,ususaly don't need configure |
| /* afbce */ |
| |
| #define DI_AFBCE1_ENABLE 0x20c0 |
| //Bit 31:20, gclk_ctrl unsigned , default = 0, |
| //Bit 19:16, di_AFBCE1_sync_sel unsigned , default = 0, |
| //Bit 15:14, reserved |
| //Bit 13, enc_rst_mode unsigned , default = 0, |
| //Bit 12, enc_en_mode unsigned , default = 0, |
| //Bit 11:9, reserved |
| //Bit 8, enc_enable unsigned , default = 0, |
| //Bit 7:1, reserved |
| |
| //Bit 0, |
| //reserved enc_frm_start pulse use this bit don't use |
| #define DI_AFBCE1_MODE 0x20c1 |
| //Bit 31:29, soft_rst |
| //unsigned, default = 0 ,the use as go_field |
| //Bit 28, reserved |
| //unsigned, default = 0 , enable signal of crop |
| //Bit 27:26, rev_mode |
| //unsigned, default = 0 , reverse mode |
| //Bit 25:24, mif_urgent |
| //unsigned, default = 3 , info mif and data mif urgent |
| //Bit 23, reserved |
| //Bit 22:16, hold_line_num |
| //unsigned, default = 4, 0: burst1 1:burst2 2:burst4 |
| //Bit 15:14, burst_mode |
| //unsigned, default = 1, 0: burst1 1:burst2 2:burst4 |
| //Bit 13:1, reserved |
| //Bit 0, reg_fmt444_comb |
| //unsigned, default = 0, 0: 444 8bit uncomb |
| #define DI_AFBCE1_SIZE_IN 0x20c2 |
| //Bit 31:29, reserved |
| //Bit 28:16 hsize_in |
| //unsigned, default = 1920 , pic horz size in unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, vsize_in |
| //unsigned, default = 1080 , pic vert size in unit: pixel |
| #define DI_AFBCE1_BLK_SIZE_IN 0x20c3 |
| //Bit 31:29, reserved |
| //Bit 28:16 hblk_size |
| //unsigned, default = 60 , pic horz size in unit: pixel |
| //Bit 15:13, reserved |
| //Bit 12:0, vblk_size |
| //unsigned, default = 270, pic vert size in unit: pixel |
| #define DI_AFBCE1_HEAD_BADDR 0x20c4 |
| //Bit 31:0, head_baddr unsigned, default = 32'h00; |
| #define DI_AFBCE1_MIF_SIZE 0x20c5 |
| //Bit 31:30, reserved |
| //Bit 29:28, ddr_blk_size unsigned, default = 1; |
| //Bit 27, reserved |
| //Bit 26:24, cmd_blk_size unsigned, default = 3; |
| //Bit 23:21, reserved |
| //Bit 20:16, uncmp_size unsigned, default = 20; |
| //Bit 15:0, mmu_page_size unsigned, default = 4096; |
| #define DI_AFBCE1_PIXEL_IN_HOR_SCOPE 0x20c6 |
| //Bit 31:29, reserved |
| //Bit 28:16, enc_win_end_h unsigned, default = 1919 ; // |
| //Bit 15:13, reserved |
| //Bit 12:0, enc_win_bgn_h unsigned, default = 0 ; // |
| #define DI_AFBCE1_PIXEL_IN_VER_SCOPE 0x20c7 |
| //Bit 31:29, reserved |
| //Bit 28:16, enc_win_end_v unsigned, default = 1079 ; // |
| //Bit 15:13, reserved |
| //Bit 12:0, enc_win_bgn_v unsigned, default = 0 ; // |
| #define DI_AFBCE1_CONV_CTRL 0x20c8 |
| //Bit 31:29, reserved |
| //Bit 28:16, fmt_ybuf_depth unsigned, default = 2048 |
| //Bit 15:12, reserved |
| //Bit 11: 0, lbuf_depth |
| //unsigned, default = 256, unit=16 pixel need to set = 2^n |
| #define DI_AFBCE1_MIF_HOR_SCOPE 0x20c9 |
| //Bit 31:26, reserved |
| //Bit 25:16, blk_end_h unsigned, default = 0 ; // |
| //Bit 15:10, reserved |
| //Bit 9:0, blk_bgn_h unsigned, default = 59 ; // |
| #define DI_AFBCE1_MIF_VER_SCOPE 0x20ca |
| //Bit 31:28, reserved |
| //Bit 27:16, blk_end_v unsigned, default = 0 ; // |
| //Bit 15:12, reserved |
| //Bit 11:0, blk_bgn_v unsigned, default = 269 ; // |
| #define DI_AFBCE1_STAT1 0x20cb |
| //Bit 31, ro_frm_end_pulse1 unsigned, RO,default = 0 ;frame end status |
| //Bit 30:0, ro_dbg_top_info1 unsigned, RO,default = 0 ; |
| #define DI_AFBCE1_STAT2 0x20cc |
| //Bit 31, reserved |
| //Bit 30:0, ro_dbg_top_info2 unsigned, RO,default = 0 ; |
| #define DI_AFBCE1_FORMAT 0x20cd |
| //Bit 31:12 reserved |
| //Bit 11:10 reserved |
| //Bit 9: 8 reg_format_mode |
| // unsigned , RW, default = 2 |
| //data format;0 : YUV444, 1:YUV422, 2:YUV420, 3:RGB |
| //Bit 7: 4 reg_compbits_c |
| // unsigned , RW, default = 10 chroma bitwidth |
| //Bit 3: 0 reg_compbits_y |
| // unsigned , RW, default = 10 luma bitwidth |
| #define DI_AFBCE1_MODE_EN 0x20ce |
| //Bit 31:28 reserved |
| //Bit 27:26 reserved |
| //Bit 25 reg_adpt_interleave_ymode |
| // unsigned , RW, default = 0 force 0 to disable it |
| //: no HW implementation |
| //Bit 24 reg_adpt_interleave_cmode |
| // unsigned , RW, default = 0 force 0 to disable it |
| //: not HW implementation |
| //Bit 23 reg_adpt_yinterleave_luma_ride |
| // unsigned , RW, default = 1 |
| //vertical interleave piece luma reorder ride; |
| //0: no reorder ride; 1: w/4 as ride |
| //Bit 22 reg_adpt_yinterleave_chrm_ride |
| // unsigned , RW, default = 1 |
| //vertical interleave piece chroma reorder ride; |
| //0: no reorder ride; 1: w/2 as ride |
| //Bit 21 reg_adpt_xinterleave_luma_ride |
| // unsigned , RW, default = 1 |
| //vertical interleave piece luma reorder ride; |
| //0: no reorder ride; 1: w/4 as ride |
| //Bit 20 reg_adpt_xinterleave_chrm_ride |
| // unsigned , RW, default = 1 |
| //vertical interleave piece chroma reorder ride; |
| //0: no reorder ride; 1: w/2 as ride |
| //Bit 19 reserved |
| //Bit 18 reg_disable_order_mode_i_6 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 17 reg_disable_order_mode_i_5 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 16 reg_disable_order_mode_i_4 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 15 reg_disable_order_mode_i_3 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 14 reg_disable_order_mode_i_2 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: each mode with one |
| //disable bit: 0: no disable, 1: disable |
| //Bit 13 reg_disable_order_mode_i_1 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: |
| //each mode with one disable bit: 0: no disable, 1: disable |
| //Bit 12 reg_disable_order_mode_i_0 |
| // unsigned , RW, default = 0 |
| //disable order mode0~6: |
| //each mode with one disable bit: 0: no disable, 1: disable |
| //Bit 11 reserved |
| //Bit 10 reg_minval_yenc_en |
| // unsigned , RW, default = 0 |
| //force disable, final decision to remove this ws 1% performance loss |
| //Bit 9 reg_16x4block_enable |
| // unsigned , RW, default = 0 |
| //block as mission, but permit 16x4 block |
| //Bit 8 reg_uncompress_split_mode |
| // unsigned , RW, default = 0 0: no split; 1: split |
| //Bit 7: 6 reserved |
| //Bit 5 reg_input_padding_uv128 |
| // unsigned , RW, default = 0 |
| //input picture 32x4 block gap mode: 0: pad uv=0; 1: pad uv=128 |
| //Bit 4 reg_dwds_padding_uv128 |
| // unsigned , RW, default = 0 |
| //downsampled image for double write 32x gap mode: 0: pad uv=0; 1: pad uv=128 |
| //Bit 3: 1 reg_force_order_mode_value |
| // unsigned , RW, default = 0 force order mode 0~7 |
| //Bit 0 reg_force_order_mode_en |
| // unsigned , RW, default = 0 |
| // force order mode enable: 0: no force; 1: forced to force_value |
| #define DI_AFBCE1_DWSCALAR 0x20cf |
| //Bit 31: 8 reserved |
| //Bit 7: 6 reg_dwscalar_w0 |
| // unsigned , RW, default = 3 horizontal 1st step scalar mode: |
| // 0: 1:1 no scalar; 1: 2:1 data drop (0,2,4, 6) pixel kept; |
| // 2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| //Bit 5: 4 reg_dwscalar_w1 |
| // unsigned , RW, default = 0 horizontal 2nd step scalar mode: |
| // 0: 1:1 no scalar; 1: 2:1 data drop (0,2,4, 6) pixel kept; |
| // 2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| //Bit 3: 2 reg_dwscalar_h0 |
| // unsigned , RW, default = 2 |
| //vertical 1st step scalar mode: 0: 1:1 no scalar; |
| // 1: 2:1 data drop (0,2,4, 6) pixel kept; |
| // 2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| //Bit 1: 0 reg_dwscalar_h1 |
| // unsigned , RW, default = 3 |
| // vertical 2nd step scalar mode: 0: 1:1 no scalar; |
| // 1: 2:1 data drop (0,2,4, 6) pixel kept; |
| // 2: 2:1 data drop (1, 3, 5,7..) pixels kept; 3: avg |
| #define DI_AFBCE1_DEFCOLOR_1 0x20d0 |
| //Bit 31:24 reserved |
| //Bit 23:12 reg_enc_defalutcolor_3 |
| // unsigned , RW, default = 4095 |
| //Picture wise default color value in [Y Cb Cr] |
| //Bit 11: 0 reg_enc_defalutcolor_0 |
| // unsigned , RW, default = 4095 |
| //Picture wise default color value in [Y Cb Cr] |
| #define DI_AFBCE1_DEFCOLOR_2 0x20d1 |
| //Bit 31:24 reserved |
| //Bit 23:12 reg_enc_defalutcolor_2 |
| // unsigned , RW, default = 2048 wise default color value in [Y Cb Cr] |
| //Bit 11: 0 reg_enc_defalutcolor_1 |
| // unsigned , RW, default = 2048 wise default color value in [Y Cb Cr] |
| #define DI_AFBCE1_QUANT_ENABLE 0x20d2 |
| //Bit 31:12 reserved |
| //Bit 11 reg_quant_expand_en_1 |
| // unsigned , RW, default = 0 enable for quantization value expansion |
| //Bit 10 reg_quant_expand_en_0 |
| // unsigned , RW, default = 0 enable for quantization value expansion |
| //Bit 9: 8 reg_bcleav_ofst |
| //signed , RW, default = 0 |
| //bcleave ofset to get lower range, |
| //especially under lossy, for v1/v2, x=0 is equivalent, default = -1; |
| //Bit 7: 5 reserved |
| //Bit 4 reg_quant_enable_1 |
| // unsigned , RW, default = 0 enable for quant to get some lossy |
| //Bit 3: 1 reserved |
| //Bit 0 reg_quant_enable_0 |
| // unsigned , RW, default = 0 enable for quant to get some lossy |
| #define DI_AFBCE1_IQUANT_LUT_1 0x20d3 |
| //Bit 31 reserved |
| //Bit 30:28 reg_iquant_yclut_0_11 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 27 reserved |
| //Bit 26:24 reg_iquant_yclut_0_10 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 23 reserved |
| //Bit 22:20 reg_iquant_yclut_0_9 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 19 reserved |
| //Bit 18:16 reg_iquant_yclut_0_8 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_0_7 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_0_6 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_0_5 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_0_4 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE1_IQUANT_LUT_2 0x20d4 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_0_3 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_0_2 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_0_1 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_0_0 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE1_IQUANT_LUT_3 0x20d5 |
| //Bit 31 reserved |
| //Bit 30:28 reg_iquant_yclut_1_11 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 27 reserved |
| //Bit 26:24 reg_iquant_yclut_1_10 |
| // unsigned , RW, default = 1 |
| // quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 23 reserved |
| //Bit 22:20 reg_iquant_yclut_1_9 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 19 reserved |
| //Bit 18:16 reg_iquant_yclut_1_8 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_1_7 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_1_6 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_1_5 |
| // unsigned , RW, default = 5 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_1_4 |
| // unsigned , RW, default = 4 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE1_IQUANT_LUT_4 0x20d6 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_iquant_yclut_1_3 |
| // unsigned , RW, default = 3 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 11 reserved |
| //Bit 10: 8 reg_iquant_yclut_1_2 |
| // unsigned , RW, default = 2 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 7 reserved |
| //Bit 6: 4 reg_iquant_yclut_1_1 |
| // unsigned , RW, default = 1 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| //Bit 3 reserved |
| //Bit 2: 0 reg_iquant_yclut_1_0 |
| // unsigned , RW, default = 0 |
| //quantization lut for mintree leavs, iquant=2^lut(bc_leav_q+1) |
| #define DI_AFBCE1_RQUANT_LUT_1 0x20d7 |
| //Bit 31 reserved |
| //Bit 30:28 reg_rquant_yclut_0_11 // unsigned , RW, default = 5 |
| //quantization lut for bctree leavs, |
| //quant=2^lut(bc_leav_r+1), can be calculated from iquant_yclut(fw_setting) |
| //Bit 27 reserved |
| //Bit 26:24 reg_rquant_yclut_0_10 // unsigned , RW, default = 5 |
| //Bit 23 reserved |
| //Bit 22:20 reg_rquant_yclut_0_9 // unsigned , RW, default = 4 |
| //Bit 19 reserved |
| //Bit 18:16 reg_rquant_yclut_0_8 // unsigned , RW, default = 4 |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_0_7 // unsigned , RW, default = 3 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_0_6 // unsigned , RW, default = 3 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_0_5 // unsigned , RW, default = 2 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_0_4 // unsigned , RW, default = 2 |
| #define DI_AFBCE1_RQUANT_LUT_2 0x20d8 |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_0_3 // unsigned , RW, default = 1 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_0_2 // unsigned , RW, default = 1 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_0_1 // unsigned , RW, default = 0 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_0_0 // unsigned , RW, default = 0 |
| #define DI_AFBCE1_RQUANT_LUT_3 0x20d9 |
| //Bit 31 reserved |
| //Bit 30:28 reg_rquant_yclut_1_11 // unsigned , RW, default = 5 |
| //quantization lut for bctree leavs, quant=2^lut(bc_leav_r+1), |
| // can be calculated from iquant_yclut(fw_setting) |
| //Bit 27 reserved |
| //Bit 26:24 reg_rquant_yclut_1_10 // unsigned , RW, default = 5 |
| //Bit 23 reserved |
| //Bit 22:20 reg_rquant_yclut_1_9 // unsigned , RW, default = 4 |
| //Bit 19 reserved |
| //Bit 18:16 reg_rquant_yclut_1_8 // unsigned , RW, default = 4 |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_1_7 // unsigned , RW, default = 3 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_1_6 // unsigned , RW, default = 3 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_1_5 // unsigned , RW, default = 2 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_1_4 // unsigned , RW, default = 2 |
| #define DI_AFBCE1_RQUANT_LUT_4 0x20da |
| //Bit 31:16 reserved |
| //Bit 15 reserved |
| //Bit 14:12 reg_rquant_yclut_1_3 // unsigned , RW, default = 1 |
| //Bit 11 reserved |
| //Bit 10: 8 reg_rquant_yclut_1_2 // unsigned , RW, default = 1 |
| //Bit 7 reserved |
| //Bit 6: 4 reg_rquant_yclut_1_1 // unsigned , RW, default = 0 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_rquant_yclut_1_0 // unsigned , RW, default = 0 |
| #define DI_AFBCE1_YUV_FORMAT_CONV_MODE 0x20db |
| //Bit 31: 8 reserved |
| //Bit 7 reserved |
| //Bit 6: 4 reg_444to422_mode // unsigned , RW, default = 0 |
| //Bit 3 reserved |
| //Bit 2: 0 reg_422to420_mode // unsigned , RW, default = 0 |
| #define DI_AFBCE1_DUMMY_DATA 0x20dc |
| //Bit 31:30 reserved |
| //Bit 29: 0 reg_dummy_data // unsigned , default = 0 ; |
| #define DI_AFBCE1_CLR_FLAG 0x20dd |
| //Bit 31:0 reg_di_AFBCE1_clr_flag // unsigned, default = 0 ; |
| #define DI_AFBCE1_STA_FLAGT 0x20de |
| //Bit 31:0 ro_di_AFBCE1__sta_flag // unsigned, RO,default = 0 ; |
| #define DI_AFBCE1_MMU_NUM 0x20df |
| //Bit 31:16 reserved |
| //Bit 15: 0 ro_frm_mmu_num // unsigned, RO,default = 0 ; |
| #define DI_AFBCE1_MMU_RMIF_CTRL1 0x20e0 |
| //Bit 31:26 reserved |
| //Bit 25:24 reg_sync_sel |
| // unsigned , default = 0, axi canvas id sync with frm rst |
| //Bit 23:16 reg_canvas_id |
| // unsigned , default = 0, axi canvas id num |
| //Bit 15 reserved |
| //Bit 14:12 reg_cmd_intr_len |
| // unsigned , default = 1, interrupt send cmd when how many series axi cmd, |
| // 0=12 1=16 2=24 3=32 4=40 5=48 6=56 7=64 |
| //Bit 11:10 reg_cmd_req_size |
| // unsigned , default = 1, |
| //how many room fifo have, then axi send series req, 0=16 1=32 2=24 3=64 |
| //Bit 9:8 reg_burst_len |
| // unsigned , default = 2, burst type: 0-single 1-bst2 2-bst4 |
| //Bit 7 reg_swap_64bit |
| // unsigned , default = 0, 64bits of 128bit swap enable |
| //Bit 6 reg_little_endian |
| // unsigned , default = 0, big endian enable |
| //Bit 5 reg_y_rev |
| // unsigned , default = 0, vertical reverse enable |
| //Bit 4 reg_x_rev |
| // unsigned , default = 0, horizontal reverse enable |
| //Bit 3 reserved |
| //Bit 2:0 reg_pack_mode |
| // unsigned , default = 3, 0:4bit 1:8bit 2:16bit 3:32bit 4:64bit 5:128bit |
| #define DI_AFBCE1_MMU_RMIF_CTRL2 0x20e1 |
| //Bit 31:30 reg_sw_rst // unsigned , default = 0, |
| //Bit 29:24 reserved |
| //Bit 23:18 reg_gclk_ctrl |
| //Bit 17 reserved |
| //Bit 16:0 reg_urgent_ctrl |
| // unsigned , default = 0, urgent control reg : |
| // 16 reg_ugt_init : urgent initial value |
| // 15 reg_ugt_en : urgent enable |
| // 14 reg_ugt_type : 1= wrmif 0=rdmif |
| // 7:4 reg_ugt_top_th: urgent top threshold |
| // 3:0 reg_ugt_bot_th: urgent bottom threshold |
| #define DI_AFBCE1_MMU_RMIF_CTRL3 0x20e2 |
| //Bit 31:17 reserved |
| //Bit 16 reg_acc_mode // unsigned , default = 1, |
| //Bit 15:13 reserved |
| //Bit 12:0 reg_stride // unsigned , default = 4096, |
| #define DI_AFBCE1_MMU_RMIF_CTRL4 0x20e3 |
| //Bit 31:0 reg_baddr // unsigned , default = 0, |
| #define DI_AFBCE1_MMU_RMIF_SCOPE_X 0x20e4 |
| //Bit 31:29 reserved |
| |
| //Bit 28:16 reg_x_end |
| // unsigned , default = 4095, the canvas hor end pixel position |
| //Bit 15:13 reserved |
| //Bit 12: 0 reg_x_start |
| // unsigned , default = 0, the canvas hor start pixel position |
| #define DI_AFBCE1_MMU_RMIF_SCOPE_Y 0x20e5 |
| //Bit 31:29 reserved |
| //Bit 28:16 reg_y_end |
| // unsigned , default = 0, the canvas ver end pixel position |
| //Bit 15:13 reserved |
| //Bit 12: 0 reg_y_start |
| // unsigned , default = 0, the canvas ver start pixel positio |
| |
| #define DI_AFBCE1_MMU_RMIF_RO_STAT 0x20e6 |
| //Bit 15:0 reg_status // unsigned , |
| #define DI_AFBCE1_PIP_CTRL 0x20ea |
| //Bit 31:3 reserved |
| //Bit 2 reg_enc_align_en //unsigned , RW,default = 1, |
| //Bit 1 reg_pip_ini_ctrl //unsigned , RW,default = 0, |
| //Bit 0 reg_pip_mode //unsigned , RW,default = 0, |
| #define DI_AFBCE1_ROT_CTRL 0x20eb |
| //Bit 31:5 reserved |
| |
| //Bit 4 reg_rot_en |
| //unsigned , RW,default = 0, rotation enable |
| //Bit 3:0 reg_vstep |
| //unsigned , RW,default = 8, |
| //rotation vstep ,setting acorrding rotation shrink mode |
| #define DI_AFBCE1_DIMM_CTRL 0x20ec |
| //Bit 31 reg_dimm_layer_en |
| //unsigned , RW,default = 0,dimm_layer enable signal |
| //Bit 30 reserved |
| //Bit 29:0 reg_dimm_data |
| //unsigned , RW,default = 29'h00080200,dimm_layer data |
| #define DI_AFBCE1_BND_DEC_MISC 0x20ed |
| //Bit 31:28 reserved |
| //Bit 27:26 bnd_dec_rev_mode |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 25:24 bnd_dec_mif_urgent |
| //unsigned , RW,default = 3 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 23:22 bnd_dec_burst_len |
| //unsigned , RW,default = 2 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 21:20 bnd_dec_ddr_blk_size |
| //unsigned , RW,default = 1 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 19 reserved |
| //Bit 18:16 bnd_dec_cmd_blk_size |
| //unsigned , RW,default = 3 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 15 reserved |
| //Bit 14 bnd_dec_blk_mem_mode |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 13 bnd_dec_addr_link_en |
| //unsigned , RW,default = 1 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 12 bnd_dec_always_body_rden |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 11:0 bnd_dec_mif_lbuf_depth |
| //unsigned , RW,default = 128 |
| //only pip mode use those bits,ususaly don't need configure |
| #define DI_AFBCE1_RD_ARB_MISC (0x20ee) |
| //Bit 31:13 reserved |
| //Bit 12 reg_arb_sw_rst |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 11:10 reserved |
| //Bit 9 reg_arb_arblk_last1 |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 8 reg_arb_arblk_last0 |
| //unsigned , RW,default = 0 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 7:4 reg_arb_weight_ch1 |
| //unsigned , RW,default = 4 |
| //only pip mode use those bits,ususaly don't need configure |
| //Bit 3:0 reg_arb_weight_ch0 |
| //unsigned , RW,default = 10 |
| //only pip mode use those bits,ususaly don't need configure |
| |
| #define DI_CRC_CHK0 ((0x17c3)) /* << 2) + 0xd0100000) */ |
| #define DI_RO_CRC_NRWR ((0x17c0)) /* << 2) + 0xd0100000) */ |
| #define DI_RO_CRC_DEINT ((0x17c1)) /* << 2) + 0xd0100000) */ |
| #define DI_RO_CRC_MTNWR ((0x17c2)) /* << 2) + 0xd0100000) */ |
| |
| #define DI_PD_RO_SUM_P ((0x17f9)) |
| #define DI_PD_RO_SUM_N ((0x17fa)) |
| #define DI_PD_RO_CNT_P ((0x17fb)) |
| #define DI_PD_RO_CNT_N ((0x17fc)) |
| |
| #define DI_PRE_SEC_IN 0x2010 |
| #define DI_POST_SEC_IN 0x2011 |
| #define DI_VIU_DATA_SEC 0x1A50 |
| |
| //t7 |
| #define CONTRD_BADDR 0x3729 |
| #define CONT2RD_BADDR 0x372a |
| #define MTNRD_BADDR 0x372b |
| #define MCVECRD_BADDR 0x372c |
| #define MCINFRD_BADDR 0x372d |
| #define CONTWR_BADDR 0x3734 |
| #define CONTWR_STRIDE 0x3735 |
| #define MTNWR_BADDR 0x3736 |
| #define MTNWR_STRIDE 0x3737 |
| #define MCVECWR_BADDR 0x372e |
| #define MCVECWR_STRIDE 0x372f |
| #define MCINFWR_BADDR 0x37ce |
| #define MCINFWR_STRIDE 0x37cf |
| #define NRDSWR_BADDR 0x37fd |
| #define NRDSWR_STRIDE 0x37fe |
| |
| #endif /*__DI_REG_V3_H__*/ |
| |