123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361 |
- #ifndef _VIP_TAB__H
- #define _VIP_TAB__H
- #include <drv_spi_flashalloc_internal.h>
- #include <drv_vip_internal.h>
- #include <drv_pq_internal.h>
- #include "osdef.h" //joshua check
- //#include "osdef.h"
- //-------------------------------------------------------------------------------------------
- //note code flash usage
- // 128k
- // p addr : bc040000 ~ bc05ffff
- // v addr : ba040000 ~ bc05ffff
- //
- #if SEPERATE_YPBPR1_YPBPR2
- #define VTAB_INITIAL_TALBE 0
- #define VTAB_INITIAL_VALUE 1
- #define VTAB_EXTS_YPP_VALUE 2
- #define VTAB_EXTS_YPP_HD_VALUE 3
- #define VTAB_EXTS_RGB_VALUE 4
- #define VTAB_CVD2_TV_VALUE 5
- #define VTAB_CVD2_AV_VALUE 6
- #define VTAB_CVD2_SV_VALUE 7
- #define VTAB_MPEG_VALUE 8
- #define VTAB_MPEG_HD_VALUE 9
- #define VTAB_HDMI_VALUE 10
- #define VTAB_HDMI_HD_VALUE 11
- #define VTAB_SCART_RGB_VALUE 12
- #define VTAB_EXTS_YPP2_SD_VALUE 13
- #define VTAB_EXTS_YPP2_HD_VALUE 14
- #define VTAB_MAX_SOURCE 13
- #else
- #define VTAB_INITIAL_TALBE 0
- #define VTAB_INITIAL_VALUE 1
- #define VTAB_EXTS_YPP_VALUE 2
- #define VTAB_EXTS_RGB_VALUE 3
- #define VTAB_CVD2_TV_VALUE 4
- #define VTAB_CVD2_AV_VALUE 5
- #define VTAB_CVD2_SV_VALUE 6
- #define VTAB_MPEG_VALUE 7
- #define VTAB_HDMI_VALUE 8
- #define VTAB_SCART_RGB_VALUE 9
- #define VTAB_EXTS_YPP_HD_VALUE 10
- #define VTAB_MPEG_HD_VALUE 11
- #define VTAB_HDMI_HD_VALUE 12
- #define VTAB_MAX_SOURCE 11
- #endif
- #define REG_ADDR_LVDS_MAPPING 0xbe000124 //VIP_Improve_Item_13, Register address changed for 531 chip
- #ifdef NEW_COEFFICIENT
- enum
- {
- HCOEFF_ScalingUP,
- HCOEFF_NoScaling,
- HCOEFF_Scaling_100_110,
- HCOEFF_Scaling_110_120,
- HCOEFF_Scaling_120_130,
- HCOEFF_Scaling_130_140,
- HCOEFF_Scaling_140_150,
- HCOEFF_Scaling_150_160,
- HCOEFF_Scaling_160_170,
- HCOEFF_Scaling_170_180,
- HCOEFF_Scaling_180_190,
- HCOEFF_Scaling_190_200,
- HCOEFF_Scaling_200_250,
- HCOEFF_Scaling_250_300,
- HCOEFF_Scaling_300_350,
- HCOEFF_Scaling_350_400,
- VCOEFF_ScalingUP,
- VCOEFF_Scaling_100_110,
- VCOEFF_Scaling_110_120,
- VCOEFF_Scaling_120_130,
- VCOEFF_Scaling_130_140,
- VCOEFF_Scaling_140_150,
- VCOEFF_Scaling_150_160,
- VCOEFF_Scaling_160_170,
- VCOEFF_Scaling_170_180,
- VCOEFF_Scaling_180_190,
- VCOEFF_Scaling_190_200,
- VCOEFF_Scaling_200_250,
- VCOEFF_Scaling_250_300,
- VCOEFF_Scaling_300_350,
- VCOEFF_Scaling_350_400,
- };
- #endif
- typedef struct
- {
- INT32 sine;
- INT32 cosine;
- }HUE;
- typedef struct
- {
- UINT32 uiDetAngle;
- INT32 siSineTheta;
- INT32 siCosineTheta;
- UINT32 uiRotAngle;
- INT32 siSine;
- INT32 siCosine;
- UINT8 ucLowRange;
- UINT8 ucHiRange;
- }REGION_COLOR;
- #define PQ_MAX_ITEM_DEGREE 16
- #define PQ_MAX_LSNR_DEGREE 24
- #define PQ_MAX_MPEGNR_DEGREE 10
- #define PQ_MAX_PEAKING_DEGREE 8
- #define PQ_MAX_SNR_ULOW_DEGREE 24
- #define PQ_MAX_BIN_ITEM 16
- typedef struct _USER_BIN_SET
- {
- INT32 minus5[PQ_MAX_BIN_ITEM];
- INT32 minus4[PQ_MAX_BIN_ITEM];
- INT32 minus3[PQ_MAX_BIN_ITEM];
- INT32 minus2[PQ_MAX_BIN_ITEM];
- INT32 minus1[PQ_MAX_BIN_ITEM];
- INT32 zero[PQ_MAX_BIN_ITEM];
- INT32 plus1[PQ_MAX_BIN_ITEM];
- INT32 plus2[PQ_MAX_BIN_ITEM];
- INT32 plus3[PQ_MAX_BIN_ITEM];
- INT32 plus4[PQ_MAX_BIN_ITEM];
- INT32 plus5[PQ_MAX_BIN_ITEM];
- } USER_BIN_SET;
- typedef struct _DC_STRENGTH
- {
- INT32 dpy_hist_max_slope;
- INT32 dpy_hist_min_slope;
- INT32 dpy_fl_y_en;
- INT32 dark_scene_max_slope_offset;
- INT32 dark_scene_min_slope_offset;
- } DC_STRENGTH;
- typedef struct _PEAKING_STRENGTH
- {
- INT32 dpy_filter_y_h1;
- INT32 dpy_filter_y_h2;
- INT32 dpy_filter_y_h3;
- INT32 dpy_filter_y_h4;
- } PEAKING_STRENGTH;
- typedef struct _LUMA_TNR_CORING
- {
- INT32 vdi_tnr_th1_adj_min;
- INT32 vdi_tnr_th1;
- INT32 vdi_tnr_th1_adj_max;
- INT32 vdi_tnr_th1_fact;
- } LUMA_TNR_CORING;
- typedef struct _LUMA_TNR_STRENGTH
- {
- INT32 vdi_tnr_alpha_init;
- INT32 vdi_tnr_alpha_adj_min_dith;
- INT32 vdi_tnr_alpha_adj_min;
- INT32 vdi_tnr_alpha;
- } LUMA_TNR_STRENGTH;
- typedef struct _CHROMA_TNR_CORING
- {
- INT32 vdi_tnr_th1_chroma;
- } CHROMA_TNR_CORING;
- typedef struct _CHROMA_TNR_STRENGTH
- {
- INT32 vdi_tnr_alpha_chroma;
- } CHROMA_TNR_STRENGTH;
- typedef struct _TNR_ULTRA_LOW
- {
- INT32 vdi_tnr_alpha ;
- } TNR_ULTRA_LOW;
- typedef struct _LUMA_SNR1_CORING
- {
- INT32 vdi_snr_hl_coring;
- INT32 vdi_snr_hl_coring_limit;
- INT32 vdi_snr_hl_coring_th3;
- } LUMA_SNR1_CORING;
- typedef struct _LUMA_SNR1_STRENGTH
- {
- INT32 vdi_snr_ulow_gain_inc;
- } LUMA_SNR1_STRENGTH;
- typedef struct _LUMA_SNR2_CORING
- {
- INT32 vdi_snr_vl_coring;
- INT32 vdi_snr_vl_coring_limit;
- INT32 vdi_snr_vl_coring_th3;
- } LUMA_SNR2_CORING;
- typedef struct _LUMA_SNR_STRENGTH
- {
- INT32 vdi_snr_vl_smooth;
- } LUMA_SNR2_STRENGTH;
- typedef struct _CHROMA_SNR_CORING
- {
- INT32 vdi_snr_hc_coring;
- INT32 vdi_snr_hc_coring_limit;
- INT32 vdi_snr_hc_coring_th1;
- INT32 vdi_snr_hc_coring_th2;
- INT32 vdi_snr_hc_coring_th3;
- } CHROMA_SNR_CORING;
- typedef struct _CHROMA_SNR_STRENGTH
- {
- INT32 vdi_snr_hc_smooth;
- } CHROMA_SNR_STRENGTH;
- typedef struct _SNR1_ULTRA_LOW
- {
- INT32 vdi_snr_hl_coring;
- } SNR1_ULTRA_LOW;
- typedef struct _SNR2_ULTRA_LOW
- {
- INT32 vdi_snr_vl_coring;
- } SNR2_ULTRA_LOW;
- typedef struct _BLOCK_NR_CORING
- {
- INT32 vdi_dbk_hdiff_th2;
- } BLOCK_NR_CORING;
- typedef struct _BLOCK_NR_STRENGTH
- {
- INT32 vdi_dbk_hdiff_th1;
- INT32 vdi_dbk_hdiff_slope1;
- } BLOCK_NR_STRENGTH;
- typedef struct _MOSQUITO_NR_CORING
- {
- INT32 vdi_mnr_h_coring_inc;
- INT32 vdi_mnr_v_coring_inc;
- } MOSQUITO_NR_CORING;
- typedef struct _MOSQUITO_NR_STRENGTH
- {
- INT32 vdi_mnr_gain_inc;
- } MOSQUITO_NR_STRENGTH;
- typedef struct _CR_HUE
- {
- INT32 sin;
- INT32 cos;
- } CR_HUE;
- //#ifdef VIP_SW_DC
- #if 1
- typedef struct _ST_SWDC_Info
- {
- UINT16 ulHistCaseCur;
- }ST_SWDC_Info;
- typedef struct _ST_SWDC_Param
- {
- UINT8 ucSWDC_En;
- UINT8 ucSWDC_Var_Cond_En;
- UINT16 wSWDC_Ratio[6];
- UINT16 wSWDC_Factor[5];
- UINT16 wSWDC_Alpha;
- UINT16 wSWDC_Static_Alpha[4];
- UINT16 wSWDC_YLevel;
- UINT16 wSWDC_CLevel;
- }ST_SWDC_Param;
- typedef struct _ST_SWDC_Slpoe
- {
- UINT8 SWDC_HistSlop[36][16];
- }ST_SWDC_Slope;
- typedef struct _ST_SWDC_Chroma
- {
- UINT8 SWDC_HistChroma[36][16];
- }ST_SWDC_Chroma;
- #endif
- extern UINT8 ID_GammaString10[14];
- extern UINT8 ID_GammaString12[14];
- extern UINT32 ColorSpaceTableYCC_Full601[12];
- extern UINT32 ColorSpaceTableYCC_Full709[12];
- extern UINT32 ColorSpaceTableYCC_Limit601[12];
- extern UINT32 ColorSpaceTableYCC_Limit709[12];
- extern UINT32 ColorSpaceTableFCC[12];
- extern UINT32 ColorSpaceTable624[12];
- extern UINT32 ColorSpaceTable240M[12];
- extern UINT32 ColorSpaceTableRGB[12];
- extern UINT32 ColorSpaceJPEG[12];
- extern UINT32 ColorSpaceBMP[12];
- extern UINT32 ColorSpaceTableJPEGRGB[12];
- extern HUE HueSetting[];
- extern HUE NewHueSetting[];
- extern const USER_BIN_SET g_StaticGamma;
- extern const USER_BIN_SET g_BlackLevelExtension;
- extern const USER_BIN_SET g_WhiteLevelExtension;
- extern const DC_STRENGTH DCStrength[PQ_MAX_ITEM_DEGREE];
- extern const PEAKING_STRENGTH PeakingStrength[PQ_MAX_PEAKING_DEGREE];
- extern const LUMA_TNR_CORING LTNRCoring[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_TNR_CORING CTNRCoring[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_TNR_STRENGTH CTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_TNR_STRENGTH CVD2CTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_CORING LSNR1Coring[PQ_MAX_LSNR_DEGREE];
- extern const LUMA_SNR1_STRENGTH LSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_STRENGTH PCSDSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_STRENGTH PCHDSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR2_CORING LSNR2Coring[PQ_MAX_LSNR_DEGREE];
- extern const LUMA_SNR2_STRENGTH LSNR2Strength[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_SNR_CORING CSNRCoring[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_SNR_STRENGTH CSNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const BLOCK_NR_CORING BlockNrCoring[PQ_MAX_MPEGNR_DEGREE];
- extern const BLOCK_NR_STRENGTH BlockNrStrength[PQ_MAX_MPEGNR_DEGREE];
- extern const MOSQUITO_NR_CORING MosquitoNrCoring[PQ_MAX_MPEGNR_DEGREE];
- extern const MOSQUITO_NR_STRENGTH MosquitoNrStrength[PQ_MAX_MPEGNR_DEGREE];
- extern const LUMA_TNR_STRENGTH ATVLTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_TNR_STRENGTH AVLTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_TNR_STRENGTH SDLTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_TNR_STRENGTH HDLTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_TNR_STRENGTH PCSDLTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_TNR_STRENGTH PCHDLTNRStrength[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_TNR_CORING ATVCTNRCoring[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_TNR_CORING SDCTNRCoring[PQ_MAX_ITEM_DEGREE];
- extern const CHROMA_TNR_CORING HDCTNRCoring[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_STRENGTH ATVLSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_STRENGTH AVLSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_STRENGTH SDSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const LUMA_SNR1_STRENGTH HDSNR1Strength[PQ_MAX_ITEM_DEGREE];
- extern const TNR_ULTRA_LOW TnrUltraLowAlpha[PQ_MAX_ITEM_DEGREE];
- extern const SNR1_ULTRA_LOW Snr1UltraLowCoring[PQ_MAX_SNR_ULOW_DEGREE];
- extern const SNR2_ULTRA_LOW Snr2UltraLowCoring[PQ_MAX_SNR_ULOW_DEGREE];
- extern const CR_HUE ANGLE_TABLE[360];
- extern const INT32 COLOR_LUTABLE[512];
- #endif //#ifndef _VIP_TAB__H
|