123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- #ifndef _DRV_HDMI_INTERNAL_H
- #define _DRV_HDMI_INTERNAL_H
- #include "drv_types.h"
- #include "plf_timing_id.h"
- #include "drv_hdmi_external.h"
- #if 0
- typedef enum {
- HDMI_AFD_SOURCE_NODATA,
- HDMI_AFD_SOURCE_4_3,
- HDMI_AFD_SOURCE_16_9,
- HDMI_AFD_SOURCE_MAX
- } HDMI_AFD_SOURCE_ASPECT_t;
- typedef enum {
- HDMI_AFD_TYPE_BOX_16_9_TOP = 2, //0010
- HDMI_AFD_TYPE_BOX_14_9_TOP = 3, //0011
- HDMI_AFD_TYPE_BOX_16_9_CENTER = 4, //0100
- HDMI_AFD_TYPE_NONE = 8, //1000
- HDMI_AFD_TYPE_4_3_CENTER = 9, //1001
- HDMI_AFD_TYPE_16_9_CENTER = 10, //1010
- HDMI_AFD_TYPE_14_9_CENTER = 11, //1011
- HDMI_AFD_TYPE_RESERVED = 12, //1100
- HDMI_AFD_TYPE_4_3_SP_14_9 = 13, //1101
- HDMI_AFD_TYPE_16_9_SP_14_9 = 14, //1110
- HDMI_AFD_TYPE_16_9_SP_4_3 = 15, //1111
- HDMI_AFD_TYPE_MAX
- } HDMI_AFD_TYPE_t;
- #endif
- //HDMI PLL mode
- typedef enum{
- //Common
- HDMI_PLL_MODE_INIT, //initial HDMI PLL
- HDMI_PLL_MODE_ON, //turn on power
- HDMI_PLL_MODE_OFF, //turn off power
- //HDMI
- HDMI_PLL_MODE_HDMI_INIT,
- HDMI_PLL_MODE_HDMI_ENABLE,
- HDMI_PLL_MODE_HDMI_DISABLE,
- #if (CONFIG_CHIPID == 0x8506)|| (CONFIG_CHIPID == 0x6710)
- HDMI_PLL_MODE_HDMI_FREQ_6,
- HDMI_PLL_MODE_HDMI_FREQ_7_F,
- HDMI_PLL_MODE_HDMI_FREQ_10_1E,
- HDMI_PLL_MODE_HDMI_FREQ_1F_32,
- HDMI_PLL_MODE_HDMI_FREQ_33_3D,
- HDMI_PLL_MODE_HDMI_FREQ_3E_60,
- HDMI_PLL_MODE_HDMI_FREQ_61,
- #elif (CONFIG_CHIPID == 0x533)|| (CONFIG_CHIPID == 0x131)
- HDMI_PLL_MODE_HDMI_FREQ_6,
- HDMI_PLL_MODE_HDMI_FREQ_7_E,
- HDMI_PLL_MODE_HDMI_FREQ_F_1E,
- HDMI_PLL_MODE_HDMI_FREQ_1F_32,
- HDMI_PLL_MODE_HDMI_FREQ_33_3F,
- HDMI_PLL_MODE_HDMI_FREQ_40_60,
- HDMI_PLL_MODE_HDMI_FREQ_61,
- #elif (CONFIG_CHIPID == 0x331) || (CONFIG_CHIPID == 0x531)
- HDMI_PLL_MODE_HDMI_FREQ_6,
- HDMI_PLL_MODE_HDMI_FREQ_7_A,
- HDMI_PLL_MODE_HDMI_FREQ_B_19,
- HDMI_PLL_MODE_HDMI_FREQ_1A_32,
- HDMI_PLL_MODE_HDMI_FREQ_33_3F,
- #ifdef CONFIG_HDMI_ADAPTIVE_EQ
- HDMI_PLL_MODE_HDMI_FREQ_33_3F_MODE2,
- #endif
- HDMI_PLL_MODE_HDMI_FREQ_40_60,
- HDMI_PLL_MODE_HDMI_FREQ_61,
- #endif
- //DEMOD
- HDMI_PLL_MODE_ADEMOD_INIT,
- HDMI_PLL_MODE_ADEMOD_ENABLE,
- HDMI_PLL_MODE_ADEMOD_DISABLE,
- HDMI_PLL_MODE_DDEMOD_INIT,
- HDMI_PLL_MODE_DDEMOD_ENABLE_LDO_SETTING,
- HDMI_PLL_MODE_DDEMOD_DISABLE,
- }HDMI_PLL_MODE_e;
- enum
- {
- HDMI_NORMAL=0 ,
- HDMI_PD ,
- };
- enum
- {
- VERTICES = 0,
- GAMUT_RANGE,
- };
- enum
- {
- xvYCC_RGB=0,
- xvYCC601,
- xvYCC709,
- XYZ,
- xvYCC_UNKNOWN_METRY,
- NoxvYCC = 0xff,
- };
- typedef struct _xvYccVertices
- {
- UINT16 usBlack_MAP_Y;
- UINT16 usBlack_MAP_Cb;
- UINT16 usBlack_MAP_Cr;
- UINT16 usRed_MAP_Y;
- UINT16 usRed_MAP_Cb;
- UINT16 usRed_MAP_Cr;
- UINT16 usGreen_MAP_Y;
- UINT16 usGreen_MAP_Cb;
- UINT16 usGreen_MAP_Cr;
- UINT16 usBlue_MAP_Y;
- UINT16 usBlue_MAP_Cb;
- UINT16 usBlue_MAP_Cr;
- }xvYccVertices;
- typedef struct _xvYccGamutRange
- {
- UINT16 usMin_Red_data;
- UINT16 usMax_Red_data;
- UINT16 usMin_Green_data;
- UINT16 usMax_Green_data;
- UINT16 usMin_Blue_data;
- UINT16 usMax_Blue_data;
- }xvYccGamutRange;
- typedef struct _VIP_xvYccData
- {
- UINT8 ucFormat; //0:VERTICES 1:GAMUT_RANGE
- UINT8 ucGBD_Color_Space; //0:xvYCC_RGB 1:xvYCC601 2:xvYCC709 3:XYZ 4:xvYCC_UNKNOWN_METRY
- UINT8 ucGBD_Color_Precision; //8bit, 10bit, 12bit
- xvYccVertices Vertices;
- xvYccGamutRange GamutRange;
- }VIP_xvYccData, *PVIP_xvYccData;
- typedef enum
- {
- HDMI_POWER_OFF_REASON_KEYPAD= 1,
- HDMI_POWER_OFF_REASON_REMOTE_IR ,
- HDMI_POWER_OFF_REASON_NOSIGNAL ,
- HDMI_POWER_OFF_OPTION_MAX ,
- }HDMI_POWER_OFF_OPTION;
- /* HDMI basic function calls */
- void DRV_HDMI_SW_HDCP_RSTN(void);
- void DRV_HDMI_Power(BOOL bPwr);
- void DRV_HDMI_IR_PowerOff(UINT32 power_down_option);
- INT32 DRV_HDMI_Init(void);
- void DRV_HDMI_Exit(void);
- INT32 DRV_HDMI_Enable(INT32 src);
- void DRV_HDMI_Disable(void);
- BOOL DRV_HDMI_IsHDMIMode( void );
- /* HDMI Audio related function calls */
- void DRV_HDMI_AudioEnable(void);
- void DRV_HDMI_AudioDisable(void);
- void DRV_HDMI_AudioRestart(void);
- void DRV_HDMI_AudioSetOutputPath(UINT8 menu_select);
- /* HDCP Key related function calls */
- BOOL DRV_HDMI_CheckHdcpKey( void );
- void DRV_HDMI_UpdateHDCPKey( UINT8 *key_ptr );
- void DRV_HDMI_GetHDCPKeyKSV( UINT8 *ksv );
- #ifdef CONFIG_SUPPORT_STORE_HDCP2X_TO_FLASH
- void DRV_HDMI_UpdateHDCP2XKey(UINT8 *key_ptr);
- #endif
- /* MHL Receive IR Key */
- #if (CONFIG_CHIPID!=0x330)
- #ifdef CONFIG_HDMI_SUPPORT_MHL
- void DRV_MHL_SendRcpCmd(MHL_RCP_CMD_e eRcpCmd);
- void DRV_MHL_SendRcpPressAndHoldCmd(MHL_RCP_CMD_e eRcpCmd ,BOOL fPress);
- void DRV_MHL_GetMHLAppInstanceData(MHLAppInstanceData_t * pMHLdata);
- #endif
- #endif
- /* Customize */
- void DRV_HDMI_SetCustomization(HDMI_Customize_st stHdmi_customize); //Set HDMI customization setting
- /* set HDMI PLL for HDMI/DEMOD */
- void HDMI_Set_PLL_Mode(HDMI_PLL_MODE_e eHDMI_PLL_MODE);
- /* set DEMOD Clock Div and Gain Bit*/
- void HDMI_Set_Demod_Clock_Div(UINT8 FEBDIV, UINT8 PLLGainBit);
- /*get HDMI PLL register status*/
- UINT8 HDMI_Get_HDMI_LDO_PWD(void);
- UINT8 HDMI_Get_HDMI_PLL_PWDN_DEMOD(void);
- UINT8 HDMI_Get_HDMI_COMP_PD(void);
- UINT8 HDMI_Get_HDMI_PLL_RESETJ(void);
- UINT8 HDMI_Get_HDMI_DEMOD_EN(void);
- UINT8 HDMI_Get_HDMI_R_SP5_PLL_CTP_PWDJ(void);
- /* set HDMI EQ */
- void HDMI_Set_EQ_Mode(HDMI_EQ_INDEX_e eHDMI_EQ_MODE);
- #ifdef CONFIG_SUPPORT_DOLBY_AUDIO
- /* set HDMI EDID Atmos */
- void HDMI_Set_EDID_ATMOS_Mode(BOOL eATMOS);
- void HDMI_Change_EDID_DD_Plus_Data(BOOL Atmos_Mode);
- #endif
- #endif /* __DRV_HDMI_H__ */
|