XilinxProcessorIPLib/drivers/vphy/src/xvphy_hdmi_intr.c
void XVphy_HdmiGtRxResetDoneLockHandler(XVphy *InstancePtr)
{
	u8 Id, Id0, Id1;

	XVphy_LogWrite(InstancePtr, XVPHY_LOG_EVT_RX_RST_DONE, 0);

	XVphy_Ch2Ids(InstancePtr, XVPHY_CHANNEL_ID_CHA, &Id0, &Id1);
	for (Id = Id0; Id <= Id1; Id++) {
		InstancePtr->Quads[0].Plls[XVPHY_CH2IDX(Id)].RxState =
			XVPHY_GT_STATE_READY;
	}

	/* If DRU is use/d, release its reset. */
	if (InstancePtr->HdmiRxDruIsEnabled) {
		XVphy_DruReset(InstancePtr, XVPHY_CHANNEL_ID_CHA, FALSE);
	}

	/* RX ready callback. */
	if (InstancePtr->HdmiRxReadyCallback) {
		InstancePtr->HdmiRxReadyCallback(InstancePtr->HdmiRxReadyRef);
	}

	/* If the GT TX and RX are coupled and DRU is inactive, then update
     * the GT TX state as well. */
	if (XVphy_IsBonded(InstancePtr, 0, XVPHY_CHANNEL_ID_CH1) &&
			!InstancePtr->HdmiRxDruIsEnabled) {
		/* GT TX reset. */
		XVphy_ResetGtTxRx(InstancePtr, 0, XVPHY_CHANNEL_ID_CHA,
				XVPHY_DIR_TX, FALSE);

		for (Id = Id0; Id <= Id1; Id++) {
			InstancePtr->Quads[0].Plls[XVPHY_CH2IDX(Id)].TxState =
				XVPHY_GT_STATE_RESET;
		}
	}
}
/*****************************************************************************/
/**
* This function is the handler for events triggered by GT RX reset lock done.
*
* @param	InstancePtr is a pointer to the VPHY instance.
*
* @return	None.
*
* @note		None.
*
******************************************************************************/
This function is the handler for events triggered by GT RX reset lock done.
This function is the handler for events triggered by GT RX reset lock done .
void XVphy_HdmiGtRxResetDoneLockHandler(XVphy *InstancePtr)
{
	u8 Id, Id0, Id1;
	XVphy_LogWrite(InstancePtr, XVPHY_LOG_EVT_RX_RST_DONE, 0);
	XVphy_Ch2Ids(InstancePtr, XVPHY_CHANNEL_ID_CHA, &Id0, &Id1);
	for (Id = Id0; Id <= Id1; Id++) {
		InstancePtr->Quads[0].Plls[XVPHY_CH2IDX(Id)].RxState =
			XVPHY_GT_STATE_READY;
	}
	if (InstancePtr->HdmiRxDruIsEnabled) {
		XVphy_DruReset(InstancePtr, XVPHY_CHANNEL_ID_CHA, FALSE);
	}
	if (InstancePtr->HdmiRxReadyCallback) {
		InstancePtr->HdmiRxReadyCallback(InstancePtr->HdmiRxReadyRef);
	}
	if (XVphy_IsBonded(InstancePtr, 0, XVPHY_CHANNEL_ID_CH1) &&
			!InstancePtr->HdmiRxDruIsEnabled) {
		XVphy_ResetGtTxRx(InstancePtr, 0, XVPHY_CHANNEL_ID_CHA,
				XVPHY_DIR_TX, FALSE);
		for (Id = Id0; Id <= Id1; Id++) {
			InstancePtr->Quads[0].Plls[XVPHY_CH2IDX(Id)].TxState =
				XVPHY_GT_STATE_RESET;
		}
	}
}
void XVphy_HdmiGtRxResetDoneLockHandler ( XVphy * InstancePtr ) { u8 Id , Id0 , Id1 ; XVphy_LogWrite ( InstancePtr , XVPHY_LOG_EVT_RX_RST_DONE , 0 ) ; XVphy_Ch2Ids ( InstancePtr , XVPHY_CHANNEL_ID_CHA , & Id0 , & Id1 ) ; for ( Id = Id0 ; Id <= Id1 ; Id ++ ) { InstancePtr -> Quads [ 0 ] . Plls [ XVPHY_CH2IDX ( Id ) ] . RxState = XVPHY_GT_STATE_READY ; } if ( InstancePtr -> HdmiRxDruIsEnabled ) { XVphy_DruReset ( InstancePtr , XVPHY_CHANNEL_ID_CHA , FALSE ) ; } if ( InstancePtr -> HdmiRxReadyCallback ) { InstancePtr -> HdmiRxReadyCallback ( InstancePtr -> HdmiRxReadyRef ) ; } if ( XVphy_IsBonded ( InstancePtr , 0 , XVPHY_CHANNEL_ID_CH1 ) && ! InstancePtr -> HdmiRxDruIsEnabled ) { XVphy_ResetGtTxRx ( InstancePtr , 0 , XVPHY_CHANNEL_ID_CHA , XVPHY_DIR_TX , FALSE ) ; for ( Id = Id0 ; Id <= Id1 ; Id ++ ) { InstancePtr -> Quads [ 0 ] . Plls [ XVPHY_CH2IDX ( Id ) ] . TxState = XVPHY_GT_STATE_RESET ; } } }
This function is the handler for events triggered by GT RX reset lock done.
This function is the handler for events triggered by GT RX reset lock done .
/* If DRU is use/d, release its reset. */ /* RX ready callback. */ /* If the GT TX and RX are coupled and DRU is inactive, then update
     * the GT TX state as well. */ /* GT TX reset. */