123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795 |
- /*! \addtogroup display_mid Display Middleware
- * @{
- */
- /******************************************************************************/
- /**
- *
- * @file mid_display.h
- *
- * @brief This file specifies the APIs provided to control display middleware
- *
- * @note Copyright (c) 2009 Sunplus Technology Co., Ltd. \n
- * All rights reserved.
- *
- * @author
- *
- ******************************************************************************/
- #ifndef __MID_DTV_DISPLAY_H
- #define __MID_DTV_DISPLAY_H
- /*******************************************************************************
- * Header include
- ******************************************************************************/
- #include "types.h"
- #include "plf_timing_id.h"
- #include "mid_display.h"
- #include "umf_ioctl.h"
- #include "drv_scart.h"
- #include "kmf_ioctl.h"
- #include "vip2_ioctl.h"
- #include "adc_ioctl.h"
- #include "pq_ioctl.h"
- #include <drv_cvd2_external.h>
- #include "drv_kmf_interface.h"
- /*******************************************************************************
- * Enumerator
- ******************************************************************************/
- /**
- *@brief Display output format select
- */
- #define MID_PEAKING_MAX_LEVEL 20
- #define MID_DEINTERLACE_MAX_REGPATCH_NUM 30
- #define MID_GAMMA_TABLE_SIZE 1280
- typedef enum
- {
- MID_DISP_HDMI_PC,
- MID_DISP_HDMI_VIDEO,
- MID_DISP_HDMI_AUTO_SELECT,
- } MID_DISP_HDMIInputType_e;
- typedef enum
- {
- MID_IMG_SRC_TUNER,
- MID_IMG_SRC_CVBS,
- MID_IMG_SRC_SVIDEO,
- MID_IMG_SRC_YPBPR_SD,
- MID_IMG_SRC_YPBPR_HD,
- MID_IMG_SRC_RGB,
- MID_IMG_SRC_HDMI_SD,
- MID_IMG_SRC_HDMI_HD,
- MID_IMG_SRC_HDMI_DVI,
- MID_IMG_SRC_DTV_SD,
- MID_IMG_SRC_DTV_HD,
- MID_IMG_SRC_MPEG,
- MID_IMG_SRC_SCART_AV,
- MID_IMG_SRC_SCART_SV,
- MID_IMG_SRC_SCART_RGB,
- MID_IMG_SRC_MAX,
- } MID_DISP_ImgSrcType_e;
- typedef enum
- {
- MID_COLORTEMP_STD,
- MID_COLORTEMP_COOL,
- MID_COLORTEMP_WARM,
- MID_COLORTEMP_sRGB,
- MID_COLORTEMP_USER,
- MID_COLORTEMP_MAX
- } MID_DISP_ColorTempType_e;
- typedef enum
- {
- MID_OFF,
- MID_ON,
- MID_MAX
- } MID_DISP_OFFON_e;
- typedef enum
- {
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_ATV_NTSC = 0,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_ATV_PAL,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_ATV_SECAM,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_CVBS_NTSC,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_CVBS_PAL,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_CVBS_SECAM,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_YC_NTSC,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_YC_PAL,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_YC_SECAM,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_YPBPR_SD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_YPBPR_HD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_PC,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_HDMI_SD_16_235,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_HDMI_SD_0_255,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_HDMI_HD_16_235,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_HDMI_HD_0_255,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_HDMI_DVI_16_235,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_HDMI_DVI_0_255,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_DTV_SD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_DTV_HD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_MULTIMEDIA_SD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_MULTIMEDIA_HD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_AV_NTSC,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_AV_PAL,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_AV_SECAM,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_SV_NTSC,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_SV_PAL,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_SV_SECAM,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_SCART_RGB,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_DVD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_DVD_HD,
- MID_VIDEO_PQ_STORE_SOURCE_TYPE_MAX,
- } MID_Video_PQ_Store_SourceType_t;
- typedef enum
- {
- MID_BL_OFF,
- MID_BL_50,
- MID_BL_60,
- MID_BL_70,
- MID_BL_80,
- MID_BL_MAX,
- } MID_DISP_BL_e;
- typedef enum
- {
- MID_NR_OFF,
- MID_NR_LOW,
- MID_NR_MIDDLE,
- MID_NR_HIGH,
- MID_NR_MAX,
- } MID_DISP_NR_e;
- typedef enum
- {
- MID_DynamicBL_OFF,
- MID_DynamicBL_ON,
- MID_DynamicBL_MAX,
- } MID_DISP_DynamicBL_e;
- typedef enum
- {
- MID_TPISNR_REGION_1,
- MID_TPISNR_REGION_2,
- MID_TPISNR_REGION_3,
- MID_TPISNR_REGION_MAX,
- } MID_TPISNR_Region_e;
- typedef enum
- {
- MID_DISP_MAIN_WINDOW_BORDER,
- MID_DISP_MULTI_WINDOW_BORDER,
- } MID_DISP_BorderWindow_t;
- typedef enum
- {
- MID_DISP_FLIP_TYPE_NO_FLIP = 0,
- MID_DISP_FLIP_TYPE_BOTH_H_V,
- MID_DISP_FLIP_TYPE_ONLY_H,
- MID_DISP_FLIP_TYPE_ONLY_V,
- MID_DISP_FLIP_TYPE_MAX,
- } MID_DISP_FlipType_t;
- typedef enum
- {
- MID_DISP_MUTE = 0,
- MID_DISP_UNMUTE,
- MID_DISP_MUTE_BY_APP,
- MID_DISP_MUTE_BY_TVFE,
- MID_DISP_MUTE_BY_VIP,
- }MID_DISP_MUTE_ST;
- typedef enum
- {
- MID_DISP_ScartOutput_FORMAT_NTSC,
- MID_DISP_ScartOutput_FORMAT_PAL,
- } MID_DISP_MointerOutputFormat_t;
- typedef enum
- {
- MID_DISP_CVBSOutput_SOURCE_TYPE_NULL = DRV_TvDecOUTPUT_SOURCE_TYPE_NULL,
- MID_DISP_CVBSOutput_SOURCE_TYPE_CVBS = DRV_TvDecOUTPUT_SOURCE_TYPE_CVBS,
- MID_DISP_CVBSOutput_SOURCE_TYPE_SVIDEO = DRV_TvDecOUTPUT_SOURCE_TYPE_SVIDEO,
- MID_DISP_CVBSOutput_SOURCE_TYPE_DTV = DRV_TvDecOUTPUT_SOURCE_TYPE_DTV,
- MID_DISP_CVBSOutput_SOURCE_TYPE_ATV = DRV_TvDecOUTPUT_SOURCE_TYPE_DVIF,
- MID_DISP_CVBSOutput_SOURCE_TYPE_CHROMA = DRV_TvDecOUTPUT_SOURCE_TYPE_CHROMA,
- } MID_DISP_CVBSOutputSrcType_t;
- typedef enum
- {
- MID_PQ_CURVE_0 = 0,
- MID_PQ_CURVE_25,
- MID_PQ_CURVE_50,
- MID_PQ_CURVE_75,
- MID_PQ_CURVE_100,
- }MID_PQ_CURVE_ST;
- /*******************************************************************************
- * Structure
- ******************************************************************************/
- typedef struct
- {
- MID_DISP_ImgSrcType_e eImgSrc;
- UINT8 bCSCLevel;
- UINT8 bMatrixLevel;
- UINT8 bColorTempLevel;
- UINT8 bFCLevel;
- UINT8 bDCLevel;
- UINT8 bDeRingLevel;
- UINT8 bDeBlockingLevel;
- UINT8 bTPISNRLevel;
- UINT8 b2DNRLevel;
- UINT8 b3DNRLevel;
- UINT8 bHPeakingLevel;
- UINT8 bVPeakingLevel;
- UINT8 bDLTILevel;
- UINT8 bDCTILevel;
- UINT8 bUVExLevel;
- UINT8 bUVOffSetLevel;
- UINT8 bSoftClipLevel;
- UINT8 bDeintLevel;
- } MID_DISP_ImgPQFunction_t;
- typedef enum
- {
- DISP_ASPECT_RATIO_FULL,
- DISP_ASPECT_RATIO_4X3,
- DISP_ASPECT_RATIO_16X9,
- DISP_ASPECT_RATIO_14X9,
- DISP_ASPECT_RATIO_NATIVE,
- DISP_ASPECT_RATIO_NATIVE_ENLARGE,
- DISP_ASPECT_RATIO_NONLINEAR,
- DISP_ASPECT_RATIO_ZOOM1,
- DISP_ASPECT_RATIO_ZOOM2,
- DISP_ASPECT_RATIO_ZOOM3,
- DISP_ASPECT_RATIO_ZOOM4,
- DISP_ASPECT_RATIO_ZOOM5,
- DISP_ASPECT_RATIO_ZOOM6,
- DISP_ASPECT_RATIO_ZOOM7,
- DISP_ASPECT_RATIO_ZOOM8,
- DISP_ASPECT_RATIO_CINEMA,
- DISP_ASPECT_RATIO_WIDE,
- DISP_ASPECT_RATIO_AUTO,
- #ifdef CONFIG_SUPPORT_DIVXDRM
- DISP_ASPECT_RATIO_DIVX,
- #endif
- DISP_ASPECT_RATIO_MAX,
- } DISP_Aspect_Ratio_e;
- typedef enum
- {
- MID_HDMIRGBDefault, //Depend on video format, check CEA-861D SPEC
- MID_HDMIRGBLimit,
- MID_HDMIRGBFull,
- MID_HDMIRGBReserved,
- } MID_HDMIRGBRange_t;
- typedef enum
- {
- MID_TvDecPQ_SIGNAL_STABLE,
- MID_TvDecPQ_SIGNAL_UNSTABLE,
- MID_TvDecPQ_NO_SIGNAL_IN
- } MID_TvDecPQSignalStatus_t;
- typedef enum
- {
- MID_TvDecPQFORMAT_NTSC = TVFE_TvDecFORMAT_NTSC,
- MID_TvDecPQFORMAT_PAL = TVFE_TvDecFORMAT_PAL,
- MID_TvDecPQFORMAT_PAL_M = TVFE_TvDecFORMAT_PAL_M,
- MID_TvDecPQFORMAT_PAL_N = TVFE_TvDecFORMAT_PAL_N,
- MID_TvDecPQFORMAT_SECAM = TVFE_TvDecFORMAT_SECAM,
- MID_TvDecPQFORMAT_NTSC_443 = TVFE_TvDecFORMAT_NTSC_443,
- MID_TvDecPQFORMAT_PAL_60 = TVFE_TvDecFORMAT_PAL_60,
- MID_TvDecPQFORMAT_AUTO = TVFE_TvDecFORMAT_AUTO,
- MID_TvDecPQFORMAT_UNKNOW,
- } MID_TvDecPQFormatType_t;
- typedef enum
- {
- MID_TvDecPQ_TV = 0,
- MID_TvDecPQ_AV,
- MID_TvDecPQ_SV,
- MID_TvDecPQ_SCART,
- } MID_TvDecPQSrcType_t;
- typedef struct
- {
- UINT16 wRGain;
- UINT16 wGGain;
- UINT16 wBGain;
- INT16 wROffset;
- INT16 wGOffset;
- INT16 wBOffset;
- } MID_DISP_ColorTemp_Set_t;
- typedef struct
- {
- UINT16 wVTop; //! Specify how many lines of source can be dropped from top line.
- UINT16 wVBottom; //! Specify how many lines of source can be dropped from bottom line.
- UINT16 wHLeft; //! Specify how many pixels of source can be dropped from left pixel.
- UINT16 wHRight; //! Specify how many pixels of source can be dropped from right pixel.
- } MID_Disp_overscan_st;
- typedef struct
- {
- PLF_VideoID_t eModeID;
- char *name;
- MID_Disp_overscan_st ratio_43;
- MID_Disp_overscan_st ratio_169;
- MID_Disp_overscan_st ratio_149;
- MID_Disp_overscan_st ratio_full;
- MID_Disp_overscan_st ratio_nonlinear;
- MID_Disp_overscan_st ratio_native;
- MID_Disp_overscan_st ratio_native_enlarge;
- MID_Disp_overscan_st ratio_zoom1;
- MID_Disp_overscan_st ratio_zoom2;
- MID_Disp_overscan_st ratio_cinema;
- void *customer_data;
- } MID_Disp_HDMIPCTimingTableInfo_st;
- typedef struct
- {
- PLF_VideoID_t eModeID;
- char *name;
- MID_Disp_overscan_st ratio_43;
- MID_Disp_overscan_st ratio_169;
- MID_Disp_overscan_st ratio_149;
- MID_Disp_overscan_st ratio_full;
- MID_Disp_overscan_st ratio_nonlinear;
- MID_Disp_overscan_st ratio_native;
- MID_Disp_overscan_st ratio_native_enlarge;
- MID_Disp_overscan_st ratio_zoom1;
- MID_Disp_overscan_st ratio_zoom2;
- MID_Disp_overscan_st ratio_cinema;
- void *customer_data;
- } MID_Disp_TimingTableInfo_st;
- typedef struct
- {
- PLF_VideoID_t eModeID;
- char *name;
- void *customer_data;
- } MID_Disp_PCTimingTableInfo_st;
- typedef enum{
- DISP_WINDOW1,
- }DISP_VomWindow_t;
- typedef struct
- {
- UINT8 bEn;
- UINT8 bCtrl;
- UINT8 bHGain_BP_EP;
- UINT8 bHGain_HP_NG;
- UINT8 bVGain_3T_5T;
- UINT8 b2DGain_BP1_BP2;
- UINT8 bHCoring;
- UINT8 bVCoring;
- UINT8 b2DCoring;
- UINT8 bXP0;
- UINT8 bXP1;
- UINT8 bXP2;
- UINT8 bXP3;
- UINT8 bYP0;
- UINT8 bYP1;
- UINT8 bYP2;
- UINT8 bMP1;
- UINT8 bMP2;
- UINT8 bMP12;
- UINT8 bPostCoring;
- UINT8 bPeakingStop;
- UINT8 b13TapGain;
- UINT8 b13TapFilter0;
- UINT8 b13TapFilter1;
- UINT8 b13TapFilter2;
- UINT8 b13TapFilter3;
- UINT8 b13TapFilter4;
- UINT8 b13TapFilter5;
- UINT8 b13TapFilter6;
- UINT8 b2DGain_HP1_HP2;
- } MID_DISP_ImgPeaking_t;
- typedef struct
- {
- UINT8 bEn;
- UINT8 bCtrl1;
- UINT8 bCtrl2;
- UINT8 bWeightGain;
- UINT8 bCoring;
- UINT8 bClipping;
- UINT8 bCbCrOffset;
- } MID_DISP_ImgDCTI_t;
- typedef struct
- {
- UINT16 wContrast;
- UINT16 wSaturation;
- UINT16 wHue;
- UINT16 wYBri;
- UINT16 wUBri;
- UINT16 wVBri;
- } MID_DISP_ColorMatrix_t;
- typedef enum
- {
- DISP_3D_STATUS_RESET, // Reset the 3D setting after mode change
- DISP_3D_STATUS_ALWAYS_ON, // Keeps the 3D setting after mode change
- DISP_3D_STATUS_ONLY_2D3D_ALWAYS_ON, // Only keep 2D3D on and reset the others 3D ready when mode change
- } DISP_3D_ModeChange_Status_t;
- typedef enum
- {
- DISP_3D_FORMAT_L_EYE,
- DISP_3D_FORMAT_R_EYE, //Force 2D mode - R Image
- }DISP_3D_Format_t;
- typedef enum
- {
- /* common status values */
- DISP_SUCCESS, /* successful outcome */
- DISP_ERR_INVALID_PARAM, /* invalid parameter */
- DISP_ERR_INVALID_OP, /* requested operation is invalid */
- DISP_ERR_MEMORY_ALLOC, /* problem allocating memory */
- DISP_ERR_BUFFER_UNDERFLOW, /* not enough stream data is available to decode the next video frame */
- DISP_ERR_RESOURCE_UNAVAILABLE, /* hardware resource is in use or otherwise unavailable */
- DISP_ERR_FAILURE,
- DISP_WARN_NO_ACTION, /* the function completed successfully, but no action was taken */
- DISP_WARN_PARAM_CLIPPED, /* the function completed successfully, though a parameter was clipped to within a valid range.*/
- DISP_WARN_BUFFER_EMPTY, /* buffer became empty before the requested amount of data could be read */
- DISP_WARN_BUFFER_FULL, /* buffer became full before the requested amount of data could be written */
- } DISP_Status_t;
- enum
- {
- DISP_ColorLUT_R,
- DISP_ColorLUT_G,
- DISP_ColorLUT_B,
- DISP_ColorLUT_Y,
- DISP_ColorLUT_M,
- DISP_ColorLUT_C,
- DISP_ColorLUT_FL,
- DISP_ColorLUT_NUM // 7
- };
- typedef struct _ColorLUTAxisMID_t
- {
- UINT8 bEnable[DISP_ColorLUT_NUM];
- UINT8 SatGain[DISP_ColorLUT_NUM];
- UINT8 YGain[DISP_ColorLUT_NUM];
- UINT8 RotGain[DISP_ColorLUT_NUM];
- UINT16 RotAngle[DISP_ColorLUT_NUM];
- UINT16 Reserved;
- }ColorLUTAxisDISP_t;
- typedef struct
- {
- INT16 wHStartOffset;
- INT16 wVStartOffset;
- } MID_Disp_HVStartOffset_t;
- enum
- {
- DISP_DYNAMIC_BL_FORMAL,
- DISP_DYNAMIC_BL_ENERGY_EFFICIENCY,
- DISP_DYNAMIC_BL_T_P,
- };
- /*******************************************************************************
- * vairable
- ******************************************************************************/
- /*******************************************************************************
- * Program
- ******************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVDisplayInit(void);
- MID_DISP_Status_e MID_DISP_DTVGetDispAspect(DISP_Aspect_Ratio_e *eAspect, Boolean *fRefOverscan);
- MID_DISP_Status_e MID_DISP_DTVSetDispAspect(DISP_Aspect_Ratio_e eAspect, Boolean fRefOverscan);
- MID_DISP_Status_e MID_DISP_DTVSetWSSInfo(UINT8 bWSSInfo);
- #ifdef CONFIG_SUPPORT_3D_EN
- MID_DISP_Status_e MID_DISP_DTVSetInput3DStructure(VIP_InputStruct_3D_t e3DInputStrc);
- MID_DISP_Status_e MID_DISP_DTVSetOutput3DStructure(VIP_OutputStruct_3D_t e3DOutputStrc);
- MID_DISP_Status_e MID_DISP_DTVSet3DSwap(DISP_3D_Format_t e3DFormat);
- MID_DISP_Status_e MID_DISP_DTVSet3DDepth(INT16 e3DDepth);
- MID_DISP_Status_e MID_DISP_DTVSet3DModeChangeSt(DISP_3D_ModeChange_Status_t e3DModeChangeSt);
- MID_DISP_Status_e MID_DISP_DTVGet3DModeChangeSt(DISP_3D_ModeChange_Status_t* e3DModeChangeSt);
- #endif
- BOOL MID_DISP_DTVIsSupport3D(VIP_InputStruct_3D_t);
- MID_DISP_Status_e MID_DISP_DTVSetPQCurve(UINT8 CurveType, UINT8 CurvePointIdx, INT16 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetHue(INT16 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetSaturation(INT16 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetContrast(INT16 wValue);;
- MID_DISP_Status_e MID_DISP_DTVSetBrightness(INT16 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetSharpness(UINT8 bLevel);
- MID_DISP_Status_e MID_DISP_DTVSetColorTemp(MID_DISP_ColorTemp_Set_t wValue);
- MID_DISP_Status_e MID_DISP_DTVSetColorTempALL(MID_DISP_ColorTemp_Set_t wValue,UINT8 bGammaswitch,UINT8 bGammaIndex);
- MID_DISP_Status_e MID_DISP_DTVSetNR(INT8 eLevel);
- MID_DISP_Status_e MID_DISP_DTVSetGamma(INT8 eLevel);
- MID_DISP_Status_e MID_DISP_DTVSetBacklightLevel(Backlight_t BacklightSetting);
- void MID_DISP_DTVPrintMuteStatus();
- MID_DISP_Status_e MID_DISP_DTVSetVideoMute(UINT8 bR, UINT8 bG, UINT8 bB);
- MID_DISP_Status_e MID_DISP_DTVSetVideoUnmute(void);
- void MID_DISP_DTVSetMuteColor(UINT8 bR, UINT8 bG, UINT8 bB);
- void MID_DISP_DTVSetTVFEMuteColorByAPP(BOOL fEn);
- #ifdef CONFIG_QSD
- MID_DISP_Status_e MID_DISP_DTVSetMTMute(UINT8 bR, UINT8 bG, UINT8 bB);
- void MID_DISP_DTVSetMTMuteColor(UINT8 bR, UINT8 bG, UINT8 bB);
- MID_DISP_Status_e MID_DISP_DTVSetMTUnmute(void);
- #endif
- MID_DISP_Status_e MID_DISP_DTVSetMointerMode(BOOL fMirEn, MID_DISP_MointerOutputFormat_t bFormat, BOOL fOSDEn);
- /******************************************************************************/
- /**
- * @brief Select CVBS Output source
- *
- * @param eChannel Specify the path of source
- * @param *peType Specify the source of type
- * @param *pConfig Specify the source of pin configuration
- *
- * @return MID_DISP_Status_e Middwares Standard Return
- * @retval MIDDISP_SUCCESS if successful
- * @retval MIDDISP_ERR_FAILURE if eChannel is not available in this chip or handler isn't registered
- *
- ******************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVSetCVBSOutputSource(MID_DISP_CVBSOutputSrcType_t pCurrSrc, Boolean bMute);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_DTVBlankingCVBSOutput
- **
- ** DESCRIPTION : Blanking CVBS signal on DTV source
- ** PARAMETERS :
- ** TRUE for masking displayed picture(by setting mask window to show background color);
- ** FALSE for normal display(by setting mask window to show normal display).
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_ERR_INVALID_PARAM
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVBlankingCVBSOutput(Boolean bBlanking);
- MID_DISP_Status_e MID_DISP_DTVSetPause(Boolean bEnable);
- MID_DISP_Status_e MID_DISP_DTVGetPause(Boolean* pbEnable);
- MID_DISP_Status_e MID_DISP_DTVGetTimingInfo(PMID_InputInfo_t peRetTimingInfo);
- MID_DISP_Status_e MID_DISP_DTVSetCropWindowHStartOffset(INT16 wHStartPosition, INT16 sbOffset);
- MID_DISP_Status_e MID_DISP_DTVSetCropWindowVStartOffset(INT16 wVStartPosition, INT16 sbOffset);
- MID_DISP_Status_e MID_DISP_DTVSetCVD2HActiveStart(UINT16 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetCVD2VActiveStart(UINT8 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetOverscan(Boolean fOverscanEn, UINT16 wVTop, UINT16 wVBottom, UINT16 wHLeft, UINT16 wHRight);
- MID_DISP_Status_e MID_DISP_DTVGetOverscan(UINT8 *fOverscanEn, UINT16 *wVTop, UINT16 *wVBottom, UINT16 *wHLeft, UINT16 *wHRight, BOOL *fUnitByRatio);
- MID_DISP_Status_e MID_DISP_DTVSetExtsInpuwWin(UINT16 usHStart, UINT16 usHEnd, UINT16 usVStart, UINT16 usVEnd);
- MID_DISP_Status_e MID_DISP_DTVGetExtsInpuwWin(UINT16* usHStart, UINT16* usHEnd, UINT16* usVStart, UINT16* usVEnd);
- MID_DISP_Status_e MID_DISP_DTVSetHDMIScreenMode(VIP_HDMI_ScreenMode eMode);
- MID_DISP_Status_e MID_DISP_DTVGetPanelResolution(UINT32 *dWidth, UINT32 *dHeight);
- MID_DISP_Status_e MID_DISP_Zoom_GetSrcOriResolution(UINT16 *dWidth, UINT16 *dHeight);
- MID_DISP_Status_e MID_DISP_Zoom_SetSrcResolution(BOOL en, UINT16 x, UINT16 y, UINT16 dWidth, UINT16 dHeight);
- MID_DISP_Status_e MID_DISP_Zoom_SetDispResolution(BOOL en, UINT16 x, UINT16 y, UINT16 dWidth, UINT16 dHeight);
- MID_DISP_Status_e MID_DISP_DTVGetYAvg(UINT32* YAvg);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_DTVSetFlip
- **
- ** DESCRIPTION :
- ** Set H/V flip (Used in system initialize). Flip will happen when source change
- **
- ** PARAMETERS :
- ** eFlipType MID_DISP_FLIP_TYPE_ONLY_H H flip
- ** MID_DISP_FLIP_TYPE_ONLY_V V flip
- ** MID_DISP_FLIP_TYPE_BOTH_H_V H and V flip
- ** MID_DISP_FLIP_TYPE_NO_FLIP Do not flip
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_FAILURE
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVSetFlip(MID_DISP_FlipType_t eFlipType);
- MID_DISP_Status_e MID_DISP_DTVGetFlip(MID_DISP_FlipType_t *eFlipType);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_GetSource
- **
- ** DESCRIPTION :
- ** Changing source.
- **
- ** PARAMETERS :
- ** TblIdx -Src table index
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_FAILURE
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVGetSource(SRCTYPE_t *pSrc);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_SetSourceEx
- **
- ** DESCRIPTION :
- ** Changing source with aspect ratio and callback function.
- **
- ** PARAMETERS :
- ** pCurrSrc -Src table ptr
- ** pFunc PCB AV routing
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_FAILURE
- *****************************************************************************/
- #ifdef CONFIG_SCART_SUPPORT
- MID_DISP_Status_e MID_DISP_DTVSetSourceEx(InputSrc_t CurrSrc, DRV_ScartSrcType_t ScartIn, InputVideoConf_st CurrSrcPin);
- #else
- MID_DISP_Status_e MID_DISP_DTVSetSourceEx(InputSrc_t CurrSrc, InputVideoConf_st CurrSrcPin);
- #endif
- MID_DISP_Status_e MID_DISP_CheckTiming(UINT8 *pflag);
- MID_DISP_Status_e MID_DISP_DTVUpdateScalingSilence(Boolean bSilence);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_Img_GetColorTemp
- **
- ** DESCRIPTION : Chage the getting method of color temp
- **
- ** PARAMETERS :
- ** ptr, bLevel,bSource
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_ERR_INVALID_PARAM
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_Img_GetColorTemp(MID_DISP_ColorTemp_Set_t *ptr,UINT8 bLevel,UINT8 bSource);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_DTVIsFieldType
- **
- ** DESCRIPTION :
- **
- ** PARAMETERS :
- **
- **
- ** RETURN VALUES:
- ** TRUE : interlace source
- ** FALSE: progressive source
- *****************************************************************************/
- bool MID_DISP_DTVIsFieldType(void);
- MID_DISP_Status_e MID_DISP_DTVGetVideoMute(MID_DISP_MUTE_ST *eMuteSt);
- /*****************************************************************************
- ** FUNCTION : MID_TvDecPQ_GetStatus
- **
- ** DESCRIPTION :
- ** Get TV decoder format
- **
- ** PARAMETERS : peRetStatus, peRetFromat, peRetSource
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_TvDecPQ_GetStatus(MID_TvDecPQFormatType_t* peRetFromat);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_HDMIGetRGBRange
- **
- ** DESCRIPTION :
- ** Get HDMI input Range
- **
- ** PARAMETERS : pRange
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_HDMIGetRGBRange(MID_HDMIRGBRange_t* pRange);
- #endif //__MID_ATV_DISPLAY_H
- MID_DISP_Status_e MID_DISP_MediaSetSource(input_type_t MediaSrc);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_DTVGetInputType
- **
- ** DESCRIPTION :
- ** Get current Input Type.
- **
- ** PARAMETERS :
- ** *pInputType -Input Type pointer
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_FAILURE
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVGetInputType(input_type_t *pInputType);
- /*****************************************************************************
- ** FUNCTION : MID_DISP_DTVSetInputType
- **
- ** DESCRIPTION :
- ** Set current Input Type.
- **
- ** PARAMETERS :
- ** eInputType -Input Type value
- **
- ** RETURN VALUES:
- ** MID_DTV_SUCCESS
- ** MID_DTV_FAILURE
- *****************************************************************************/
- MID_DISP_Status_e MID_DISP_DTVSetInputType(input_type_t eInputType);
- MID_DISP_Status_e MID_DISP_DTVSetDVDSourceIndex(UINT8 bIsDVDSource);
- MID_DISP_Status_e MID_DISP_DTVSetNetorkSourceIndex(UINT8 bIsNetworkSource);
- void MID_DISP_DTVGetISRMuteStatus(VIP_VideoMuteStatus_e *peRetISRStatus);
- MID_DISP_Status_e MID_DISP_DTVSetHdmiRGBRange(INT16 wValue);
- MID_DISP_Status_e MID_DISP_DTVSetPQ_CONTRAST_LEVEL(UINT16 bLevel);
- MID_DISP_Status_e MID_DISP_DTVSePQ_CHROMA_LEVEL(UINT16 bLevel);
- MID_DISP_Status_e MID_DISP_DTVSetPQ_ALPHA_MODE1(UINT8 bValue);
- MID_DISP_Status_e MID_DISP_DTVSetPQ_ALPHA_MODE2(UINT8 bValue);
- MID_DISP_Status_e MID_DISP_DTVSetPQ_ALPHA_MODE3(UINT8 bValue);
- MID_DISP_Status_e MID_DISP_DTVSetPQ_ALPHA_MODE4(UINT8 bValue);
- MID_DISP_Status_e MID_DISP_DTVSetMonflg(UINT32 dMonflg);
- MID_DISP_Status_e MID_DISP_DTVSetDynamicBLType(UINT8 bLevel);
- #ifdef CONFIG_SUPPORT_USB_MCAST
- MID_DISP_Status_e MID_DISP_NetSetSource(input_type_t SrcType);
- #endif
- MID_DISP_Status_e MID_DISP_SetWindowSize(UINT8 bFullScreen, UINT32 XStart, UINT32 YStart, UINT32 XEnd, UINT32 YEnd);
- #ifdef CONFIG_PROJECTOR_ASPECT
- void MID_SetZoomPercent(INT32 HPercent, INT32 VPercent);
- void MID_SetZoomAspect(INT32 HPercent, INT32 VPercent);
- #endif
- #ifdef CONFIG_SUPPORT_MONITOR_POWERSAVE
- UINT8 MID_DISP_DTV_Get_Wakeup_Status(void);
- void MID_DISP_DTV_Set_Wakeup_Status(UINT8 status);
- #endif
- MID_DISP_Status_e MID_DISP_DTVGetRGBMaxMin(INT32* iRMax, INT32* iGMax, INT32* iBMax, INT32* iRMin, INT32* iGMin, INT32* iBMin);
- MID_DISP_Status_e MID_DISP_DTVGetYHistOverValCnt(INT32 OverValue, INT32* iConut);
|