![]() |
v_hdmirx1
Vitis Drivers API Documentation
|
This is the main file for Xilinx HDMI RX core.
Please see xv_hdmirx1.h for more details of the driver.
MODIFICATION HISTORY:
Ver Who Date Changes
1.00 EB 02/05/19 Initial release.
Please see xv_hdmirx1.h for more details of the driver.
MODIFICATION HISTORY:
Ver Who Date Changes
1.00 EB 22/06/18 Initial release.
Functions | |
| int | XV_HdmiRx1_CfgInitialize (XV_HdmiRx1 *InstancePtr, XV_HdmiRx1_Config *CfgPtr, UINTPTR EffectiveAddr) |
| This function initializes the HDMI RX core. More... | |
| void | XV_HdmiRx1_SetAxiClkFreq (XV_HdmiRx1 *InstancePtr, u32 ClkFreq) |
| This function sets the AXI4-Lite Clock Frequency. More... | |
| void | XV_HdmiRx1_Clear (XV_HdmiRx1 *InstancePtr) |
| This function clears the HDMI RX variables and sets them to the defaults. More... | |
| void | XV_HdmiRx1_Start (XV_HdmiRx1 *InstancePtr) |
| This function starts the HDMI RX core. More... | |
| void | XV_HdmiRx1_Stop (XV_HdmiRx1 *InstancePtr) |
| This function stops the HDMI RX core. More... | |
| int | XV_HdmiRx1_SetStream (XV_HdmiRx1 *InstancePtr, XVidC_PixelsPerClock Ppc, u32 Clock) |
| This function sets the HDMI RX stream parameters. More... | |
| void | XV_HdmiRx1_INT_VRST (XV_HdmiRx1 *InstancePtr, u8 Reset) |
| This function asserts or releases the HDMI RX Internal VRST. More... | |
| void | XV_HdmiRx1_INT_LRST (XV_HdmiRx1 *InstancePtr, u8 Reset) |
| This function asserts or releases the HDMI RX Internal LRST. More... | |
| void | XV_HdmiRx1_EXT_VRST (XV_HdmiRx1 *InstancePtr, u8 Reset) |
| This function asserts or releases the HDMI RX External VRST. More... | |
| void | XV_HdmiRx1_EXT_SYSRST (XV_HdmiRx1 *InstancePtr, u8 Reset) |
| This function asserts or releases the HDMI RX External SYSRST. More... | |
| int | XV_HdmiRx1_SetPixelRate (XV_HdmiRx1 *InstancePtr) |
| This function sets the pixel rate. More... | |
| void | XV_HdmiRx1_SetColorFormat (XV_HdmiRx1 *InstancePtr) |
| This function sets the color format. More... | |
| int | XV_HdmiRx1_SetHpd (XV_HdmiRx1 *InstancePtr, u8 SetClr) |
| This function enables/clear Hot-Plug-Detect. More... | |
| u32 | XV_HdmiRx1_GetLinkStatus (XV_HdmiRx1 *InstancePtr, u8 Type) |
| This function provides status of the HDMI RX core Link Status peripheral. More... | |
| int | XV_HdmiRx1_IsLinkStatusErrMax (XV_HdmiRx1 *InstancePtr) |
| This function provides status of one of the link error counters reached the maximum value. More... | |
| void | XV_HdmiRx1_ClearLinkStatus (XV_HdmiRx1 *InstancePtr) |
| This function clears the link error counters. More... | |
| u32 | XV_HdmiRx1_GetAcrCts (XV_HdmiRx1 *InstancePtr) |
| This function provides audio clock regenerating CTS (Cycle-Time Stamp) value at the HDMI sink device. More... | |
| u32 | XV_HdmiRx1_GetAcrN (XV_HdmiRx1 *InstancePtr) |
| This function provides audio clock regenerating factor N value. More... | |
| u16 | XV_HdmiRx1_DdcGetEdidWords (XV_HdmiRx1 *InstancePtr) |
| This function gets the size of the EDID buffer of the DDC slave. More... | |
| int | XV_HdmiRx1_DdcLoadEdid (XV_HdmiRx1 *InstancePtr, u8 *EdidData, u16 Length) |
| This function loads the EDID data into the DDC slave. More... | |
| void | XV_HdmiRx1_DdcHdcpSetAddress (XV_HdmiRx1 *InstancePtr, u32 Address) |
| This function sets the HDCP address in the DDC peripheral. More... | |
| void | XV_HdmiRx1_DdcHdcpWriteData (XV_HdmiRx1 *InstancePtr, u32 Data) |
| This function writes HDCP data in the DDC peripheral. More... | |
| u32 | XV_HdmiRx1_DdcHdcpReadData (XV_HdmiRx1 *InstancePtr) |
| This function reads HDCP data from the DDC peripheral. More... | |
| u16 | XV_HdmiRx1_DdcGetHdcpWriteMessageBufferWords (XV_HdmiRx1 *InstancePtr) |
| This function gets the number of bytes of the HDCP 2.2 write buffer in the DDC slave. More... | |
| int | XV_HdmiRx1_DdcIsHdcpWriteMessageBufferEmpty (XV_HdmiRx1 *InstancePtr) |
| This function returns the status of the HDCP 2.2 write buffer in the DDC slave. More... | |
| u16 | XV_HdmiRx1_DdcGetHdcpReadMessageBufferWords (XV_HdmiRx1 *InstancePtr) |
| This function gets the number of bytes of the HDCP 2.2 read buffer in the DDC slave. More... | |
| int | XV_HdmiRx1_DdcIsHdcpReadMessageBufferEmpty (XV_HdmiRx1 *InstancePtr) |
| This function returns the status of the HDCP 2.2 read message buffer in the DDC slave. More... | |
| void | XV_HdmiRx1_Info (XV_HdmiRx1 *InstancePtr) |
| This function prints stream and timing information on STDIO/UART console. More... | |
| void | XV_HdmiRx1_DebugInfo (XV_HdmiRx1 *InstancePtr) |
| This function prints debug information on STDIO/UART console. More... | |
| void | XV_HdmiRx1_DdcRegDump (XV_HdmiRx1 *InstancePtr) |
| This function prints out RX's SCDC registers and values on STDIO/UART. More... | |
| void | XV_HdmiRx1_RegisterDebug (XV_HdmiRx1 *InstancePtr) |
| This function prints out HDMI RX register. More... | |
| int | XV_HdmiRx1_IsStreamUp (XV_HdmiRx1 *InstancePtr) |
| This function provides status of the stream. More... | |
| int | XV_HdmiRx1_IsStreamScrambled (XV_HdmiRx1 *InstancePtr) |
| This function provides the stream scrambler status. More... | |
| int | XV_HdmiRx1_IsStreamConnected (XV_HdmiRx1 *InstancePtr) |
| This function provides the stream connected status. More... | |
| int | XV_HdmiRx1_GetTmdsClockRatio (XV_HdmiRx1 *InstancePtr) |
| This function gets the SCDC TMDS clock ratio bit. More... | |
| u8 | XV_HdmiRx1_GetAviVic (XV_HdmiRx1 *InstancePtr) |
| This function returns the AVI VIC (captured by the AUX peripheral) More... | |
| XVidC_ColorFormat | XV_HdmiRx1_GetAviColorSpace (XV_HdmiRx1 *InstancePtr) |
| This function returns the AVI colorspace (captured by the AUX peripheral) More... | |
| XVidC_ColorDepth | XV_HdmiRx1_GetGcpColorDepth (XV_HdmiRx1 *InstancePtr) |
| This function returns the GCP color depth (captured by the AUX peripheral) More... | |
| u32 | XV_HdmiRx1_Divide (u32 Dividend, u32 Divisor) |
| This function calculates the divider for the frame calculation. More... | |
| XVidC_VideoMode | XV_HdmiRx1_LookupVmId (u8 Vic) |
| This function searches for the video mode based on the vic. More... | |
| int | XV_HdmiRx1_GetVideoProperties (XV_HdmiRx1 *InstancePtr) |
| This function reads the video properties from the aux peripheral. More... | |
| int | XV_HdmiRx1_GetVideoTiming (XV_HdmiRx1 *InstancePtr) |
| This function reads the video timing from the VTD peripheral. More... | |
| void | XV_HdmiRx1_SetPixelClk (XV_HdmiRx1 *InstancePtr) |
| This function sets the PixelClk based on the current ColorDepth, RefClk and ColorFormatId. More... | |
| void | XV_HdmiRx1_UpdateEdFlags (XV_HdmiRx1 *InstancePtr) |
| This function checks if RX's CED or RSED counters are incrementing at the rate of 4 or higher per second or if they first hit the maximum value (0x7FFF) then set the CED_Update or RSED_Update SCDC flags if true. More... | |
| void | XV_HdmiRx1_TmrStartMs (XV_HdmiRx1 *InstancePtr, u32 Milliseconds, u8 TimerSelect) |
| This function sets the timer of RX Core. More... | |
| XV_HdmiC_VrrInfoframeType | XV_HdmiRx1_GetVrrIfType (XV_HdmiRx1 *InstancePtr) |
| This function returns VRR infoframe type. More... | |
| void | XV_HdmiRx1_SetVrrIfType (XV_HdmiRx1 *InstancePtr, XV_HdmiC_VrrInfoframeType Type) |
| This function Sets VRR infoframe type. More... | |
| void | XV_HdmiRx1_DynHDR_SetAddr (XV_HdmiRx1 *InstancePtr, u64 Addr) |
| This function sets the Dynamic HDR buffer address. More... | |
| void | XV_HdmiRx1_DynHDR_GetInfo (XV_HdmiRx1 *InstancePtr, XV_HdmiRx1_DynHDR_Info *RxDynHdrInfoPtr) |
| This function gets the Dynamic HDR packet type, length, whether graphics overlay and errors if any. More... | |
| int XV_HdmiRx1_CfgInitialize | ( | XV_HdmiRx1 * | InstancePtr, |
| XV_HdmiRx1_Config * | CfgPtr, | ||
| UINTPTR | EffectiveAddr | ||
| ) |
This function initializes the HDMI RX core.
This function must be called prior to using the HDMI RX core. Initialization of the HDMI RX includes setting up the instance data, and ensuring the hardware is in a quiescent state.
| InstancePtr | is a pointer to the XHdmiRx1 core instance. |
| CfgPtr | points to the configuration structure associated with the HDMI RX core. |
| EffectiveAddr | is the base address of the device. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used. |
References XV_HdmiRx1::AudCallback, XV_HdmiRx1::AuxCallback, XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HdmiRx1::ConnectCallback, XV_HdmiRx1_Frl::CurFrlRate, XV_HdmiRx1::DdcCallback, XV_HdmiRx1_Frl::DefaultLtp, XV_HdmiRx1_Config::DSC, XV_HdmiRx1::FrlConfigCallback, XV_HdmiRx1::FrlStartCallback, XV_HdmiRx1::HdcpCallback, XV_HdmiRx1::HdcpRef, XV_HdmiRx1::IsReady, XV_HdmiRx1::LinkErrorCallback, XV_HdmiRx1::LnkStaCallback, XV_HdmiRx1::ModeCallback, XV_HdmiRx1::Stream, XV_HdmiRx1::StreamDownCallback, XV_HdmiRx1::StreamInitCallback, XV_HdmiRx1::StreamUpCallback, XV_HdmiRx1::SyncLossCallback, XV_HdmiRx1::TmdsClkRatioCallback, XV_HdmiRx1::TmdsConfigCallback, XV_HdmiRx1_AudioDisable, XV_HdmiRx1_AudioIntrEnable, XV_HdmiRx1_AuxDisable, XV_HdmiRx1_AuxFSyncVrrChEvtEnable, XV_HdmiRx1_AuxIntrEnable, XV_HdmiRx1_Clear(), XV_HdmiRx1_DdcDisable, XV_HdmiRx1_DdcEnable, XV_HdmiRx1_DdcScdcClear, XV_HdmiRx1_DdcScdcEnable, XV_HdmiRx1_FrlDdcWriteField(), XV_HdmiRx1_FrlReset(), XV_HdmiRx1_GetTime16Ms, XV_HdmiRx1_LnkstaDisable, XV_HdmiRx1_LnkstaEnable, XV_HDMIRX1_MASK_16, XV_HDMIRX1_PIO_ID, XV_HDMIRX1_PIO_ID_OFFSET, XV_HDMIRX1_PIO_IN_BRDG_OVERFLOW_MASK, XV_HDMIRX1_PIO_IN_DET_MASK, XV_HDMIRX1_PIO_IN_DSC_EN_STRM_CHG_EVT_MASK, XV_HDMIRX1_PIO_IN_DSC_PPS_PKT_ERR_MASK, XV_HDMIRX1_PIO_IN_EVT_FE_OFFSET, XV_HDMIRX1_PIO_IN_EVT_RE_OFFSET, XV_HDMIRX1_PIO_IN_LNK_RDY_MASK, XV_HDMIRX1_PIO_IN_MODE_MASK, XV_HDMIRX1_PIO_IN_SCDC_SCRAMBLER_ENABLE_MASK, XV_HDMIRX1_PIO_IN_SCDC_TMDS_CLOCK_RATIO_MASK, XV_HDMIRX1_PIO_IN_VID_RDY_MASK, XV_HdmiRx1_PioDisable, XV_HdmiRx1_PioIntrDisable, XV_HdmiRx1_ReadReg, XV_HdmiRx1_SetFrlRateWrEvent_En(), XV_HdmiRx1_SetHpd(), XV_HDMIRX1_SHIFT_16, XV_HdmiRx1_Tmr1Disable, XV_HdmiRx1_Tmr1Enable, XV_HdmiRx1_Tmr1IntrDisable, XV_HdmiRx1_Tmr1IntrEnable, XV_HdmiRx1_Tmr2Disable, XV_HdmiRx1_Tmr2Enable, XV_HdmiRx1_Tmr2IntrDisable, XV_HdmiRx1_Tmr2IntrEnable, XV_HdmiRx1_Tmr3Disable, XV_HdmiRx1_Tmr3Enable, XV_HdmiRx1_Tmr3IntrDisable, XV_HdmiRx1_Tmr3IntrEnable, XV_HdmiRx1_Tmr4Disable, XV_HdmiRx1_Tmr4IntrDisable, XV_HdmiRx1_VtdDisable, XV_HdmiRx1_VtdIntrDisable, XV_HdmiRx1_VtdSetTimebase, and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_Clear | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function clears the HDMI RX variables and sets them to the defaults.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_AudioStream::Active, XV_HdmiRx1::AudCts, XV_HdmiRx1::AudFormat, XV_HdmiRx1::AudN, XV_HdmiRx1::Aux, XV_HdmiRx1_AudioStream::Channels, XV_HdmiRx1::IsErrorPrintCount, XV_HdmiRx1::Stream, XV_HdmiRx1::StreamDownCallback, XV_HdmiRx1::StreamDownRef, XV_HdmiRx1_Frl::TrainingState, XV_HDMIRX1_STATE_STREAM_DOWN, and XV_HdmiRx1_Tmr3Disable.
Referenced by XV_HdmiRx1_CfgInitialize().
| void XV_HdmiRx1_ClearLinkStatus | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function clears the link error counters.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_LNKSTA_CTRL_CLR_OFFSET, XV_HDMIRX1_LNKSTA_CTRL_ERR_CLR_MASK, XV_HDMIRX1_LNKSTA_CTRL_SET_OFFSET, and XV_HdmiRx1_WriteReg.
| u16 XV_HdmiRx1_DdcGetEdidWords | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function gets the size of the EDID buffer of the DDC slave.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DDC_EDID_STA_OFFSET, XV_HDMIRX1_DDC_STA_EDID_WORDS_MASK, XV_HDMIRX1_DDC_STA_EDID_WORDS_SHIFT, and XV_HdmiRx1_ReadReg.
Referenced by XV_HdmiRx1_DdcLoadEdid().
| u16 XV_HdmiRx1_DdcGetHdcpReadMessageBufferWords | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function gets the number of bytes of the HDCP 2.2 read buffer in the DDC slave.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DDC_HDCP_STA_OFFSET, XV_HDMIRX1_DDC_STA_HDCP_RMSG_WORDS_MASK, XV_HDMIRX1_DDC_STA_HDCP_RMSG_WORDS_SHIFT, and XV_HdmiRx1_ReadReg.
| u16 XV_HdmiRx1_DdcGetHdcpWriteMessageBufferWords | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function gets the number of bytes of the HDCP 2.2 write buffer in the DDC slave.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DDC_HDCP_STA_OFFSET, XV_HDMIRX1_DDC_STA_HDCP_WMSG_WORDS_MASK, XV_HDMIRX1_DDC_STA_HDCP_WMSG_WORDS_SHIFT, and XV_HdmiRx1_ReadReg.
| u32 XV_HdmiRx1_DdcHdcpReadData | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function reads HDCP data from the DDC peripheral.
This is implemented as a function and not a macro, so the HDCP driver can bind the function call with a handler.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
References XV_HDMIRX1_DDC_HDCP_DATA_OFFSET, and XV_HdmiRx1_ReadReg.
| void XV_HdmiRx1_DdcHdcpSetAddress | ( | XV_HdmiRx1 * | InstancePtr, |
| u32 | Address | ||
| ) |
This function sets the HDCP address in the DDC peripheral.
This is implemented as a function and not a macro, so the HDCP driver can bind the function call with a handler.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
| Address | is the HDCP address. |
References XV_HDMIRX1_DDC_HDCP_ADDRESS_OFFSET, and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_DdcHdcpWriteData | ( | XV_HdmiRx1 * | InstancePtr, |
| u32 | Data | ||
| ) |
This function writes HDCP data in the DDC peripheral.
This is implemented as a function and not a macro, so the HDCP driver can bind the function call with a handler.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
| Data | is the HDCP data to be written. |
References XV_HDMIRX1_DDC_HDCP_DATA_OFFSET, and XV_HdmiRx1_WriteReg.
| int XV_HdmiRx1_DdcIsHdcpReadMessageBufferEmpty | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function returns the status of the HDCP 2.2 read message buffer in the DDC slave.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DDC_HDCP_STA_OFFSET, XV_HDMIRX1_DDC_STA_HDCP_RMSG_EP_MASK, and XV_HdmiRx1_ReadReg.
| int XV_HdmiRx1_DdcIsHdcpWriteMessageBufferEmpty | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function returns the status of the HDCP 2.2 write buffer in the DDC slave.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DDC_HDCP_STA_OFFSET, XV_HDMIRX1_DDC_STA_HDCP_WMSG_EP_MASK, and XV_HdmiRx1_ReadReg.
| int XV_HdmiRx1_DdcLoadEdid | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 * | EdidData, | ||
| u16 | Length | ||
| ) |
This function loads the EDID data into the DDC slave.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| EdidData | is a pointer to the EDID data array. |
| Length | is the length, in bytes, of the EDID array. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DDC_CTRL_EDID_EN_MASK, XV_HDMIRX1_DDC_CTRL_SET_OFFSET, XV_HDMIRX1_DDC_EDID_DATA_OFFSET, XV_HDMIRX1_DDC_EDID_WP_OFFSET, XV_HdmiRx1_DdcGetEdidWords(), and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_DdcRegDump | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function prints out RX's SCDC registers and values on STDIO/UART.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_FRL_SCDC_ADDR_MASK, XV_HDMIRX1_FRL_SCDC_DAT_SHIFT, XV_HDMIRX1_FRL_SCDC_OFFSET, XV_HDMIRX1_FRL_SCDC_RD_MASK, XV_HDMIRX1_FRL_SCDC_RDY_MASK, XV_HdmiRx1_ReadReg, and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_DebugInfo | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function prints debug information on STDIO/UART console.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_DBG_STA_LANE_LOCK_CHGALL_MASK, XV_HDMIRX1_DBG_STA_LANE_LOCK_CHGALL_SHIFT, XV_HDMIRX1_DBG_STA_OFFSET, XV_HDMIRX1_DBG_STA_SCRM_LOCK_CHGALL_MASK, XV_HDMIRX1_DBG_STA_SCRM_LOCK_CHGALL_SHIFT, XV_HDMIRX1_DBG_STA_SKEW_LOCK_CHG_MASK, XV_HDMIRX1_DBG_STA_WA_LOCK_CHGALL_MASK, XV_HDMIRX1_DBG_STA_WA_LOCK_CHGALL_SHIFT, XV_HDMIRX1_DBG_STA_WA_TAP_CHGALL_MASK, XV_HDMIRX1_FRL_ERR_CNT1_OFFSET, XV_HDMIRX1_FRL_RATIO_ACT_OFFSET, XV_HDMIRX1_FRL_RATIO_TOT_OFFSET, XV_HDMIRX1_FRL_RSFC_CNT_OFFSET, XV_HDMIRX1_FRL_STA_FRL_LANES_MASK, XV_HDMIRX1_FRL_STA_FRL_MODE_MASK, XV_HDMIRX1_FRL_STA_FRL_RATE_MASK, XV_HDMIRX1_FRL_STA_FRL_RATE_SHIFT, XV_HDMIRX1_FRL_STA_LANE_LOCK_ALLL_MASK, XV_HDMIRX1_FRL_STA_LANE_LOCK_ALLL_SHIFT, XV_HDMIRX1_FRL_STA_OFFSET, XV_HDMIRX1_FRL_STA_SCRM_LOCK_ALLL_MASK, XV_HDMIRX1_FRL_STA_SCRM_LOCK_ALLL_SHIFT, XV_HDMIRX1_FRL_STA_SKEW_LOCK_MASK, XV_HDMIRX1_FRL_STA_STR_MASK, XV_HDMIRX1_FRL_STA_VID_LOCK_MASK, XV_HDMIRX1_FRL_STA_WA_LOCK_ALLL_MASK, XV_HDMIRX1_FRL_STA_WA_LOCK_ALLL_SHIFT, XV_HDMIRX1_FRL_VID_LOCK_CNT_OFFSET, XV_HdmiRx1_GetFrlActivePixRatio(), XV_HdmiRx1_GetFrlTotalPixRatio(), XV_HDMIRX1_LNKSTA_STA_OFFSET, XV_HDMIRX1_PIO_IN_ALIGNER_LOCK_MASK, XV_HDMIRX1_PIO_IN_MODE_MASK, XV_HDMIRX1_PIO_IN_OFFSET, XV_HDMIRX1_PIO_IN_SCRAMBLER_LOCKALLL_MASK, XV_HDMIRX1_PIO_IN_SCRAMBLER_LOCKALLL_SHIFT, XV_HDMIRX1_PKT_ECC_ERR_OFFSET, XV_HdmiRx1_ReadReg, XV_HDMIRX1_SR_SSB_ERR1_MASK, XV_HDMIRX1_SR_SSB_ERR2_MASK, XV_HDMIRX1_SR_SSB_ERR2_SHIFT, XV_HDMIRX1_SR_SSB_ERR_CNT0_OFFSET, XV_HDMIRX1_SR_SSB_ERR_CNT1_OFFSET, XV_HDMIRX1_SR_SSB_ERR_CNT2_OFFSET, XV_HDMIRX1_SR_SSB_ERR_CNT3_OFFSET, XV_HDMIRX1_TRIB_ANLZ_LN_ACT_ACT_SZ_MASK, XV_HDMIRX1_TRIB_ANLZ_LN_ACT_LN_SZ_MASK, XV_HDMIRX1_TRIB_ANLZ_LN_ACT_LN_SZ_SHIFT, XV_HDMIRX1_TRIB_ANLZ_LN_ACT_OFFSET, XV_HDMIRX1_TRIB_ANLZ_TIM_CHGD_CNT_MASK, XV_HDMIRX1_TRIB_ANLZ_TIM_HS_POL_MASK, XV_HDMIRX1_TRIB_ANLZ_TIM_OFFSET, XV_HDMIRX1_TRIB_ANLZ_TIM_VS_POL_MASK, XV_HDMIRX1_TRIB_HBP_HS_HBP_SZ_MASK, XV_HDMIRX1_TRIB_HBP_HS_HBP_SZ_SHIFT, XV_HDMIRX1_TRIB_HBP_HS_HS_SZ_MASK, XV_HDMIRX1_TRIB_HBP_HS_OFFSET, XV_HDMIRX1_VCKE_SYS_CNT_OFFSET, XV_HDMIRX1_VER_ID_OFFSET, and XV_HDMIRX1_VER_VERSION_OFFSET.
| u32 XV_HdmiRx1_Divide | ( | u32 | Dividend, |
| u32 | Divisor | ||
| ) |
This function calculates the divider for the frame calculation.
| Dividend | is the dividend value to use in the calculation. |
| Divisor | is the divisor value to use in the calculation. |
| void XV_HdmiRx1_DynHDR_GetInfo | ( | XV_HdmiRx1 * | InstancePtr, |
| XV_HdmiRx1_DynHDR_Info * | RxDynHdrInfoPtr | ||
| ) |
This function gets the Dynamic HDR packet type, length, whether graphics overlay and errors if any.
| InstancePtr | is a pointer to the XHdmiRx1 core instance. |
| RxDynHdrInfoPtr | is a pointer to XHdmiRx1 Dynamic HDR info instance. |
References XV_HdmiRx1::Config, XV_HdmiRx1_Config::DynamicHDR, XV_HDMIRX1_AUX_DYN_HDR_INFO_OFFSET, XV_HDMIRX1_AUX_DYN_HDR_STS_ERR_MASK, XV_HDMIRX1_AUX_DYN_HDR_STS_GOF_MASK, XV_HDMIRX1_AUX_DYN_HDR_STS_OFFSET, and XV_HdmiRx1_ReadReg.
| void XV_HdmiRx1_DynHDR_SetAddr | ( | XV_HdmiRx1 * | InstancePtr, |
| u64 | Addr | ||
| ) |
This function sets the Dynamic HDR buffer address.
| InstancePtr | is a pointer to the XHdmiRx1 core instance. |
| Addr | is an address in 64bit format. |
References XV_HdmiRx1::Config, XV_HdmiRx1_Config::DynamicHDR, XV_HDMIRX1_AUX_DYN_HDR_MEMADDR_LSB_OFFSET, XV_HDMIRX1_AUX_DYN_HDR_MEMADDR_MSB_OFFSET, and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_EXT_SYSRST | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 | Reset | ||
| ) |
This function asserts or releases the HDMI RX External SYSRST.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| Reset | specifies TRUE/FALSE value to either assert or release HDMI RX External SYSRST. |
References XV_HDMIRX1_PIO_OUT_CLR_OFFSET, XV_HDMIRX1_PIO_OUT_EXT_SYSRST_MASK, XV_HDMIRX1_PIO_OUT_SET_OFFSET, and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_EXT_VRST | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 | Reset | ||
| ) |
This function asserts or releases the HDMI RX External VRST.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| Reset | specifies TRUE/FALSE value to either assert or release HDMI RX External VRST. |
References XV_HDMIRX1_PIO_OUT_CLR_OFFSET, XV_HDMIRX1_PIO_OUT_EXT_VRST_MASK, XV_HDMIRX1_PIO_OUT_SET_OFFSET, and XV_HdmiRx1_WriteReg.
| u32 XV_HdmiRx1_GetAcrCts | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function provides audio clock regenerating CTS (Cycle-Time Stamp) value at the HDMI sink device.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_AUD_CTS_OFFSET, and XV_HdmiRx1_ReadReg.
| u32 XV_HdmiRx1_GetAcrN | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function provides audio clock regenerating factor N value.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_AUD_N_OFFSET, and XV_HdmiRx1_ReadReg.
| XVidC_ColorFormat XV_HdmiRx1_GetAviColorSpace | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function returns the AVI colorspace (captured by the AUX peripheral)
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_AUX_STA_AVI_CS_MASK, XV_HDMIRX1_AUX_STA_AVI_CS_SHIFT, XV_HDMIRX1_AUX_STA_OFFSET, and XV_HdmiRx1_ReadReg.
Referenced by XV_HdmiRx1_GetVideoProperties().
| u8 XV_HdmiRx1_GetAviVic | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function returns the AVI VIC (captured by the AUX peripheral)
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_AUX_STA_AVI_VIC_MASK, XV_HDMIRX1_AUX_STA_AVI_VIC_SHIFT, XV_HDMIRX1_AUX_STA_OFFSET, and XV_HdmiRx1_ReadReg.
Referenced by XV_HdmiRx1_GetVideoProperties().
| XVidC_ColorDepth XV_HdmiRx1_GetGcpColorDepth | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function returns the GCP color depth (captured by the AUX peripheral)
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_AUX_STA_GCP_CD_MASK, XV_HDMIRX1_AUX_STA_GCP_CD_SHIFT, XV_HDMIRX1_AUX_STA_OFFSET, and XV_HdmiRx1_ReadReg.
Referenced by XV_HdmiRx1_GetVideoProperties().
| u32 XV_HdmiRx1_GetLinkStatus | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 | Type | ||
| ) |
This function provides status of the HDMI RX core Link Status peripheral.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| Type | specifies one of the type for which status to be provided:
|
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_LNKSTA_LNK_ERR0_OFFSET, and XV_HdmiRx1_ReadReg.
| int XV_HdmiRx1_GetTmdsClockRatio | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function gets the SCDC TMDS clock ratio bit.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_PIO_IN_OFFSET, XV_HDMIRX1_PIO_IN_SCDC_TMDS_CLOCK_RATIO_MASK, and XV_HdmiRx1_ReadReg.
| int XV_HdmiRx1_GetVideoProperties | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function reads the video properties from the aux peripheral.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HdmiRx1::Stream, XV_HDMIRX1_AUX_STA_AVI_MASK, XV_HDMIRX1_AUX_STA_OFFSET, XV_HdmiRx1_GetAviColorSpace(), XV_HdmiRx1_GetAviVic(), XV_HdmiRx1_GetGcpColorDepth(), and XV_HdmiRx1_ReadReg.
| int XV_HdmiRx1_GetVideoTiming | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function reads the video timing from the VTD peripheral.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HdmiRx1::Stream, XV_HdmiRx1::VrrIF, XV_HdmiRx1_ReadReg, XV_HDMIRX1_VTD_ACT_LIN_OFFSET, XV_HDMIRX1_VTD_ACT_PIX_OFFSET, XV_HDMIRX1_VTD_HBP_OFFSET, XV_HDMIRX1_VTD_HFP_OFFSET, XV_HDMIRX1_VTD_HSW_OFFSET, XV_HDMIRX1_VTD_STA_FMT_MASK, XV_HDMIRX1_VTD_STA_HS_POL_MASK, XV_HDMIRX1_VTD_STA_OFFSET, XV_HDMIRX1_VTD_STA_VS_POL_MASK, XV_HDMIRX1_VTD_TOT_LIN_OFFSET, XV_HDMIRX1_VTD_TOT_PIX_OFFSET, XV_HDMIRX1_VTD_VBP_OFFSET, XV_HDMIRX1_VTD_VFP_OFFSET, and XV_HDMIRX1_VTD_VSW_OFFSET.
| XV_HdmiC_VrrInfoframeType XV_HdmiRx1_GetVrrIfType | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function returns VRR infoframe type.
| InstancePtr | is a pointer to the XHdmiRx1 core instance. |
References XV_HdmiRx1::VrrIF.
| void XV_HdmiRx1_Info | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function prints stream and timing information on STDIO/UART console.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1::Stream.
| void XV_HdmiRx1_INT_LRST | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 | Reset | ||
| ) |
This function asserts or releases the HDMI RX Internal LRST.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| Reset | specifies TRUE/FALSE value to either assert or release HDMI RX Internal LRST. |
References XV_HDMIRX1_PIO_OUT_CLR_OFFSET, XV_HDMIRX1_PIO_OUT_INT_LRST_MASK, XV_HDMIRX1_PIO_OUT_SET_OFFSET, and XV_HdmiRx1_WriteReg.
| void XV_HdmiRx1_INT_VRST | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 | Reset | ||
| ) |
This function asserts or releases the HDMI RX Internal VRST.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| Reset | specifies TRUE/FALSE value to either assert or release HDMI RX Internal VRST. |
References XV_HDMIRX1_PIO_OUT_CLR_OFFSET, XV_HDMIRX1_PIO_OUT_INT_VRST_MASK, XV_HDMIRX1_PIO_OUT_SET_OFFSET, and XV_HdmiRx1_WriteReg.
| int XV_HdmiRx1_IsLinkStatusErrMax | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function provides status of one of the link error counters reached the maximum value.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_LNKSTA_STA_ERR_MAX_MASK, XV_HDMIRX1_LNKSTA_STA_OFFSET, and XV_HdmiRx1_ReadReg.
| int XV_HdmiRx1_IsStreamConnected | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function provides the stream connected status.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1::Stream.
| int XV_HdmiRx1_IsStreamScrambled | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function provides the stream scrambler status.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1::Stream.
| int XV_HdmiRx1_IsStreamUp | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function provides status of the stream.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1::Stream, and XV_HDMIRX1_STATE_STREAM_UP.
| XVidC_VideoMode XV_HdmiRx1_LookupVmId | ( | u8 | Vic | ) |
This function searches for the video mode based on the vic.
| Vic |
| void XV_HdmiRx1_RegisterDebug | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function prints out HDMI RX register.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HDMIRX1_FRL_VID_LOCK_CNT_OFFSET, and XV_HdmiRx1_ReadReg.
| void XV_HdmiRx1_SetAxiClkFreq | ( | XV_HdmiRx1 * | InstancePtr, |
| u32 | ClkFreq | ||
| ) |
This function sets the AXI4-Lite Clock Frequency.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| ClkFreq | specifies the value that needs to be set. |
References XV_HdmiRx1::Config.
| void XV_HdmiRx1_SetColorFormat | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function sets the color format.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HdmiRx1::Stream, XV_HDMIRX1_PIO_OUT_COLOR_SPACE_MASK, XV_HDMIRX1_PIO_OUT_COLOR_SPACE_SHIFT, XV_HDMIRX1_PIO_OUT_MSK_OFFSET, XV_HDMIRX1_PIO_OUT_OFFSET, and XV_HdmiRx1_WriteReg.
| int XV_HdmiRx1_SetHpd | ( | XV_HdmiRx1 * | InstancePtr, |
| u8 | SetClr | ||
| ) |
This function enables/clear Hot-Plug-Detect.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| SetClr | specifies TRUE/FALSE value to either enable or clear HPD respectively. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HdmiRx1_FrlReset(), XV_HDMIRX1_PIO_OUT_CLR_OFFSET, XV_HDMIRX1_PIO_OUT_HPD_MASK, XV_HDMIRX1_PIO_OUT_SET_OFFSET, and XV_HdmiRx1_WriteReg.
Referenced by XV_HdmiRx1_CfgInitialize().
| void XV_HdmiRx1_SetPixelClk | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function sets the PixelClk based on the current ColorDepth, RefClk and ColorFormatId.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1::Stream.
| int XV_HdmiRx1_SetPixelRate | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function sets the pixel rate.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_Config::BaseAddress, XV_HdmiRx1::Config, XV_HdmiRx1::Stream, XV_HDMIRX1_PIO_OUT_MSK_OFFSET, XV_HDMIRX1_PIO_OUT_OFFSET, XV_HDMIRX1_PIO_OUT_PIXEL_RATE_MASK, XV_HDMIRX1_PIO_OUT_PIXEL_RATE_SHIFT, and XV_HdmiRx1_WriteReg.
Referenced by XV_HdmiRx1_SetStream().
| int XV_HdmiRx1_SetStream | ( | XV_HdmiRx1 * | InstancePtr, |
| XVidC_PixelsPerClock | Ppc, | ||
| u32 | Clock | ||
| ) |
This function sets the HDMI RX stream parameters.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
| Ppc | specifies the pixel per clock.
|
| Clock | specifies reference pixel clock frequency. |
References XV_HdmiRx1::Stream, and XV_HdmiRx1_SetPixelRate().
| void XV_HdmiRx1_SetVrrIfType | ( | XV_HdmiRx1 * | InstancePtr, |
| XV_HdmiC_VrrInfoframeType | Type | ||
| ) |
This function Sets VRR infoframe type.
| InstancePtr | is a pointer to the XHdmiRx1 core instance. |
| Type | of type XV_HdmiRx1_VrrInfoframeType |
References XV_HdmiRx1::VrrIF.
| void XV_HdmiRx1_Start | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function starts the HDMI RX core.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_PioEnable, and XV_HdmiRx1_PioIntrEnable.
| void XV_HdmiRx1_Stop | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function stops the HDMI RX core.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1_PioDisable, and XV_HdmiRx1_PioIntrDisable.
| void XV_HdmiRx1_TmrStartMs | ( | XV_HdmiRx1 * | InstancePtr, |
| u32 | Milliseconds, | ||
| u8 | TimerSelect | ||
| ) |
This function sets the timer of RX Core.
| InstancePtr | is a pointer to the XHdmi_Rx core instance. |
| Milliseconds | specifies the timer's frequency (in milliseconds) |
| TimerSelect | selects which of the timer unit to be used |
References XV_HdmiRx1::Config, XV_HdmiRx1_Tmr1Start, XV_HdmiRx1_Tmr2Start, XV_HdmiRx1_Tmr3Start, and XV_HdmiRx1_Tmr4Start.
Referenced by XV_HdmiRx1_PhyResetPoll().
| void XV_HdmiRx1_UpdateEdFlags | ( | XV_HdmiRx1 * | InstancePtr | ) |
This function checks if RX's CED or RSED counters are incrementing at the rate of 4 or higher per second or if they first hit the maximum value (0x7FFF) then set the CED_Update or RSED_Update SCDC flags if true.
| InstancePtr | is a pointer to the XV_HdmiRx1 core instance. |
References XV_HdmiRx1::Stream, XV_HdmiRx1_FrlDdcReadField(), and XV_HdmiRx1_FrlDdcWriteField().