00001 /** 00002 * Copyright (C) 2007 NXP N.V., All Rights Reserved. 00003 * This source code and any compilation or derivative thereof is the proprietary 00004 * information of NXP N.V. and is confidential in nature. Under no circumstances 00005 * is this software to be exposed to or placed under an Open Source License of 00006 * any type without the expressed written permission of NXP N.V. 00007 * 00008 * \file tmdlHdmiTx_Functions.h 00009 * 00010 * \version $Revision: 1 $ 00011 * 00012 * \date $Date: 02/08/07 8:32 $ 00013 * 00014 * \brief devlib driver component API for the TDA998x HDMI Transmitters 00015 * 00016 * \section refs Reference Documents 00017 * HDMI Tx Driver - FRS.doc, 00018 * HDMI Tx Driver - tmdlHdmiTx - SCS.doc 00019 * 00020 * \section info Change Information 00021 * 00022 * \verbatim 00023 00024 $History: tmdlHdmiTx_Functions.h $ 00025 * 00026 * ***************** Version 1 ***************** 00027 * User: Demoment Date: 02/08/07 Time: 8:32 00028 * Updated in $/Source/tmdlHdmiTx/inc 00029 * initial version 00030 * 00031 00032 \endverbatim 00033 * 00034 */ 00035 00036 #ifndef TMDLHDMITX_FUNCTIONS_H 00037 #define TMDLHDMITX_FUNCTIONS_H 00038 00039 /*============================================================================*/ 00040 /* INCLUDE FILES */ 00041 /*============================================================================*/ 00042 00043 #include "tmNxTypes.h" 00044 #include "tmdlHdmiTx_Types.h" 00045 00046 #ifdef __cplusplus 00047 extern "C" { 00048 #endif 00049 00050 /*============================================================================*/ 00051 /* EXTERN FUNCTION PROTOTYPES */ 00052 /*============================================================================*/ 00053 00054 /*****************************************************************************/ 00055 /** 00056 \brief Get the software version of the driver. 00057 00058 \param pSWVersion Pointer to the version structure. 00059 00060 \return The call result: 00061 - TM_OK: the call was successful 00062 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00063 inconsistent 00064 00065 ******************************************************************************/ 00066 tmErrorCode_t tmdlHdmiTxGetSWVersion 00067 ( 00068 tmSWVersion_t *pSWVersion 00069 ); 00070 00071 /*****************************************************************************/ 00072 /** 00073 \brief Get the number of available HDMI transmitters devices in the system. 00074 A unit directly represents a physical device. 00075 00076 \param pUnitCount Pointer to the number of available units. 00077 00078 \return The call result: 00079 - TM_OK: the call was successful 00080 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00081 inconsistent 00082 00083 ******************************************************************************/ 00084 tmErrorCode_t tmdlHdmiTxGetNumberOfUnits 00085 ( 00086 UInt32 *pUnitCount 00087 ); 00088 00089 /*****************************************************************************/ 00090 /** 00091 \brief Get the capabilities of unit 0. Capabilities are stored into a 00092 dedicated structure and are directly read from the HW device. 00093 00094 \param pCapabilities Pointer to the capabilities structure. 00095 00096 \return The call result: 00097 - TM_OK: the call was successful 00098 - TMDL_ERR_DLHDMITX_BAD_UNIT_NUMBER: the unit number is wrong or 00099 the receiver instance is not initialised 00100 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00101 inconsistent 00102 - TMDL_ERR_DLHDMITX_BAD_PARAMETER: a parameter is invalid or out 00103 of range 00104 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00105 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00106 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00107 00108 ******************************************************************************/ 00109 tmErrorCode_t tmdlHdmiTxGetCapabilities 00110 ( 00111 tmdlHdmiTxCapabilities_t *pCapabilities 00112 ); 00113 00114 /*****************************************************************************/ 00115 /** 00116 \brief Get the capabilities of a specific unit. Capabilities are stored 00117 into a dedicated structure and are directly read from the HW 00118 device. 00119 00120 \param unit Unit to be probed. 00121 \param pCapabilities Pointer to the capabilities structure. 00122 00123 \return The call result: 00124 - TM_OK: the call was successful 00125 - TMDL_ERR_DLHDMITX_BAD_UNIT_NUMBER: the unit number is wrong or 00126 the receiver instance is not initialised 00127 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00128 inconsistent 00129 - TMDL_ERR_DLHDMITX_BAD_PARAMETER: a parameter is invalid or out 00130 of range 00131 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00132 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00133 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00134 00135 ******************************************************************************/ 00136 tmErrorCode_t tmdlHdmiTxGetCapabilitiesM 00137 ( 00138 tmUnitSelect_t unit, 00139 tmdlHdmiTxCapabilities_t *pCapabilities 00140 ); 00141 00142 /*****************************************************************************/ 00143 /** 00144 \brief Open unit 0 of HdmiTx driver and provides the instance number to 00145 the caller. Note that one unit of HdmiTx represents one physical 00146 HDMI transmitter and that only one instance per unit can be opened. 00147 00148 \param pInstance Pointer to the variable that will receive the instance 00149 identifier. 00150 00151 \return The call result: 00152 - TM_OK: the call was successful 00153 - TMDL_ERR_DLHDMITX_BAD_UNIT_NUMBER: the unit number is wrong or 00154 the transmitter instance is not initialised 00155 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00156 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00157 inconsistent 00158 - TMDL_ERR_DLHDMITX_RESOURCE_OWNED: the resource is already in use 00159 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 00160 the function 00161 - TMDL_ERR_DLHDMITX_INIT_FAILED: the unit instance is already 00162 initialised or something wrong happened at lower level. 00163 - TMDL_ERR_DLHDMITX_NO_RESOURCES: the resource is not available 00164 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00165 - TMBSL_ERR_HDMI_NOT_INITIALIZED: the unit is not initialized 00166 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter is invalid or out 00167 of range 00168 - TMBSL_ERR_HDMI_INIT_FAILED: the unit instance is already 00169 initialised 00170 - TMBSL_ERR_HDMI_COMPATIBILITY: the driver is not compatiable 00171 with the internal device version code 00172 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00173 - TMBSL_ERR_HDMI_I2C_READ: failed when reading the I2C bus 00174 00175 ******************************************************************************/ 00176 tmErrorCode_t tmdlHdmiTxOpen 00177 ( 00178 tmInstance_t *pInstance 00179 ); 00180 00181 /*****************************************************************************/ 00182 /** 00183 \brief Open a specific unit of HdmiTx driver and provides the instance 00184 number to the caller. Note that one unit of HdmiTx represents one 00185 physical HDMI transmitter and that only one instance per unit can be 00186 opened. This function switches driver's state machine to 00187 "initialized" state. 00188 00189 \param pInstance Pointer to the structure that will receive the instance 00190 identifier. 00191 \param unit Unit number to be opened. 00192 00193 \return The call result: 00194 - TM_OK: the call was successful 00195 - TMDL_ERR_DLHDMITX_BAD_UNIT_NUMBER: the unit number is wrong or 00196 the transmitter instance is not initialised 00197 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00198 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00199 inconsistent 00200 - TMDL_ERR_DLHDMITX_RESOURCE_OWNED: the resource is already in use 00201 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 00202 the function 00203 - TMDL_ERR_DLHDMITX_INIT_FAILED: the unit instance is already 00204 initialised or something wrong happened at lower level. 00205 - TMDL_ERR_DLHDMITX_NO_RESOURCES: the resource is not available 00206 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00207 - TMBSL_ERR_HDMI_NOT_INITIALIZED: the unit is not initialized 00208 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter is invalid or out 00209 of range 00210 - TMBSL_ERR_HDMI_INIT_FAILED: the unit instance is already 00211 initialised 00212 - TMBSL_ERR_HDMI_COMPATIBILITY: the driver is not compatiable 00213 with the internal device version code 00214 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00215 - TMBSL_ERR_HDMI_I2C_READ: failed when reading the I2C bus 00216 00217 ******************************************************************************/ 00218 tmErrorCode_t tmdlHdmiTxOpenM 00219 ( 00220 tmInstance_t *pInstance, 00221 tmUnitSelect_t unit 00222 ); 00223 00224 /*****************************************************************************/ 00225 /** 00226 \brief Close an instance of HdmiTx driver. 00227 00228 \param instance Instance identifier. 00229 00230 \return The call result: 00231 - TM_OK: the call was successful 00232 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00233 out of range 00234 - TMDL_ERR_DLHDMITX_RESOURCE_NOT_OWNED: the caller does not own 00235 the resource 00236 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00237 00238 ******************************************************************************/ 00239 tmErrorCode_t tmdlHdmiTxClose 00240 ( 00241 tmInstance_t instance 00242 ); 00243 00244 /*****************************************************************************/ 00245 /** 00246 \brief Set the power state of an instance of the HDMI transmitter. 00247 00248 \param instance Instance identifier. 00249 \param powerState Power state to set. 00250 00251 \return The call result: 00252 - TM_OK: the call was successful 00253 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00254 out of range 00255 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00256 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00257 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00258 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00259 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00260 00261 ******************************************************************************/ 00262 tmErrorCode_t tmdlHdmiTxSetPowerState 00263 ( 00264 tmInstance_t instance, 00265 tmPowerState_t powerState 00266 ); 00267 00268 /*****************************************************************************/ 00269 /** 00270 \brief Get the power state of an instance of the HDMI transmitter. 00271 00272 \param instance Instance identifier. 00273 \param pPowerState Pointer to the power state. 00274 00275 \return The call result: 00276 - TM_OK: the call was successful 00277 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00278 out of range 00279 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00280 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00281 inconsistent 00282 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00283 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00284 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00285 00286 ******************************************************************************/ 00287 tmErrorCode_t tmdlHdmiTxGetPowerState 00288 ( 00289 tmInstance_t instance, 00290 tmPowerState_t *pPowerState 00291 ); 00292 00293 /*****************************************************************************/ 00294 /** 00295 \brief Set the configuration of instance attributes. This function is 00296 required by DVP architecture rules but actually does nothing in this 00297 driver 00298 00299 \param instance Instance identifier. 00300 00301 \return The call result: 00302 - TM_OK: the call was successful 00303 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00304 out of range 00305 00306 ******************************************************************************/ 00307 tmErrorCode_t tmdlHdmiTxInstanceConfig 00308 ( 00309 tmInstance_t instance 00310 ); 00311 00312 /*****************************************************************************/ 00313 /** 00314 \brief Setup the instance with its configuration parameters. This function 00315 allows basic instance configuration like enabling HDCP, choosing 00316 HDCP encryption mode or enabling HDCP repeater mode. 00317 00318 \param instance Instance identifier. 00319 \param pSetupInfo Pointer to the structure containing all setup parameters. 00320 00321 \return The call result: 00322 - TM_OK: the call was successful 00323 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00324 out of range 00325 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00326 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00327 inconsistent 00328 - TMDL_ERR_DLHDMITX_RESOURCE_NOT_OWNED: the caller does not own 00329 the resource 00330 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 00331 the function 00332 00333 ******************************************************************************/ 00334 tmErrorCode_t tmdlHdmiTxInstanceSetup 00335 ( 00336 tmInstance_t instance, 00337 tmdlHdmiTxInstanceSetupInfo_t *pSetupInfo 00338 ); 00339 00340 /*****************************************************************************/ 00341 /** 00342 \brief Get instance setup parameters. 00343 00344 \param instance Instance identifier. 00345 \param pSetupInfo Pointer to the structure that will receive setup 00346 parameters. 00347 00348 \return The call result: 00349 - TM_OK: the call was successful 00350 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00351 out of range 00352 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00353 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00354 inconsistent 00355 - TMDL_ERR_DLHDMITX_RESOURCE_NOT_OWNED: the caller does not own 00356 the resource 00357 00358 ******************************************************************************/ 00359 tmErrorCode_t tmdlHdmiTxGetInstanceSetup 00360 ( 00361 tmInstance_t instance, 00362 tmdlHdmiTxInstanceSetupInfo_t *pSetupInfo 00363 ); 00364 00365 /*****************************************************************************/ 00366 /** 00367 \brief Make device library handle an incoming interrupt. This function is 00368 used by application to tell the device library that the hardware 00369 sent an interrupt. 00370 00371 \param instance Instance identifier. 00372 00373 \return The call result: 00374 - TM_OK: the call was successful 00375 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00376 out of range 00377 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00378 - TMDL_ERR_DLHDMITX_RESOURCE_NOT_OWNED: the caller does not own 00379 the resource 00380 - TMDL_ERR_DLHDMITX_FULL: the queue is full 00381 00382 ******************************************************************************/ 00383 tmErrorCode_t tmdlHdmiTxHandleInterrupt 00384 ( 00385 tmInstance_t instance 00386 ); 00387 00388 /*****************************************************************************/ 00389 /** 00390 \brief Register event callbacks. Only one callback is registered through 00391 this API. This callback will received the type of event that 00392 occured throug a dedicated parameter and will be called as many 00393 times as there is pending events. 00394 This function is synchronous. 00395 This function is ISR friendly. 00396 00397 \param instance Instance identifier. 00398 \param pCallback Pointer to the callback function that will handle events 00399 from the devlib. 00400 00401 \return The call result: 00402 - TM_OK: the call was successful 00403 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00404 out of range 00405 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00406 - TMDL_ERR_DLHDMITX_RESOURCE_NOT_OWNED: the caller does not own 00407 the resource 00408 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 00409 the function 00410 00411 ******************************************************************************/ 00412 tmErrorCode_t tmdlHdmiTxRegisterCallbacks 00413 ( 00414 tmInstance_t instance, 00415 ptmdlHdmiTxCallback_t pCallback 00416 ); 00417 00418 /*****************************************************************************/ 00419 /** 00420 \brief This function allows enabling a specific event. By default, all 00421 events are disabled, except input lock. 00422 00423 \param instance Instance identifier. 00424 \param event Event to enable. 00425 00426 \return The call result: 00427 - TM_OK: the call was successful 00428 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00429 out of range 00430 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00431 00432 ******************************************************************************/ 00433 tmErrorCode_t tmdlHdmiTxEnableEvent 00434 ( 00435 tmInstance_t instance, 00436 tmdlHdmiTxEvent_t event 00437 ); 00438 00439 /*****************************************************************************/ 00440 /** 00441 \brief This function allows disabling a specific event. By default, all 00442 events are disabled, except input lock. 00443 00444 \param instance Instance identifier. 00445 \param event Event to disable. 00446 00447 \return The call result: 00448 - TM_OK: the call was successful 00449 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00450 out of range 00451 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00452 00453 ******************************************************************************/ 00454 tmErrorCode_t tmdlHdmiTxDisableEvent 00455 ( 00456 tmInstance_t instance, 00457 tmdlHdmiTxEvent_t event 00458 ); 00459 00460 /*****************************************************************************/ 00461 /** 00462 \brief Get specifications of a given video format. Application can use 00463 this function to retreives all specifications (frequencies, 00464 resolution, etc.) of a given IA/CEA 861-D video format. 00465 This function is synchronous. 00466 This function is ISR friendly. 00467 00468 \param instance Instance identifier. 00469 \param resolutionID ID of the resolution to retrieve specs from. 00470 \param pResolutionSpecs Pointer to the structure receiving specs. 00471 00472 \return The call result: 00473 - TM_OK: the call was successful 00474 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00475 out of range 00476 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00477 inconsistent 00478 - TMDL_ERR_DLHDMITX_RESOLUTION_UNKNOWN: the resolution is unknown 00479 00480 ******************************************************************************/ 00481 tmErrorCode_t tmdlHdmiTxGetVideoFormatSpecs 00482 ( 00483 tmInstance_t instance, 00484 tmdlHdmiTxVidFmt_t resolutionID, 00485 tmdlHdmiTxVidFmtSpecs_t *pResolutionSpecs 00486 ); 00487 00488 /*****************************************************************************/ 00489 /** 00490 \brief Configures all input and output parameters : format, modes, rates, 00491 etc. This is the main configuration function of the driver. Here 00492 are transmitted all crucial input and output parameters of the 00493 device. 00494 This function is synchronous. 00495 This function is not ISR friendly. 00496 00497 \param instance Instance identifier. 00498 \param videoInputConfig Configuration of the input video. 00499 \param videoOutputConfig Configuration of the output video. 00500 \param audioInputConfig Configuration of the input audio. 00501 \param sinkType Type of sink connected to the output of the Tx. 00502 00503 \return The call result: 00504 - TM_OK: the call was successful 00505 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00506 out of range 00507 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00508 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00509 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00510 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00511 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00512 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00513 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00514 00515 ******************************************************************************/ 00516 tmErrorCode_t tmdlHdmiTxSetInputOutput 00517 ( 00518 tmInstance_t instance, 00519 tmdlHdmiTxVideoInConfig_t videoInputConfig, 00520 tmdlHdmiTxVideoOutConfig_t videoOutputConfig, 00521 tmdlHdmiTxAudioInConfig_t audioInputConfig, 00522 tmdlHdmiTxSinkType_t sinkType 00523 ); 00524 00525 /*****************************************************************************/ 00526 /** 00527 \brief Configures audio input parameters : format, rate, etc. 00528 This function is similar to tmdlHdmiTxSetInputOutput except that 00529 video is not reconfigured. 00530 This function is synchronous. 00531 This function is not ISR friendly. 00532 00533 \param instance Instance identifier. 00534 \param audioInputConfig Configuration of the input audio. 00535 \param sinkType Type of sink connected to the output of the Tx. 00536 00537 \return The call result: 00538 - TM_OK: the call was successful 00539 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00540 out of range 00541 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00542 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00543 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00544 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00545 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00546 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00547 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00548 00549 ******************************************************************************/ 00550 tmErrorCode_t tmdlHdmiTxSetAudioInput 00551 ( 00552 tmInstance_t instance, 00553 tmdlHdmiTxAudioInConfig_t audioInputConfig, 00554 tmdlHdmiTxSinkType_t sinkType 00555 ); 00556 00557 /*****************************************************************************/ 00558 /** 00559 \brief Defines the content of AVI infoframe to be sent by Tx device. 00560 This function is synchronous. 00561 This function is not ISR friendly. 00562 00563 \param instance Instance identifier. 00564 \param enable Enable/disable infoframe insertion. 00565 \param pAviIfData Pointer to the structure containing AVI infoframe 00566 parameters. 00567 00568 \return The call result: 00569 - TM_OK: the call was successful 00570 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00571 out of range 00572 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00573 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00574 inconsistent 00575 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00576 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00577 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00578 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00579 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00580 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00581 00582 ******************************************************************************/ 00583 tmErrorCode_t tmdlHdmiTxSetVideoInfoframe 00584 ( 00585 tmInstance_t instance, 00586 Bool enable, 00587 tmdlHdmiTxAviIfData_t *pAviIfData 00588 ); 00589 00590 /*****************************************************************************/ 00591 /** 00592 \brief Defines the content of AUD infoframe to be sent by Tx device. 00593 This function is synchronous. 00594 This function is not ISR friendly. 00595 00596 \param instance Instance identifier. 00597 \param enable Enable/disable infoframe insertion. 00598 \param pAudIfData Pointer to the structure containing AUD infoframe 00599 parameters. 00600 00601 \return The call result: 00602 - TM_OK: the call was successful 00603 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00604 out of range 00605 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00606 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00607 inconsistent 00608 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00609 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00610 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00611 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00612 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00613 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00614 00615 ******************************************************************************/ 00616 tmErrorCode_t tmdlHdmiTxSetAudioInfoframe 00617 ( 00618 tmInstance_t instance, 00619 Bool enable, 00620 tmdlHdmiTxAudIfData_t *pAudIfData 00621 ); 00622 00623 /*****************************************************************************/ 00624 /** 00625 \brief Defines the content of the audio content protection packet to be 00626 sent by Tx device. 00627 This function is synchronous. 00628 This function is not ISR friendly. 00629 00630 \param instance Instance identifier. 00631 \param enable Enable/disable infoframe insertion. 00632 \param pAcpPktData Pointer to the structure containing ACP infoframe 00633 parameters. 00634 00635 \return The call result: 00636 - TM_OK: the call was successful 00637 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00638 out of range 00639 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00640 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00641 inconsistent 00642 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00643 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00644 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00645 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00646 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00647 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00648 00649 ******************************************************************************/ 00650 tmErrorCode_t tmdlHdmiTxSetACPPacket 00651 ( 00652 tmInstance_t instance, 00653 Bool enable, 00654 tmdlHdmiTxAcpPktData_t *pAcpPktData 00655 ); 00656 00657 /*****************************************************************************/ 00658 /** 00659 \brief Defines the content of the General Control packet to be sent by Tx 00660 device. 00661 This function is synchronous. 00662 This function is not ISR friendly. 00663 00664 \param instance Instance identifier. 00665 \param enable Enable/disable infoframe insertion. 00666 \param pGcpPktData Pointer to the structure containing GCP packet parameters. 00667 00668 \return The call result: 00669 - TM_OK: the call was successful 00670 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00671 out of range 00672 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00673 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00674 inconsistent 00675 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00676 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00677 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00678 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00679 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00680 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00681 00682 ******************************************************************************/ 00683 tmErrorCode_t tmdlHdmiTxSetGeneralControlPacket 00684 ( 00685 tmInstance_t instance, 00686 Bool enable, 00687 tmdlHdmiTxGcpPktData_t *pGcpPktData 00688 ); 00689 00690 /*****************************************************************************/ 00691 /** 00692 \brief Defines the content of ISRC1 packet to be sent by Tx device. 00693 This function is synchronous. 00694 This function is not ISR friendly. 00695 00696 \param instance Instance identifier. 00697 \param enable Enable/disable infoframe insertion. 00698 \param pIsrc1PktData Pointer to the structure containing GCP packet parameters. 00699 00700 \return The call result: 00701 - TM_OK: the call was successful 00702 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00703 out of range 00704 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00705 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00706 inconsistent 00707 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00708 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00709 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00710 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00711 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00712 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00713 00714 ******************************************************************************/ 00715 tmErrorCode_t tmdlHdmiTxSetISRC1Packet 00716 ( 00717 tmInstance_t instance, 00718 Bool enable, 00719 tmdlHdmiTxIsrc1PktData_t *pIsrc1PktData 00720 ); 00721 00722 /*****************************************************************************/ 00723 /** 00724 \brief Defines the content of ISRC2 packet to be sent by Tx device. 00725 This function is synchronous. 00726 This function is not ISR friendly. 00727 00728 \param instance Instance identifier. 00729 \param enable Enable/disable infoframe insertion. 00730 \param pIsrc2PktData Pointer to the structure containing GCP packet parameters. 00731 00732 \return The call result: 00733 - TM_OK: the call was successful 00734 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00735 out of range 00736 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00737 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00738 inconsistent 00739 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00740 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00741 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00742 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00743 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00744 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00745 00746 ******************************************************************************/ 00747 tmErrorCode_t tmdlHdmiTxSetISRC2Packet 00748 ( 00749 tmInstance_t instance, 00750 Bool enable, 00751 tmdlHdmiTxIsrc2PktData_t *pIsrc2PktData 00752 ); 00753 00754 /*****************************************************************************/ 00755 /** 00756 \brief Defines the content of MPS infoframe to be sent by Tx device. 00757 This function is synchronous. 00758 This function is not ISR friendly. 00759 00760 \param instance Instance identifier. 00761 \param enable Enable/disable infoframe insertion. 00762 \param pMpsIfData Pointer to the structure containing MPS infoframe 00763 parameters. 00764 00765 \return The call result: 00766 - TM_OK: the call was successful 00767 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00768 out of range 00769 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00770 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00771 inconsistent 00772 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00773 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00774 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00775 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00776 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00777 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00778 00779 ******************************************************************************/ 00780 tmErrorCode_t tmdlHdmiTxSetMPSInfoframe 00781 ( 00782 tmInstance_t instance, 00783 Bool enable, 00784 tmdlHdmiTxMpsIfData_t *pMpsIfData 00785 ); 00786 00787 /*****************************************************************************/ 00788 /** 00789 \brief Defines the content of SPD infoframe to be sent by Tx device. 00790 This function is synchronous. 00791 This function is not ISR friendly. 00792 00793 \param instance Instance identifier. 00794 \param enable Enable/disable infoframe insertion. 00795 \param pSpdIfData Pointer to the structure containing SPD infoframe 00796 parameters. 00797 00798 \return The call result: 00799 - TM_OK: the call was successful 00800 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00801 out of range 00802 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00803 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00804 inconsistent 00805 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00806 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00807 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00808 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00809 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00810 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00811 00812 ******************************************************************************/ 00813 tmErrorCode_t tmdlHdmiTxSetSpdInfoframe 00814 ( 00815 tmInstance_t instance, 00816 Bool enable, 00817 tmdlHdmiTxSpdIfData_t *pSpdIfData 00818 ); 00819 00820 /*****************************************************************************/ 00821 /** 00822 \brief Defines the content of VS infoframe to be sent by Tx device. 00823 This function is synchronous. 00824 This function is not ISR friendly. 00825 00826 \param instance Instance identifier. 00827 \param enable Enable/disable infoframe insertion. 00828 \param pVsIfData Pointer to the structure containing VS infoframe 00829 parameters. 00830 00831 \return The call result: 00832 - TM_OK: the call was successful 00833 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00834 out of range 00835 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00836 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00837 inconsistent 00838 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00839 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00840 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00841 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00842 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00843 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00844 00845 ******************************************************************************/ 00846 tmErrorCode_t tmdlHdmiTxSetVsInfoframe 00847 ( 00848 tmInstance_t instance, 00849 Bool enable, 00850 tmdlHdmiTxVsPktData_t *pVsIfData 00851 ); 00852 00853 /*****************************************************************************/ 00854 /** 00855 \brief Enables/disables NULL packet sending (only used for debug purpose). 00856 This function is synchronous. 00857 This function is not ISR friendly. 00858 00859 \param instance Instance identifier. 00860 \param enable Enable/disable packet insertion. 00861 00862 \return The call result: 00863 - TM_OK: the call was successful 00864 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00865 out of range 00866 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00867 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00868 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00869 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00870 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00871 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00872 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00873 00874 ******************************************************************************/ 00875 tmErrorCode_t tmdlHdmiTxDebugSetNullPacket 00876 ( 00877 tmInstance_t instance, 00878 Bool enable 00879 ); 00880 00881 /*****************************************************************************/ 00882 /** 00883 \brief Send one single NULL packet (only used for debug purpose). 00884 This function is synchronous. 00885 This function is not ISR friendly. 00886 00887 \param instance Instance identifier. 00888 00889 \return The call result: 00890 - TM_OK: the call was successful 00891 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00892 out of range 00893 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00894 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00895 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00896 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00897 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00898 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00899 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00900 00901 ******************************************************************************/ 00902 tmErrorCode_t tmdlHdmiTxDebugSetSingleNullPacket 00903 ( 00904 tmInstance_t instance 00905 ); 00906 00907 /*****************************************************************************/ 00908 /** 00909 \brief Set the audio output mute status. This function can be used to mute 00910 audio output, without muting video. This can be typically used when 00911 reconfiguring the audio HW after a sample rate change. 00912 This function is synchronous. 00913 This function is not ISR friendly. 00914 00915 \param instance Instance identifier. 00916 \param muteStatus Mute status (True/False). 00917 00918 \return The call result: 00919 - TM_OK: the call was successful 00920 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00921 out of range 00922 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00923 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00924 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00925 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00926 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00927 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00928 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00929 00930 ******************************************************************************/ 00931 tmErrorCode_t tmdlHdmiTxSetAudioMute 00932 ( 00933 tmInstance_t instance, 00934 Bool audioMute 00935 ); 00936 00937 /*****************************************************************************/ 00938 /** 00939 \brief Reset audio CTS. 00940 This function is synchronous. 00941 This function is not ISR friendly. 00942 00943 \param instance Instance identifier. 00944 00945 \return The call result: 00946 - TM_OK: the call was successful 00947 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00948 out of range 00949 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00950 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00951 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00952 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 00953 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 00954 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00955 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 00956 00957 00958 ******************************************************************************/ 00959 tmErrorCode_t tmdlHdmiTxResetAudioCts 00960 ( 00961 tmInstance_t instance 00962 ); 00963 00964 /*****************************************************************************/ 00965 /** 00966 \brief Retrieve EDID Status from driver. 00967 This function is synchronous. 00968 This function is ISR friendly. 00969 00970 \param instance Instance identifier. 00971 \param pEdidStatus Pointer to the array that will receive the EDID Status. 00972 \param pEdidBlkCount Pointer to the integer that will receive the number of 00973 read EDID block. 00974 00975 \return The call result: 00976 - TM_OK: the call was successful 00977 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 00978 out of range 00979 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 00980 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 00981 inconsistent 00982 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 00983 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 00984 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 00985 00986 ******************************************************************************/ 00987 tmErrorCode_t tmdlHdmiTxGetEdidStatus 00988 ( 00989 tmInstance_t instance, 00990 tmdlHdmiTxEdidStatus_t *pEdidStatus, 00991 UInt8 *pEdidBlkCount 00992 ); 00993 00994 /*****************************************************************************/ 00995 /** 00996 \brief Retrieves audio descriptors from receiver's EDID. This function 00997 parses the EDID of Tx device to get the relevant data. 00998 This function is synchronous. 00999 This function is not ISR friendly. 01000 01001 01002 \param instance Instance identifier. 01003 \param pAudioDescs Pointer to the array that will receive audio 01004 descriptors. 01005 \param maxAudioDescs Size of the array. 01006 \param pWrittenAudioDescs Pointer to the integer that will receive the actual 01007 number of written descriptors. 01008 \param pAudioFlags Pointer to the byte to receive Audio Capabilities Flags. 01009 This byte is filled as such: 01010 b7 is the Basic audio bit from CEA Extension Version 3. 01011 If this bit is set to 1 this means that the sink handles "Basic audio" i.e. 01012 two channel L-PCM audio at sample rates of 32kHz, 44.1kHz, and 48kHz. 01013 b6 is the Supports_AI bit from the VSDB 01014 This bit set to 1 if the sink supports at least one function that uses 01015 information carried by the ACP, ISRC1, or ISRC2 packets. 01016 b5-b0 0 01017 01018 \return The call result: 01019 - TM_OK: the call was successful 01020 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01021 out of range 01022 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01023 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01024 inconsistent 01025 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01026 the function 01027 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01028 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01029 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01030 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01031 01032 ******************************************************************************/ 01033 tmErrorCode_t tmdlHdmiTxGetEdidAudioCaps 01034 ( 01035 tmInstance_t instance, 01036 tmdlHdmiTxEdidAudioDesc_t *pAudioDescs, 01037 UInt maxAudioDescs, 01038 UInt *pWrittenAudioDescs, 01039 UInt8 *pAudioFlags 01040 ); 01041 01042 /*****************************************************************************/ 01043 /** 01044 \brief Retrieves supported video formats (short descriptors) from 01045 receiver's EDID. This function parses the EDID of Rx device to get 01046 the relevant data. 01047 This function is synchronous. 01048 This function is not ISR friendly. 01049 01050 \param instance Instance identifier. 01051 \param pVideoDesc Pointer to the structure that will receive short 01052 video descriptors. 01053 \param maxVideoFormats Size of the array. 01054 \param pWrittenVideoFormats Pointer to the integer that will receive the actual 01055 number of written descriptors. 01056 \param pVideoFlags Pointer to the byte to receive Video Capability Flags. 01057 b7: underscan supported 01058 b6: YCbCr 4:4:4 supported 01059 b5: YCbCr 4:2:2 supported 01060 01061 \return The call result: 01062 - TM_OK: the call was successful 01063 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01064 out of range 01065 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01066 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01067 inconsistent 01068 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01069 the function 01070 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01071 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01072 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01073 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01074 01075 ******************************************************************************/ 01076 tmErrorCode_t tmdlHdmiTxGetEdidVideoCaps 01077 ( 01078 tmInstance_t instance, 01079 tmdlHdmiTxShortVidDesc_t *pVideoDesc, 01080 UInt maxVideoFormats, 01081 UInt *pWrittenVideoFormats, 01082 UInt8 *pVideoFlags 01083 ); 01084 01085 /*****************************************************************************/ 01086 /** 01087 \brief Retrieves supported video formats (short descriptors) from 01088 receiver's EDID. This function parses the EDID of Rx device to get 01089 the relevant data. 01090 This function is synchronous. 01091 This function is not ISR friendly. 01092 01093 \param instance Instance identifier. 01094 \param pNativeVideoFormat Pointer to the array that will receive video 01095 timing descriptor. 01096 01097 \return The call result: 01098 - TM_OK: the call was successful 01099 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01100 out of range 01101 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01102 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01103 inconsistent 01104 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01105 the function 01106 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01107 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01108 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01109 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01110 01111 ******************************************************************************/ 01112 tmErrorCode_t tmdlHdmiTxGetEdidVideoPreferred 01113 ( 01114 tmInstance_t instance, 01115 tmdlHdmiTxEdidVideoTimings_t *pNativeVideoFormat 01116 ); 01117 01118 /*****************************************************************************/ 01119 /** 01120 \brief Retrieves the sink type from receiver's EDID (HDMI or DVI). This 01121 function parses the EDID of Rx device to get the relevant data. 01122 This function is synchronous. 01123 This function is not ISR friendly. 01124 01125 \param instance Instance identifier. 01126 \param pSinkType Pointer to the array that will receive sink type. 01127 01128 \return The call result: 01129 - TM_OK: the call was successful 01130 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01131 out of range 01132 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01133 - TMDL_ERR_DLHDMITX_BAD_PARAMETER: a parameter is invalid or out 01134 of range 01135 - TMDL_ERR_DLHDMITX_NO_RESOURCES: the resource is not available 01136 - TMDL_ERR_DLHDMITX_BAD_UNIT_NUMBER: bad transmitter unit number 01137 - TMDL_ERR_DLHDMITX_NOT_INITIALIZED: the transmitter is not initialized 01138 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01139 the function 01140 01141 ******************************************************************************/ 01142 tmErrorCode_t tmdlHdmiTxGetEdidSinkType 01143 ( 01144 tmInstance_t instance, 01145 tmdlHdmiTxSinkType_t *pSinkType 01146 ); 01147 01148 /*****************************************************************************/ 01149 /** 01150 \brief Retrieves source address from receivers's EDID. This 01151 function parses the EDID of Rx device to get the relevant data. 01152 This function is synchronous. 01153 This function is not ISR friendly. 01154 01155 \param instance Instance identifier. 01156 \param pSourceAddress Pointer to the integer that will receive the EDID source 01157 address. 01158 01159 \return The call result: 01160 - TM_OK: the call was successful 01161 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01162 out of range 01163 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01164 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01165 inconsistent 01166 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01167 the function 01168 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01169 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01170 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01171 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01172 01173 ******************************************************************************/ 01174 tmErrorCode_t tmdlHdmiTxGetEdidSourceAddress 01175 ( 01176 tmInstance_t instance, 01177 UInt16 *pSourceAddress 01178 ); 01179 01180 01181 01182 /*****************************************************************************/ 01183 /** 01184 \brief Retreives KSV list received by Tx device. 01185 This function is synchronous. 01186 This function is not ISR friendly. 01187 01188 \param instance Instance identifier. 01189 \param pKsv Pointer to the array that will receive the KSV list. 01190 \param maxKsv Maximum number of KSV that the array can store. 01191 \param pWrittenKsv Actual number of KSV written into the array. 01192 \param pDepth Connection tree depth. 01193 01194 \return The call result: 01195 - TM_OK: the call was successful 01196 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01197 out of range 01198 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01199 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01200 inconsistent 01201 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01202 the function 01203 - TMDL_ERR_DLHDMITX_NOT_SUPPORTED: device does not support HDCP 01204 01205 ******************************************************************************/ 01206 tmErrorCode_t tmdlHdmiTxGetKsvList 01207 ( 01208 tmInstance_t instance, 01209 UInt8 *pKsv, 01210 UInt8 maxKsv, 01211 UInt8 *pWrittenKsv, 01212 UInt8 *pDepth, 01213 Bool *pMaxCascExd, 01214 Bool *pMaxDevsExd 01215 ); 01216 #ifdef HDMI_TX_REPEATER_ISR_MODE 01217 /****************************************************************************** 01218 \brief Retreives HDCP depth received by Tx device. 01219 This function is synchronous. 01220 This function is not ISR friendly. 01221 01222 \param instance Instance identifier. 01223 \param pDepth Connection tree depth returned with KSV list. 01224 01225 \return The call result: 01226 - TM_OK: the call was successful 01227 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01228 out of range 01229 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01230 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01231 inconsistent 01232 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01233 the function 01234 - TMDL_ERR_DLHDMITX_NOT_SUPPORTED: device does not support HDCP 01235 01236 ******************************************************************************/ 01237 tmErrorCode_t tmdlHdmiTxGetDepth( 01238 tmInstance_t instance, 01239 UInt8 *pDepth 01240 ); 01241 01242 /****************************************************************************** 01243 \brief Generate SHA_1 interrupt if not occured. 01244 This function is synchronous. 01245 This function is not ISR friendly. 01246 01247 \param instance Instance identifier. 01248 01249 01250 \return The call result: 01251 - TM_OK: the call was successful 01252 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01253 out of range 01254 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01255 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01256 inconsistent 01257 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01258 the function 01259 - TMDL_ERR_DLHDMITX_NOT_SUPPORTED: device does not support HDCP 01260 01261 ******************************************************************************/ 01262 tmErrorCode_t tmdlHdmiTxGeneSHA_1_IT 01263 ( 01264 tmInstance_t instance 01265 ); 01266 #endif /* HDMI_TX_REPEATER_ISR_MODE */ 01267 /*****************************************************************************/ 01268 /** 01269 \brief Enable/Disable HDCP encryption. 01270 This function is synchronous. 01271 This function is not ISR friendly. 01272 01273 \param instance Instance identifier. 01274 \param hdcpEnable HDCP On/Off (true = On, False = Off). 01275 01276 \return The call result: 01277 - TM_OK: the call was successful 01278 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01279 out of range 01280 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01281 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01282 the function 01283 - TMDL_ERR_DLHDMITX_RESOLUTION_UNKNOWN: the resolution is unknown 01284 - TMDL_ERR_DLHDMITX_NOT_SUPPORTED: device does not support HDCP 01285 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01286 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01287 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01288 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 01289 - TMBSL_ERR_HDMI_I2C_READ: failed when reading the I2C bus 01290 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01291 - TMBSL_ERR_HDMI_NOT_SUPPORTED: device does not support HDCP 01292 01293 ******************************************************************************/ 01294 tmErrorCode_t tmdlHdmiTxSetHdcp 01295 ( 01296 tmInstance_t instance, 01297 Bool hdcpEnable 01298 ); 01299 01300 /*****************************************************************************/ 01301 /** 01302 \brief Get the driver HDCP state. 01303 This function is synchronous. 01304 This function is not ISR friendly. 01305 01306 \param instance Instance identifier. 01307 \param pHdcpCheckState Pointer to the integer that will receive the HDCP check state. 01308 01309 \return The call result: 01310 - TM_OK: the call was successful 01311 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01312 out of range 01313 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01314 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01315 inconsistent 01316 - TMDL_ERR_DLHDMITX_NOT_SUPPORTED: device does not support HDCP 01317 01318 ******************************************************************************/ 01319 tmErrorCode_t tmdlHdmiTxGetHdcpState 01320 ( 01321 tmInstance_t instance, 01322 tmdlHdmiTxHdcpCheck_t *pHdcpCheckState 01323 ); 01324 01325 /*****************************************************************************/ 01326 /** 01327 \brief Check the result of an HDCP encryption attempt, called at 01328 intervals (set by timeSinceLastCall) after tmdlHdmiTxSetHdcp(true). 01329 This API must be used only in case of No Operating System. if OS, 01330 this is manage internally of this device library. 01331 This function is synchronous. 01332 This function is not ISR friendly. 01333 01334 \param instance Instance identifier. 01335 \param timeSinceLastCall Time passed in milliseconds since last call, 01336 must be shorter than 600 ms. 01337 01338 \return The call result: 01339 - TM_OK: the call was successful 01340 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01341 out of range 01342 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01343 - TMDL_ERR_DLHDMITX_NOT_SUPPORTED: device does not support HDCP 01344 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01345 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01346 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01347 - TMBSL_ERR_HDMI_I2C_READ: failed when reading the I2C bus 01348 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing the I2C bus 01349 - TMBSL_ERR_HDMI_NOT_SUPPORTED: device does not support HDCP 01350 01351 ******************************************************************************/ 01352 tmErrorCode_t tmdlHdmiTxHdcpCheck 01353 ( 01354 tmInstance_t instance, 01355 UInt16 timeSinceLastCall 01356 ); 01357 01358 /*****************************************************************************/ 01359 /** 01360 \brief This function loads a gamut metadata packet into the HW. HW will 01361 actually send it at the beginning of next VS, during the vertical 01362 blanking. 01363 This function is synchronous. 01364 This function is not ISR friendly. 01365 01366 \param instance Instance identifier. 01367 \param enable Enable/disable gamut metadata packet insertion. 01368 \param pGamutData Pointer to the structure containing gamut metadata 01369 parameters. 01370 01371 \return The call result: 01372 - TM_OK: the call was successful 01373 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01374 out of range 01375 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01376 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01377 the function 01378 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01379 inconsistent 01380 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01381 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01382 - TMBSL_ERR_HDMI_I2C_WRITE: failed when writing to the I2C bus 01383 - TMBSL_ERR_HDMI_I2C_READ: failed when reading to the I2C bus 01384 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01385 - TMBSL_ERR_HDMI_OPERATION_NOT_PERMITTED: not allowed in DVI mode 01386 01387 ******************************************************************************/ 01388 tmErrorCode_t tmdlHdmiTxSetGamutPacket 01389 ( 01390 tmInstance_t instance, 01391 Bool enable, 01392 tmdlHdmiTxGamutData_t *pGamutData 01393 ); 01394 01395 /*****************************************************************************/ 01396 /** 01397 \brief Retrieves supported detailled video descriptors from 01398 receiver's EDID. This function parses the EDID of Rx device to get 01399 the relevant data. 01400 This function is synchronous. 01401 This function is not ISR friendly. 01402 01403 \param instance Instance identifier. 01404 \param pDTDescriptors Pointer to the array that will receive detailled 01405 timing descriptors. 01406 \param maxDTDesc Size of the array. 01407 \param pWrittenDesc Pointer to the integer that will receive the actual 01408 number of written descriptors. 01409 01410 \return The call result: 01411 - TM_OK: the call was successful 01412 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01413 out of range 01414 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01415 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01416 inconsistent 01417 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01418 the function 01419 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01420 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01421 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01422 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01423 01424 ******************************************************************************/ 01425 tmErrorCode_t tmdlHdmiTxGetEdidDetailledTimingDescriptors 01426 ( 01427 tmInstance_t instance, 01428 tmdlHdmiTxEdidVideoTimings_t *pDTDescriptors, 01429 UInt8 maxDTDesc, 01430 UInt8 *pWrittenDTDesc 01431 ); 01432 01433 /*****************************************************************************/ 01434 /** 01435 \brief Retrieves supported monitor descriptor from receiver's EDID. 01436 This function parses the EDID of Rx device to get 01437 the relevant data. 01438 This function is synchronous. 01439 This function is not ISR friendly. 01440 01441 \param instance Instance identifier. 01442 \param pEdidFirstMD Pointer to the array that will receive the first monitor 01443 descriptors. 01444 \param pEdidSecondMD Pointer to the array that will receive the second monitor 01445 descriptors. 01446 \param pEdidOtherMD Pointer to the array that will receive the other monitor 01447 descriptors. 01448 \param maxOtherMD Size of the array. 01449 \param pWrittenOtherMD Pointer to the integer that will receive the actual 01450 number of written descriptors. 01451 01452 \return The call result: 01453 - TM_OK: the call was successful 01454 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01455 out of range 01456 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01457 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01458 inconsistent 01459 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01460 the function 01461 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01462 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01463 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01464 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01465 01466 ******************************************************************************/ 01467 tmErrorCode_t tmdlHdmiTxGetEdidMonitorDescriptors 01468 ( 01469 tmInstance_t instance, 01470 tmdlHdmiTxEdidFirstMD_t *pEdidFirstMD, 01471 tmdlHdmiTxEdidSecondMD_t *pEdidSecondMD, 01472 tmdlHdmiTxEdidOtherMD_t *pEdidOtherMD, 01473 UInt8 maxOtherMD, 01474 UInt8 *pWrittenOtherMD 01475 ); 01476 01477 /*****************************************************************************/ 01478 /** 01479 \brief Retrieves TV picture ratio from receiver's EDID. 01480 This function parses the EDID of Rx device to get 01481 the relevant data. 01482 This function is synchronous. 01483 This function is not ISR friendly. 01484 01485 \param instance Instance identifier. 01486 \param pEdidTvPictureRatio Pointer to the variable that will receive TV picture ratio 01487 value. 01488 01489 \return The call result: 01490 - TM_OK: the call was successful 01491 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01492 out of range 01493 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01494 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01495 inconsistent 01496 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01497 the function 01498 - TMBSL_ERR_HDMI_BAD_PARAMETER: a parameter was out of range 01499 - TMBSL_ERR_HDMI_BAD_UNIT_NUMBER: bad transmitter unit number 01500 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01501 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01502 01503 ******************************************************************************/ 01504 tmErrorCode_t tmdlHdmiTxGetEdidTVPictureRatio 01505 ( 01506 tmInstance_t instance, 01507 tmdlHdmiTxPictAspectRatio_t *pEdidTvPictureRatio 01508 ); 01509 01510 /****************************************************************************** 01511 \brief This function set the revocation list use for HDCP 01512 This function is synchronous. 01513 This function is not ISR friendly. 01514 01515 \param instance Instance identifier. 01516 \param listPtr Pointer on revocation list provide by application. 01517 \param length length of revocation list. 01518 01519 \return The call result: 01520 - TM_OK: the call was successful, however RX keys have 01521 not been checked with provided revocation list 01522 because they are not available. 01523 - TMDL_DLHDMITX_HDCP_SECURE: the call was successful, RX keys are secure 01524 - TMDL_DLHDMITX_HDCP_NOT_SECURE: the call was successful, RX keys are NOT secure 01525 - TMDL_ERR_DLHDMITX_INVALID_STATE: we are a repeater 01526 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01527 out of range 01528 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01529 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01530 inconsistent 01531 01532 01533 ******************************************************************************/ 01534 01535 tmErrorCode_t tmdlHdmiTxSetHDCPRevocationList( 01536 tmInstance_t instance, 01537 void *listPtr, 01538 UInt32 length 01539 ); 01540 01541 01542 /*****************************************************************************/ 01543 /** 01544 \brief Retreives current HDCP link status. This function is typically used 01545 when an "HDCP INACTIVE" event is received to know why HDCP 01546 is INACTIVE. 01547 01548 \param instance Instance identifier. 01549 \param pHdcpStatus Pointer to the enum describing the status. 01550 \param pRawStatus Pointer to the byte with the raw error code from HW. 01551 01552 \return The call result: 01553 - TM_OK: the call was successful 01554 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01555 out of range 01556 - TMDL_ERR_DLHDMITX_BAD_HANDLE: the handle number is wrong 01557 - TMDL_ERR_DLHDMITX_BAD_PARAMETER: a parameter is invalid or out 01558 of range 01559 - TMDL_ERR_DLHDMITX_NOT_INITIALIZED: the transmitter is not initialized 01560 01561 ******************************************************************************/ 01562 tmErrorCode_t tmdlHdmiTxGetHdcpFailStatus 01563 ( 01564 tmInstance_t instance, 01565 tmdlHdmiTxHdcpStatus_t *pHdcpStatus, 01566 UInt8 *pRawStatus 01567 ); 01568 01569 01570 /*****************************************************************************/ 01571 /** 01572 \brief Retrieves latency information from receiver's EDID. 01573 This function is synchronous. 01574 This function is not ISR friendly. 01575 01576 01577 \param instance Instance identifier. 01578 \param pLatency Pointer to the data structure that receive latency 01579 information. 01580 01581 \return The call result: 01582 - TM_OK: the call was successful 01583 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01584 out of range 01585 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01586 inconsistent 01587 - TMDL_ERR_DLHDMITX_INVALID_STATE: the state is invalid for 01588 the function 01589 - TMBSL_ERR_HDMI_RESOURCE_NOT_AVAILABLE : EDID not read 01590 - TMBSL_ERR_HDMI_NOT_INITIALIZED: transmitter not initialized 01591 01592 ******************************************************************************/ 01593 tmErrorCode_t tmdlHdmiTxGetEdidLatencyInfo 01594 ( 01595 tmInstance_t instance, 01596 tmdlHdmiTxEdidLatency_t *pLatency 01597 ); 01598 01599 01600 /****************************************************************************** 01601 \brief This function set the B... screen 01602 This function is synchronous. 01603 This function is not ISR friendly. 01604 01605 \param instance Instance identifier. 01606 01607 \return The call result: 01608 - TM_OK: the call was successful, however RX keys have 01609 not been checked with provided revocation list 01610 because they are not available. 01611 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01612 out of range 01613 01614 01615 ******************************************************************************/ 01616 01617 tmErrorCode_t tmdlHdmiTxSetBScreen( 01618 tmInstance_t instance, 01619 tmdlHdmiTxTestPattern_t pattern 01620 ); 01621 01622 /****************************************************************************** 01623 \brief This function set the Remove B.... screen 01624 This function is synchronous. 01625 This function is not ISR friendly. 01626 01627 \param instance Instance identifier. 01628 01629 \return The call result: 01630 - TM_OK: the call was successful, however RX keys have 01631 not been checked with provided revocation list 01632 because they are not available. 01633 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01634 out of range 01635 01636 01637 ******************************************************************************/ 01638 01639 tmErrorCode_t tmdlHdmiTxRemoveBScreen( 01640 tmInstance_t instance 01641 ); 01642 01643 /****************************************************************************** 01644 \brief This function Convert DTD to CEA 01645 This function is synchronous. 01646 This function is not ISR friendly. 01647 01648 \param instance Instance identifier. 01649 \param pDTDescriptors Pointer on one DTD 01650 \return The call result: 01651 - CEA code 01652 01653 01654 ******************************************************************************/ 01655 tmdlHdmiTxVidFmt_t tmdlHdmiTxConvertDTDtoCEA 01656 ( 01657 tmInstance_t instance, 01658 tmdlHdmiTxEdidVideoTimings_t *pDTDescriptors 01659 ); 01660 01661 01662 /*****************************************************************************/ 01663 /** 01664 \brief Retrieve HPD status from driver. 01665 This function is synchronous. 01666 This function is ISR friendly. 01667 01668 \param instance Instance identifier. 01669 \param pHPDStatus Pointer to the variable that will receive the HPD Status. 01670 01671 \return The call result: 01672 - TM_OK: the call was successful 01673 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01674 out of range 01675 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01676 inconsistent 01677 01678 ******************************************************************************/ 01679 tmErrorCode_t tmdlHdmiTxGetHPDStatus 01680 ( 01681 tmInstance_t instance, 01682 tmdlHdmiTxHotPlug_t * pHPDStatus 01683 ); 01684 01685 01686 /*****************************************************************************/ 01687 /** 01688 \brief Retrieve RXSense status from driver. 01689 This function is synchronous. 01690 This function is ISR friendly. 01691 01692 \param instance Instance identifier. 01693 \param pRXSenseStatus Pointer to the variable that will receive the RXSense Status. 01694 01695 \return The call result: 01696 - TM_OK: the call was successful 01697 - TMDL_ERR_DLHDMITX_BAD_INSTANCE: the instance number is wrong or 01698 out of range 01699 - TMDL_ERR_DLHDMITX_INCONSISTENT_PARAMS: an input parameter is 01700 inconsistent 01701 01702 ******************************************************************************/ 01703 tmErrorCode_t tmdlHdmiTxGetRXSenseStatus 01704 ( 01705 tmInstance_t instance, 01706 tmdlHdmiTxRxSense_t * pRXSenseStatus 01707 ); 01708 01709 01710 /****************************************************************************** 01711 \brief Mute or unmute the TMDS outputs. 01712 01713 \param instance Instance identifier. 01714 \param muteTmdsOut Mute or unmute indication. 01715 01716 \return NA. 01717 01718 ******************************************************************************/ 01719 tmErrorCode_t tmdlHdmiTxTmdsSetOutputsMute 01720 ( 01721 tmInstance_t instance, 01722 Bool muteTmdsOut 01723 ); 01724 01725 #ifdef __cplusplus 01726 } 01727 #endif 01728 01729 #endif /* TMDLHDMITX_FUNCTIONS_H */ 01730 01731 /*============================================================================*/ 01732 /* END OF FILE */ 01733 /*============================================================================*/ 01734
Hdmi version Tx_4.26 - Generated on Tue Jan 26 09:25:07 2010 - tmdlHdmiTx component API |
![]() |