v_hdmiphy1: xhdmiphy1_hdmi_intr.c File Reference

| v_hdmiphy1 Xilinx SDK Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List

Functions
xhdmiphy1_hdmi_intr.c File Reference

## Overview

This file contains video PHY functionality specific to the HDMI protocol related to interrupts.

Note
  None.

    MODIFICATION HISTORY:

    Ver   Who  Date     Changes

               dd/mm/yy

    1.0   gm   10/12/18 Initial release.

## Functions
void | XHdmiphy1_Ch2Ids (XHdmiphy1 *InstancePtr, XHdmiphy1_ChannelId ChId, u8 *Id0, u8 *Id1)
| This function will set the channel IDs to correspond with the supplied channel ID based on the protocol. More...
void | XHdmiphy1_SetHdmiCallback (XHdmiphy1 *InstancePtr, XHdmiphy1_HdmiHandlerType HandlerType, void *CallbackFunc, void *CallbackRef)
| This function installs an HDMI callback function for the specified handler type. More...
void | XHdmiphy1_HdmiIntrHandlerCallbackInit (XHdmiphy1 *InstancePtr)
| This function sets the appropriate HDMI interupt handlers. More...
void | XHdmiphy1_HdmiQpllLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by QPLL lock done. More...
void | XHdmiphy1_HdmiCpllLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by CPLL lock done. More...
void | XHdmiphy1_HdmiGtTxAlignDoneLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by GT TX alignment done. More...
void | XHdmiphy1_HdmiGtTxResetDoneLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by GT TX reset lock done. More...
void | XHdmiphy1_HdmiGtRxResetDoneLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by GT RX reset lock done. More...
void | XHdmiphy1_HdmiTxClkDetFreqChangeHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by a change in TX frequency as detected by the HDMI clock detector logic. More...
void | XHdmiphy1_HdmiRxClkDetFreqChangeHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for events triggered by a change in RX frequency as detected by the HDMI clock detector logic. More...
void | XHdmiphy1_HdmiTxTimerTimeoutHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for TX timer timeout events. More...
void | XHdmiphy1_HdmiRxTimerTimeoutHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for RX timer timeout events. More...
void | XHdmiphy1_HdmiTxMmcmLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for TX MMCM Lock events. More...
void | XHdmiphy1_HdmiRxMmcmLockHandler (XHdmiphy1 *InstancePtr)
| This function is the handler for RX MMCM Lock events. More...

## Function Documentation

void XHdmiphy1_Ch2Ids | ( | XHdmiphy1 * | InstancePtr,
|  | XHdmiphy1_ChannelId | ChId,
|  | u8 * | Id0,
|  | u8 * | Id1
| ) |  |

This function will set the channel IDs to correspond with the supplied channel ID based on the protocol.

HDMI uses 3 channels; This ID translation is done to allow other functions to operate iteratively over multiple channels.

Parameters

  InstancePtr | is a pointer to the XHdmiphy1 core instance.
  ChId | is the channel ID used to determine the indices.
  Id0 | is a pointer to the start channel ID to set.
  Id1 | is a pointer to the end channel ID to set.

Returns
  None.

Note
  The contents of Id0 and Id1 will be set according to ChId.

void XHdmiphy1_HdmiCpllLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by CPLL lock done.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1::Quads, XHdmiphy1_Ch2Ids(), XHdmiphy1_GetPllType(), XHdmiphy1_GetRcfgChId(), XHDMIPHY1_GT_STATE_RESET, XHdmiphy1_IsPllLocked(), XHDMIPHY1_LOG_EVT_CPLL_LOCK, XHdmiphy1_LogWrite(), and XHdmiphy1_ResetGtTxRx().

void XHdmiphy1_HdmiGtRxResetDoneLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by GT RX reset lock done.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1_Config::BaseAddr, XHdmiphy1::Config, XHdmiphy1::HdmiRxDruIsEnabled, XHdmiphy1::HdmiRxReadyCallback, XHdmiphy1::HdmiRxReadyRef, XHdmiphy1::Quads, XHdmiphy1_Channel::RxState, XHdmiphy1_Ch2Ids(), XHdmiphy1_DruReset(), XHDMIPHY1_GT_STATE_READY, XHDMIPHY1_LOG_EVT_RX_RST_DONE, XHdmiphy1_LogWrite(), XHdmiphy1_ReadReg, and XHdmiphy1_WriteReg.

void XHdmiphy1_HdmiGtTxAlignDoneLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by GT TX alignment done.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1::HdmiTxReadyCallback, XHdmiphy1::HdmiTxReadyRef, XHdmiphy1::Quads, XHdmiphy1_Channel::TxState, XHdmiphy1_Ch2Ids(), XHDMIPHY1_GT_STATE_READY, XHDMIPHY1_LOG_EVT_TX_ALIGN, and XHdmiphy1_LogWrite().

void XHdmiphy1_HdmiGtTxResetDoneLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by GT TX reset lock done.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1_Config::BaseAddr, XHdmiphy1::Config, XHdmiphy1::HdmiTxReadyCallback, XHdmiphy1::HdmiTxReadyRef, XHdmiphy1_Hdmi21Cfg::IsEnabled, XHdmiphy1_Hdmi21Cfg::NChannels, XHdmiphy1::Quads, XHdmiphy1::TxHdmi21Cfg, XHdmiphy1_Channel::TxState, XHdmiphy1_Config::UseGtAsTxTmdsClk, XHdmiphy1_Config::XcvrType, XHdmiphy1_Ch2Ids(), XHdmiphy1_GetLineRateHz(), XHdmiphy1_GetPllType(), XHdmiphy1_GetRcfgChId(), XHDMIPHY1_GT_STATE_ALIGN, XHDMIPHY1_GT_STATE_READY, XHDMIPHY1_LOG_EVT_TX_RST_DONE, XHdmiphy1_LogWrite(), XHdmiphy1_PatgenEnable(), XHdmiphy1_PatgenSetRatio(), XHdmiphy1_ReadReg, XHdmiphy1_TxAlignReset(), XHdmiphy1_TxAlignStart(), and XHdmiphy1_WriteReg.

void XHdmiphy1_HdmiQpllLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by QPLL lock done.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1::Quads, XHdmiphy1_Ch2Ids(), XHdmiphy1_GetPllType(), XHdmiphy1_GetRcfgChId(), XHDMIPHY1_GT_STATE_RESET, XHdmiphy1_IsPllLocked(), XHDMIPHY1_LOG_EVT_QPLL_LOCK, XHdmiphy1_LogWrite(), and XHdmiphy1_ResetGtTxRx().

void XHdmiphy1_HdmiRxClkDetFreqChangeHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by a change in RX frequency as detected by the HDMI clock detector logic.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1_Config::AxiLiteClkFreq, XHdmiphy1_Config::BaseAddr, XHdmiphy1::Config, XHdmiphy1_Config::DruIsPresent, XHdmiphy1::HdmiRxInitCallback, XHdmiphy1::HdmiRxInitRef, XHdmiphy1::HdmiRxRefClkHz, XHdmiphy1_Hdmi21Cfg::IsEnabled, XHdmiphy1::Quads, XHdmiphy1_Config::RxFrlRefClkSel, XHdmiphy1::RxHdmi21Cfg, XHdmiphy1_Config::RxRefClkSel, XHdmiphy1_Channel::RxState, XHdmiphy1_Ch2Ids(), XHdmiphy1_ClkDetGetRefClkFreqHz(), XHdmiphy1_ClkDetTimerClear(), XHdmiphy1_ClkDetTimerLoad(), XHdmiphy1_DruEnable(), XHdmiphy1_DruReset(), XHdmiphy1_GetPllType(), XHDMIPHY1_GT_STATE_IDLE, XHDMIPHY1_LOG_EVT_RX_FREQ, XHdmiphy1_LogWrite(), XHdmiphy1_MmcmLockedMaskEnable(), XHdmiphy1_PowerDownGtPll(), XHdmiphy1_ReadReg, XHdmiphy1_ResetGtPll(), and XHdmiphy1_WriteReg.

void XHdmiphy1_HdmiRxMmcmLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for RX MMCM Lock events.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHDMIPHY1_LOG_EVT_RXPLL_LOCK, and XHdmiphy1_LogWrite().

void XHdmiphy1_HdmiTxClkDetFreqChangeHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for events triggered by a change in TX frequency as detected by the HDMI clock detector logic.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1_Config::AxiLiteClkFreq, XHdmiphy1_Config::BaseAddr, XHdmiphy1::Config, XHdmiphy1::HdmiTxInitCallback, XHdmiphy1::HdmiTxInitRef, XHdmiphy1_Hdmi21Cfg::IsEnabled, XHdmiphy1_Hdmi21Cfg::NChannels, XHdmiphy1::Quads, XHdmiphy1_Config::TxFrlRefClkSel, XHdmiphy1::TxHdmi21Cfg, XHdmiphy1_Config::TxRefClkSel, XHdmiphy1_Channel::TxState, XHdmiphy1_Config::UseGtAsTxTmdsClk, XHdmiphy1_Ch2Ids(), XHdmiphy1_ClkDetGetRefClkFreqHz(), XHdmiphy1_ClkDetTimerClear(), XHdmiphy1_ClkDetTimerLoad(), XHdmiphy1_GetPllType(), XHDMIPHY1_GT_STATE_IDLE, XHDMIPHY1_LOG_EVT_TX_FREQ, XHdmiphy1_LogWrite(), XHdmiphy1_MmcmLockedMaskEnable(), XHdmiphy1_PatgenEnable(), XHdmiphy1_PowerDownGtPll(), XHdmiphy1_ReadReg, XHdmiphy1_ResetGtPll(), XHdmiphy1_TxAlignStart(), and XHdmiphy1_WriteReg.

void XHdmiphy1_HdmiTxMmcmLockHandler | ( | XHdmiphy1 * | InstancePtr | ) |

This function is the handler for TX MMCM Lock events.

Parameters

  InstancePtr | is a pointer to the HDMIPHY instance.

Returns
  None.

Note
  None.

References XHdmiphy1_Config::BaseAddr, XHdmiphy1::Config, XHDMIPHY1_LOG_EVT_TXPLL_LOCK, XHdmiphy1_LogWrite(), XHdmiphy1_ReadReg, and XHdmiphy1_WriteReg.