bool SiiMhlTxSetPathEn(void ) { TPI_DEBUG_PRINT(("MhlTx:SiiMhlTxSetPathEn\n")); SiiMhlTxTmdsEnable(); mhlTxConfig.linkMode |= MHL_STATUS_PATH_ENABLED; // update local copy return SiiMhlTxSetStatus( MHL_STATUS_REG_LINK_MODE, mhlTxConfig.linkMode); }
void SiiMhlTxNotifyDsHpdChange(uint8_t dsHpdStatus) { if (0 == dsHpdStatus) { TPI_DEBUG_PRINT(("MhlTx: Disable TMDS - fake\n")); /*mhlTxConfig.mhlHpdRSENflags &= ~MHL_HPD;*/ /*SiiMhlTxDrvTmdsControl(false);*/ } else { TPI_DEBUG_PRINT(("MhlTx: Enable TMDS\n")); TPI_DEBUG_PRINT(("MhlTx: DsHPD ON\n")); mhlTxConfig.mhlHpdRSENflags |= MHL_HPD; SiiMhlTxTmdsEnable(); } }
void SiiMhlTxNotifyConnection(bool mhlConnected) { mhlTxConfig.mhlConnectionEvent = true; mhlTxConfig.mscState = MSC_STATE_IDLE; if (mhlConnected) { mhlTxConfig.mhlConnected = MHL_TX_EVENT_CONNECTION; mhlTxConfig.mhlHpdRSENflags |= MHL_RSEN; SiiMhlTxTmdsEnable(); SiiMhlTxSendLinkMode(); } else { mhlTxConfig.mhlConnected = MHL_TX_EVENT_DISCONNECTION; mhlTxConfig.mhlHpdRSENflags &= ~MHL_RSEN; } }
uint8_t siMhlTx_VideoAudioSet (void) { TX_DEBUG_PRINT(("[MHL]: >>siMhlTx_VideoAudioSet()\n")); SiiRegModify(TX_PAGE_L1 | 0xDF, BIT0, SET_BITS); SiiMhlTxDrvTmdsControl( false ); HalTimerWait(T_RES_CHANGE_DELAY); // allow control InfoFrames to pass through to the sink device. //siMhlTx_AudioSet(); AudioVideoIsr(true); //siMhlTx_Init(); SiiRegModify(TX_PAGE_L1 | 0xDF, BIT0, CLEAR_BITS); SiiMhlTxTmdsEnable(); return 0; }