v_hdmirxss1
Vitis Drivers API Documentation
xv_hdmirxss1.c File Reference

Overview

This is main code of Xilinx HDMI Receiver Subsystem device driver.

Please see xv_hdmirxss1.h for more details of the driver.

MODIFICATION HISTORY:
Ver   Who    Date     Changes


1.00 EB 22/05/18 Initial release.

Macros

#define XV_HdmiRxSs1_BridgeYuv420(InstancePtr, Enable)
 This macros selects the bridge YUV420 mode. More...
 
#define XV_HdmiRxSs1_BridgePixelDrop(InstancePtr, Enable)
 This macros selects the bridge pixel repeat mode. More...
 

Functions

void XV_HdmiRxSs1_RegisterDebug (XV_HdmiRxSs1 *InstancePtr)
 This function prints out the sub-core register dump. More...
 
void XV_HdmiRxSs1_ReportCoreInfo (XV_HdmiRxSs1 *InstancePtr)
 This function reports list of cores included in Video Processing Subsystem. More...
 
void XV_HdmiRxSs1_SetUserTimerHandler (XV_HdmiRxSs1 *InstancePtr, XVidC_DelayHandler CallbackFunc, void *CallbackRef)
 This function installs a custom delay/sleep function to be used by the XV_HdmiRxSs1 driver. More...
 
void XV_HdmiRxSS1_HdmiRxIntrHandler (XV_HdmiRxSs1 *InstancePtr)
 This function calls the interrupt handler for HDMI RX. More...
 
int XV_HdmiRxSs1_CfgInitialize (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_Config *CfgPtr, UINTPTR EffectiveAddr)
 This function initializes the video subsystem and included sub-cores. More...
 
void XV_HdmiRxSs1_Start (XV_HdmiRxSs1 *InstancePtr)
 This function starts the HDMI RX subsystem including all sub-cores that are included in the processing pipeline for a given use-case. More...
 
void XV_HdmiRxSs1_Stop (XV_HdmiRxSs1 *InstancePtr)
 This function stops the HDMI RX subsystem including all sub-cores Stop the video pipe starting from front to back. More...
 
void XV_HdmiRxSs1_Reset (XV_HdmiRxSs1 *InstancePtr)
 This function resets the video subsystem sub-cores. More...
 
void XV_HdmiRxSs1_RXCore_VRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the Internal Video reset of the HDMI subcore within the subsystem. More...
 
void XV_HdmiRxSs1_RXCore_LRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the Internal Link reset of the HDMI subcore within the subsystem. More...
 
void XV_HdmiRxSs1_VRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the video reset of other blocks within the subsystem. More...
 
void XV_HdmiRxSs1_SYSRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the system reset of other blocks within the subsystem. More...
 
int XV_HdmiRxSs1_SetCallback (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_HandlerType HandlerType, void *CallbackFunc, void *CallbackRef)
 This function installs an asynchronous callback function for the given HandlerType: More...
 
int XV_HdmiRxSs1_SetLogCallback (XV_HdmiRxSs1 *InstancePtr, u64 *CallbackFunc, void *CallbackRef)
 This function installs an asynchronous callback function for the LogWrite API: More...
 
void XV_HdmiRxSs1_SetEdidParam (XV_HdmiRxSs1 *InstancePtr, u8 *EdidDataPtr, u16 Length)
 This function Sets the EDID parameters in the HDMI RX SS struct. More...
 
void XV_HdmiRxSs1_LoadDefaultEdid (XV_HdmiRxSs1 *InstancePtr)
 This function loads the default EDID to the HDMI RX. More...
 
void XV_HdmiRxSs1_LoadEdid (XV_HdmiRxSs1 *InstancePtr, u8 *EdidDataPtr, u16 Length)
 This function loads the default EDID to the HDMI RX. More...
 
void XV_HdmiRxSs1_SetHpd (XV_HdmiRxSs1 *InstancePtr, u8 Value)
 This function sets the HPD on the HDMI RX. More...
 
void XV_HdmiRxSs1_ToggleHpd (XV_HdmiRxSs1 *InstancePtr)
 This function toggles the HPD on the HDMI RX. More...
 
XHdmiC_Aux * XV_HdmiRxSs1_GetAuxiliary (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS Aux structure. More...
 
XHdmiC_AVI_InfoFrame * XV_HdmiRxSs1_GetAviInfoframe (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS AVI InfoFrame structure. More...
 
XHdmiC_GeneralControlPacket * XV_HdmiRxSs1_GetGCP (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS General Control Packet structure. More...
 
XHdmiC_AudioInfoFrame * XV_HdmiRxSs1_GetAudioInfoframe (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS Audio InfoFrame structure. More...
 
XHdmiC_DRMInfoFrame * XV_HdmiRxSs1_GetDrmInfoframe (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI 2.1 RX SS DRM InfoFrame structure. More...
 
XHdmiC_VSIF * XV_HdmiRxSs1_GetVSIF (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS Vendor Specific InfoFrame structure. More...
 
u32 XV_HdmiRxSs1_SetStream (XV_HdmiRxSs1 *InstancePtr, u32 Clock, u32 LineRate)
 This function set HDMI RX susbsystem stream parameters. More...
 
XVidC_VideoStream * XV_HdmiRxSs1_GetVideoStream (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS video stream. More...
 
u8 XV_HdmiRxSs1_GetVideoIDCode (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS video Identification code. More...
 
u8 XV_HdmiRxSs1_GetVideoStreamType (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS video stream type. More...
 
u8 XV_HdmiRxSs1_GetTransportMode (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS video stream type. More...
 
u8 XV_HdmiRxSs1_GetVideoStreamScramblingFlag (XV_HdmiRxSs1 *InstancePtr)
 This function returns the pointer to HDMI RX SS video stream type. More...
 
u8 XV_HdmiRxSs1_GetAudioChannels (XV_HdmiRxSs1 *InstancePtr)
 This function returns the HDMI RX SS number of active audio channels. More...
 
XV_HdmiRx1_AudioFormatType XV_HdmiRxSs1_GetAudioFormat (XV_HdmiRxSs1 *InstancePtr)
 This function returns the HDMI RX SS audio format. More...
 
u32 XV_HdmiRxSs1_GetAudioAcrCtsVal (XV_HdmiRxSs1 *InstancePtr)
 This function returns the HDMI RX SS CTS value. More...
 
u32 XV_HdmiRxSs1_GetAudioAcrNVal (XV_HdmiRxSs1 *InstancePtr)
 This function returns the HDMI RX SS CTS value. More...
 
void XV_HdmiRxSs1_RefClockChangeInit (XV_HdmiRxSs1 *InstancePtr)
 This function is called when HDMI RX SS TMDS clock changes. More...
 
void XV_HdmiRxSs1_DebugInfo (XV_HdmiRxSs1 *InstancePtr)
 This function prints debug information on STDIO/UART console. More...
 
void XV_HdmiRxSs1_DdcRegDump (XV_HdmiRxSs1 *InstancePtr)
 This function prints out RX's SCDC registers and values on STDIO/UART console. More...
 
void XV_HdmiRxSs1_ReportTiming (XV_HdmiRxSs1 *InstancePtr)
 This function prints the HDMI RX SS timing information. More...
 
void XV_HdmiRxSs1_ReportLinkQuality (XV_HdmiRxSs1 *InstancePtr)
 This function reports the link quality based on the link error counter. More...
 
void XV_HdmiRxSs1_ReportDRMInfo (XV_HdmiRxSs1 *InstancePtr)
 This function prints the HDMI 2.1 RX SS static HDR infoframe information. More...
 
void XV_HdmiRxSs1_ReportAudio (XV_HdmiRxSs1 *InstancePtr)
 This function prints the HDMI RX SS audio information. More...
 
void XV_HdmiRxSs1_ReportInfoFrame (XV_HdmiRxSs1 *InstancePtr)
 This function prints the HDMI RX SS audio information. More...
 
void XV_HdmiRxSs1_ReportSubcoreVersion (XV_HdmiRxSs1 *InstancePtr)
 This function prints the HDMI RX SS subcore versions. More...
 
int XV_HdmiRxSs1_IsStreamUp (XV_HdmiRxSs1 *InstancePtr)
 This function checks if the video stream is up. More...
 
int XV_HdmiRxSs1_IsStreamConnected (XV_HdmiRxSs1 *InstancePtr)
 This function checks if the interface is connected. More...
 
void XV_HdmiRxSs1_SetDefaultPpc (XV_HdmiRxSs1 *InstancePtr, u8 Id)
 This function will set the default in HDF. More...
 
void XV_HdmiRxSs1_SetPpc (XV_HdmiRxSs1 *InstancePtr, u8 Id, u8 Ppc)
 This function will set PPC specified by user. More...
 
void XV_HdmiRxSS1_SetAppVersion (XV_HdmiRxSs1 *InstancePtr, u8 maj, u8 min)
 This function will set the major and minor application version in RXSs struct. More...
 
void XV_HdmiRxSs1_AudioMute (XV_HdmiRxSs1 *InstancePtr, u8 Enable)
 This function set HDMI RX audio parameters. More...
 
void XV_HdmiRxSs1_VfpControl (XV_HdmiRxSs1 *InstancePtr, u8 Enable)
 This function controls HDMI RX VFP event enable/disable. More...
 
XV_HdmiC_VrrInfoFrame * XV_HdmiRxSs1_GetVrrIf (XV_HdmiRxSs1 *InstancePtr)
 This function returns VRR infoframe type. More...
 
XVidC_PixelsPerClock XV_HdmiRxSs1_GetCorePpc (XV_HdmiRxSs1 *InstancePtr)
 This function returns core ppc value. More...
 
void XV_HdmiRxSs1_DynHDR_DM_Enable (XV_HdmiRxSs1 *InstancePtr)
 This function enables the Data mover in Dynamic HDR. More...
 
void XV_HdmiRxSs1_DynHDR_DM_Disable (XV_HdmiRxSs1 *InstancePtr)
 This function disables the Data mover in Dynamic HDR. More...
 
void XV_HdmiRxSs1_DynHDR_SetAddr (XV_HdmiRxSs1 *InstancePtr, u64 Addr)
 This function sets the buffer address for Dyanamic HDR. More...
 
void XV_HdmiRxSs1_DynHDR_GetInfo (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_DynHDR_Info *RxDynHdrInfo)
 This function sets the buffer address for Dyanamic HDR. More...
 

Variables

XV_HdmiRxSs1_SubCores XV_HdmiRxSs1_SubCoreRepo [XPAR_XV_HDMIRXSS1_NUM_INSTANCES]
 Define Driver instance of all sub-core included in the design. More...
 

Macro Definition Documentation

#define XV_HdmiRxSs1_BridgePixelDrop (   InstancePtr,
  Enable 
)
Value:
{ \
XV_HdmiRx1_Bridge_pixel(InstancePtr->HdmiRx1Ptr, Enable); \
}

This macros selects the bridge pixel repeat mode.

Parameters
InstancePtris a pointer to the HDMI RX Subsystem
#define XV_HdmiRxSs1_BridgeYuv420 (   InstancePtr,
  Enable 
)
Value:
{ \
XV_HdmiRx1_Bridge_yuv420(InstancePtr->HdmiRx1Ptr, Enable); \
} \

This macros selects the bridge YUV420 mode.

Parameters
InstancePtris a pointer to the HDMI RX Subsystem

Function Documentation

void XV_HdmiRxSs1_AudioMute ( XV_HdmiRxSs1 InstancePtr,
u8  Enable 
)

This function set HDMI RX audio parameters.

Parameters
Enable0: Unmute the audio 1: Mute the audio.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

int XV_HdmiRxSs1_CfgInitialize ( XV_HdmiRxSs1 InstancePtr,
XV_HdmiRxSs1_Config CfgPtr,
UINTPTR  EffectiveAddr 
)

This function initializes the video subsystem and included sub-cores.

This function must be called prior to using the subsystem. Initialization includes setting up the instance data for top level as well as all included sub-core therein, and ensuring the hardware is in a known stable state.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
CfgPtrpoints to the configuration structure associated with the subsystem instance.
EffectiveAddris 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.
Returns
XST_SUCCESS if initialization is successful else XST_FAILURE

References XV_HdmiRxSs1::AppMajVer, XV_HdmiRxSs1::AppMinVer, XV_HdmiRxSs1_Config::AxiLiteClkFreq, XV_HdmiRxSs1_Config::BaseAddress, XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DeviceId, XV_HdmiRxSs1_Config::DSC, XV_HdmiRxSs1::EnableHDCPLogging, XV_HdmiRxSs1::EnableHDMILogging, XV_HdmiRxSs1::HdmiRx1Ptr, XV_HdmiRxSs1::IsReady, XV_HdmiRxSs1_GetDrmInfoframe(), XV_HDMIRXSS1_HDCP_14, XV_HDMIRXSS1_HDCP_22, XV_HDMIRXSS1_HDCP_NOUSERPREF, XV_HdmiRxSs1_Reset(), and XV_HdmiRxSs1_SubcoreInitHdmiRx1().

void XV_HdmiRxSs1_DdcRegDump ( XV_HdmiRxSs1 InstancePtr)

This function prints out RX's SCDC registers and values on STDIO/UART console.

Parameters
InstancePtris a pointer to the XV_HdmiRxSs1 instance.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DebugInfo ( XV_HdmiRxSs1 InstancePtr)

This function prints debug information on STDIO/UART console.

Parameters
InstancePtris a pointer to the XV_HdmiRxSs1 instance.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by DetailedInfo().

void XV_HdmiRxSs1_DynHDR_DM_Disable ( XV_HdmiRxSs1 InstancePtr)

This function disables the Data mover in Dynamic HDR.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Returns
None
Note
None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DynHDR_DM_Enable ( XV_HdmiRxSs1 InstancePtr)

This function enables the Data mover in Dynamic HDR.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Returns
None
Note
None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DynHDR_GetInfo ( XV_HdmiRxSs1 InstancePtr,
XV_HdmiRxSs1_DynHDR_Info RxDynHdrInfo 
)

This function sets the buffer address for Dyanamic HDR.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
RxDynHdrInfopointer to dynamic hdr info structure. This is passed by the application.
Returns
None
Note
None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DynHDR_SetAddr ( XV_HdmiRxSs1 InstancePtr,
u64  Addr 
)

This function sets the buffer address for Dyanamic HDR.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Addr64 bit address
Returns
None
Note
None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by main().

u32 XV_HdmiRxSs1_GetAudioAcrCtsVal ( XV_HdmiRxSs1 InstancePtr)

This function returns the HDMI RX SS CTS value.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Channels
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u32 XV_HdmiRxSs1_GetAudioAcrNVal ( XV_HdmiRxSs1 InstancePtr)

This function returns the HDMI RX SS CTS value.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Channels
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u8 XV_HdmiRxSs1_GetAudioChannels ( XV_HdmiRxSs1 InstancePtr)

This function returns the HDMI RX SS number of active audio channels.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Channels
Note
None.

References XV_HdmiRxSs1::AudioChannels.

XV_HdmiRx1_AudioFormatType XV_HdmiRxSs1_GetAudioFormat ( XV_HdmiRxSs1 InstancePtr)

This function returns the HDMI RX SS audio format.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Channels
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_ReportAudio().

XHdmiC_AudioInfoFrame* XV_HdmiRxSs1_GetAudioInfoframe ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS Audio InfoFrame structure.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Returns
XHdmiC_AudioInfoFrame pointer
Note
None.

References XV_HdmiRxSs1::AudioInfoframe.

XHdmiC_Aux* XV_HdmiRxSs1_GetAuxiliary ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS Aux structure.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
XVidC_VideoStream pointer
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_UpdateAuxFifo().

XHdmiC_AVI_InfoFrame* XV_HdmiRxSs1_GetAviInfoframe ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS AVI InfoFrame structure.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Returns
XHdmiC_AVI_InfoFrame pointer
Note
None.

References XV_HdmiRxSs1::AVIInfoframe.

XVidC_PixelsPerClock XV_HdmiRxSs1_GetCorePpc ( XV_HdmiRxSs1 InstancePtr)

This function returns core ppc value.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Returns
Core pixel per clock value
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

XHdmiC_DRMInfoFrame* XV_HdmiRxSs1_GetDrmInfoframe ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI 2.1 RX SS DRM InfoFrame structure.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
XHdmiC_DRMInfoFrame pointer
Note
None.

References XV_HdmiRxSs1::DrmInfoframe.

Referenced by XV_HdmiRxSs1_CfgInitialize(), and XV_HdmiRxSs1_ReportDRMInfo().

XHdmiC_GeneralControlPacket* XV_HdmiRxSs1_GetGCP ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS General Control Packet structure.

Parameters
InstancePtrpointer to XV_HdmiRXSs instance
Returns
XHdmiC_GeneralControlPacket pointer
Note
None.

References XV_HdmiRxSs1::GCP.

u8 XV_HdmiRxSs1_GetTransportMode ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS video stream type.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Transport Mode 1:FRL 0:TMDS
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u8 XV_HdmiRxSs1_GetVideoIDCode ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS video Identification code.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
VIC
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

XVidC_VideoStream* XV_HdmiRxSs1_GetVideoStream ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS video stream.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
XVidC_VideoStream pointer
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_ProcessVRRTimingChange(), and main().

u8 XV_HdmiRxSs1_GetVideoStreamScramblingFlag ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS video stream type.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Stream Type 1:IsScrambled 0: not Scrambled
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u8 XV_HdmiRxSs1_GetVideoStreamType ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS video stream type.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
Stream Type 1:HDMI 0:DVI
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

XV_HdmiC_VrrInfoFrame* XV_HdmiRxSs1_GetVrrIf ( XV_HdmiRxSs1 InstancePtr)

This function returns VRR infoframe type.

Parameters
InstancePtris a pointer to the XV_HdmiRxSs1 instance.
Returns
XV_HdmiRx1_VrrInfoframeType
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_ProcessVTEMPacket(), Exdes_ReadVTEMPacket(), and main().

XHdmiC_VSIF* XV_HdmiRxSs1_GetVSIF ( XV_HdmiRxSs1 InstancePtr)

This function returns the pointer to HDMI RX SS Vendor Specific InfoFrame structure.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
XHdmiC_VSIF pointer
Note
None.

References XV_HdmiRxSs1::VSIF.

void XV_HdmiRxSS1_HdmiRxIntrHandler ( XV_HdmiRxSs1 InstancePtr)

This function calls the interrupt handler for HDMI RX.

Parameters
InstancePtris a pointer to the HDMI RX Subsystem

References XV_HdmiRxSs1::HdmiRx1Ptr.

int XV_HdmiRxSs1_IsStreamConnected ( XV_HdmiRxSs1 InstancePtr)

This function checks if the interface is connected.

Parameters
None.
Returns
  • TRUE if interface is connected.
  • FALSE if interface is not connected.
Note
None.

References XV_HdmiRxSs1::IsStreamConnected.

int XV_HdmiRxSs1_IsStreamUp ( XV_HdmiRxSs1 InstancePtr)

This function checks if the video stream is up.

Parameters
None.
Returns
  • TRUE if stream is up.
  • FALSE if stream is down.
Note
None.

References XV_HdmiRxSs1::IsStreamUp.

void XV_HdmiRxSs1_LoadDefaultEdid ( XV_HdmiRxSs1 InstancePtr)

This function loads the default EDID to the HDMI RX.

Returns
None.
Note
None.

References XV_HdmiRxSs1::EdidLength, XV_HdmiRxSs1::EdidPtr, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_LoadEdid ( XV_HdmiRxSs1 InstancePtr,
u8 *  EdidDataPtr,
u16  Length 
)

This function loads the default EDID to the HDMI RX.

Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_RefClockChangeInit ( XV_HdmiRxSs1 InstancePtr)

This function is called when HDMI RX SS TMDS clock changes.

Parameters
None.
Returns
None
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr, XV_HdmiRxSs1::TMDSClockRatio, XV_HDMIRXSS1_LOG_EVT_REFCLOCKCHANGE, and XV_HdmiRxSs1_LogWrite().

void XV_HdmiRxSs1_RegisterDebug ( XV_HdmiRxSs1 InstancePtr)

This function prints out the sub-core register dump.

Parameters
InstancePtrInstance Pointer to the main data structure
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_ReportAudio ( XV_HdmiRxSs1 InstancePtr)

This function prints the HDMI RX SS audio information.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr, and XV_HdmiRxSs1_GetAudioFormat().

Referenced by Info().

void XV_HdmiRxSs1_ReportCoreInfo ( XV_HdmiRxSs1 InstancePtr)

This function reports list of cores included in Video Processing Subsystem.

Parameters
InstancePtris a pointer to the Subsystem instance.
Returns
None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by DetailedInfo().

void XV_HdmiRxSs1_ReportDRMInfo ( XV_HdmiRxSs1 InstancePtr)

This function prints the HDMI 2.1 RX SS static HDR infoframe information.

Parameters
InstancePtrpointer to XV_HdmiRxSs1 instance
Returns
None.
Note
None.

References XV_HdmiRxSs1_GetDrmInfoframe().

Referenced by Info().

void XV_HdmiRxSs1_ReportInfoFrame ( XV_HdmiRxSs1 InstancePtr)

This function prints the HDMI RX SS audio information.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_ReportLinkQuality ( XV_HdmiRxSs1 InstancePtr)

This function reports the link quality based on the link error counter.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Info().

void XV_HdmiRxSs1_ReportSubcoreVersion ( XV_HdmiRxSs1 InstancePtr)

This function prints the HDMI RX SS subcore versions.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by DetailedInfo().

void XV_HdmiRxSs1_ReportTiming ( XV_HdmiRxSs1 InstancePtr)

This function prints the HDMI RX SS timing information.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Info().

void XV_HdmiRxSs1_Reset ( XV_HdmiRxSs1 InstancePtr)

This function resets the video subsystem sub-cores.

There are 2 reset networks within the subsystem

  • For cores that are on AXIS interface
  • For cores that are on AXI-MM interface
Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None

References XV_HDMIRXSS1_LOG_EVT_RESET, XV_HdmiRxSs1_LogWrite(), XV_HdmiRxSs1_RXCore_LRST(), XV_HdmiRxSs1_RXCore_VRST(), and XV_HdmiRxSs1_SYSRST().

Referenced by XV_HdmiRxSs1_CfgInitialize().

void XV_HdmiRxSs1_RXCore_LRST ( XV_HdmiRxSs1 InstancePtr,
u8  Reset 
)

This function asserts or releases the Internal Link reset of the HDMI subcore within the subsystem.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_Reset().

void XV_HdmiRxSs1_RXCore_VRST ( XV_HdmiRxSs1 InstancePtr,
u8  Reset 
)

This function asserts or releases the Internal Video reset of the HDMI subcore within the subsystem.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_Reset().

void XV_HdmiRxSS1_SetAppVersion ( XV_HdmiRxSs1 InstancePtr,
u8  maj,
u8  min 
)

This function will set the major and minor application version in RXSs struct.

Parameters
InstancePtris a pointer to the XV_HdmiRxSs1 core instance.
majis the major version of the application.
minis the minor version of the application.
Returns
void.
Note
None.

References XV_HdmiRxSs1::AppMajVer, and XV_HdmiRxSs1::AppMinVer.

int XV_HdmiRxSs1_SetCallback ( XV_HdmiRxSs1 InstancePtr,
XV_HdmiRxSs1_HandlerType  HandlerType,
void *  CallbackFunc,
void *  CallbackRef 
)

This function installs an asynchronous callback function for the given HandlerType:

HandlerType                     Callback Function Type
-----------------------         ---------------------------------------------
(XV_HDMIRXSS1_HANDLER_CONNECT)             HpdCallback
(XV_HDMIRXSS1_HANDLER_VS)                  VsCallback
(XV_HDMIRXSS1_HANDLER_STREAM_DOWN)         StreamDownCallback
(XV_HDMIRXSS1_HANDLER_STREAM_UP)           StreamUpCallback
(XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATED)
(XV_HDMIRXSS1_HANDLER_HDCP_UNAUTHENTICATED)
(XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATION_REQUEST)
(XV_HDMIRXSS1_HANDLER_HDCP_STREAM_MANAGE_REQUEST)
(XV_HDMIRXSS1_HANDLER_HDCP_TOPOLOGY_UPDATE)
Parameters
InstancePtris a pointer to the HDMI RX Subsystem instance.
HandlerTypespecifies the type of handler.
CallbackFuncis the address of the callback function.
CallbackRefis a user data item that will be passed to the callback function when it is invoked.
Returns
  • XST_SUCCESS if callback function installed successfully.
  • XST_INVALID_PARAM when HandlerType is invalid.
Note
Invoking this function for a handler that already has been installed replaces it with the new handler.

References XV_HdmiRxSs1::AudCallback, XV_HdmiRxSs1::AudRef, XV_HdmiRxSs1::AuxCallback, XV_HdmiRxSs1::AuxRef, XV_HdmiRxSs1::BrdgOverflowCallback, XV_HdmiRxSs1::BrdgOverflowRef, XV_HdmiRxSs1::ConnectCallback, XV_HdmiRxSs1::ConnectRef, XV_HdmiRxSs1::DdcCallback, XV_HdmiRxSs1::DdcRef, XV_HdmiRxSs1::DSCPktErrCallback, XV_HdmiRxSs1::DSCStreamChangeEventCallback, XV_HdmiRxSs1::DSCStrmChgEvtRef, XV_HdmiRxSs1::DSCStsUpdtEvtCallback, XV_HdmiRxSs1::DSCStsUpdtEvtRef, XV_HdmiRxSs1::DynHdrCallback, XV_HdmiRxSs1::DynHdrRef, XV_HdmiRxSs1::FrlConfigCallback, XV_HdmiRxSs1::FrlConfigRef, XV_HdmiRxSs1::FrlStartCallback, XV_HdmiRxSs1::FrlStartRef, XV_HdmiRxSs1::HdcpCallback, XV_HdmiRxSs1::HdcpRef, XV_HdmiRxSs1::LnkStaCallback, XV_HdmiRxSs1::LnkStaRef, XV_HdmiRxSs1::PhyResetCallback, XV_HdmiRxSs1::PhyResetRef, XV_HdmiRxSs1::StreamDownCallback, XV_HdmiRxSs1::StreamDownRef, XV_HdmiRxSs1::StreamInitCallback, XV_HdmiRxSs1::StreamInitRef, XV_HdmiRxSs1::StreamUpCallback, XV_HdmiRxSs1::StreamUpRef, XV_HdmiRxSs1::TmdsClkRatioCallback, XV_HdmiRxSs1::TmdsClkRatioRef, XV_HdmiRxSs1::TmdsConfigCallback, XV_HdmiRxSs1::TmdsConfigRef, XV_HdmiRxSs1::VfpChangeCallback, XV_HdmiRxSs1::VfpChangeRef, XV_HdmiRxSs1::VicErrorCallback, XV_HdmiRxSs1::VicErrorRef, XV_HdmiRxSs1::VidRdyErrorCallback, XV_HdmiRxSs1::VidRdyErrorRef, XV_HdmiRxSs1::VrrRdyCallback, XV_HdmiRxSs1::VrrRdyRef, XV_HDMIRXSS1_HANDLER_AUD, XV_HDMIRXSS1_HANDLER_AUX, XV_HDMIRXSS1_HANDLER_BRDGOVERFLOW, XV_HDMIRXSS1_HANDLER_CONNECT, XV_HDMIRXSS1_HANDLER_DDC, XV_HDMIRXSS1_HANDLER_DSC_PKT_ERR, XV_HDMIRXSS1_HANDLER_DSC_STRM_CH, XV_HDMIRXSS1_HANDLER_DSC_STS_UPDT, XV_HDMIRXSS1_HANDLER_DYN_HDR, XV_HDMIRXSS1_HANDLER_FRL_CONFIG, XV_HDMIRXSS1_HANDLER_FRL_START, XV_HDMIRXSS1_HANDLER_HDCP, XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATED, XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATION_REQUEST, XV_HDMIRXSS1_HANDLER_HDCP_ENCRYPTION_UPDATE, XV_HDMIRXSS1_HANDLER_HDCP_STREAM_MANAGE_REQUEST, XV_HDMIRXSS1_HANDLER_HDCP_TOPOLOGY_UPDATE, XV_HDMIRXSS1_HANDLER_HDCP_UNAUTHENTICATED, XV_HDMIRXSS1_HANDLER_LNKSTA, XV_HDMIRXSS1_HANDLER_PHY_RESET, XV_HDMIRXSS1_HANDLER_STREAM_DOWN, XV_HDMIRXSS1_HANDLER_STREAM_INIT, XV_HDMIRXSS1_HANDLER_STREAM_UP, XV_HDMIRXSS1_HANDLER_TMDS_CLK_RATIO, XV_HDMIRXSS1_HANDLER_TMDS_CONFIG, XV_HDMIRXSS1_HANDLER_VFP_CH, XV_HDMIRXSS1_HANDLER_VIC_ERROR, XV_HDMIRXSS1_HANDLER_VID_RDY_ERR, and XV_HDMIRXSS1_HANDLER_VRR_RDY.

void XV_HdmiRxSs1_SetDefaultPpc ( XV_HdmiRxSs1 InstancePtr,
u8  Id 
)

This function will set the default in HDF.

Parameters
InstancePtris a pointer to the XV_HdmiRxSs1 core instance.
Idis the XV_HdmiRxSs1 ID to operate on.
Returns
None.
Note
None.

References XV_HdmiRxSs1::Config, and XV_HdmiRxSs1_Config::Ppc.

void XV_HdmiRxSs1_SetEdidParam ( XV_HdmiRxSs1 InstancePtr,
u8 *  EdidDataPtr,
u16  Length 
)

This function Sets the EDID parameters in the HDMI RX SS struct.

Returns
None.
Note
None.

References XV_HdmiRxSs1::EdidLength, and XV_HdmiRxSs1::EdidPtr.

void XV_HdmiRxSs1_SetHpd ( XV_HdmiRxSs1 InstancePtr,
u8  Value 
)

This function sets the HPD on the HDMI RX.

Parameters
Valueis a flag used to set the HPD.
  • TRUE drives HPD high
  • FALSE drives HPD low
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

int XV_HdmiRxSs1_SetLogCallback ( XV_HdmiRxSs1 InstancePtr,
u64 *  CallbackFunc,
void *  CallbackRef 
)

This function installs an asynchronous callback function for the LogWrite API:

Parameters
InstancePtris a pointer to the HDMI RX Subsystem instance.
CallbackFuncis the address of the callback function.
CallbackRefis a user data item that will be passed to the callback function when it is invoked.
Returns
  • XST_SUCCESS if callback function installed successfully.
  • XST_INVALID_PARAM when callback function is not installed successfully.

References XV_HdmiRxSs1::LogWriteCallback, and XV_HdmiRxSs1::LogWriteRef.

void XV_HdmiRxSs1_SetPpc ( XV_HdmiRxSs1 InstancePtr,
u8  Id,
u8  Ppc 
)

This function will set PPC specified by user.

Parameters
InstancePtris a pointer to the XV_HdmiRxSs1 core instance.
Idis the XV_HdmiRxSs1 ID to operate on.
Ppcis the PPC to be set.
Returns
None.
Note
None.

References XV_HdmiRxSs1::Config, and XV_HdmiRxSs1_Config::Ppc.

u32 XV_HdmiRxSs1_SetStream ( XV_HdmiRxSs1 InstancePtr,
u32  Clock,
u32  LineRate 
)

This function set HDMI RX susbsystem stream parameters.

Parameters
None.
Returns
Calculated TMDS Clock
Note
None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1::HdmiRx1Ptr, XV_HdmiRxSs1_Config::Ppc, XV_HDMIRXSS1_LOG_EVT_SETSTREAM, XV_HDMIRXSS1_LOG_EVT_SETSTREAM_ERR, and XV_HdmiRxSs1_LogWrite().

void XV_HdmiRxSs1_SetUserTimerHandler ( XV_HdmiRxSs1 InstancePtr,
XVidC_DelayHandler  CallbackFunc,
void *  CallbackRef 
)

This function installs a custom delay/sleep function to be used by the XV_HdmiRxSs1 driver.

Parameters
InstancePtris a pointer to the HdmiSsRx instance.
CallbackFuncis the address to the callback function.
CallbackRefis the user data item (microseconds to delay) that will be passed to the custom sleep/delay function when it is invoked.
Returns
None.
Note
None.

References XV_HdmiRxSs1::UserTimerPtr, and XV_HdmiRxSs1::UserTimerWaitUs.

void XV_HdmiRxSs1_Start ( XV_HdmiRxSs1 InstancePtr)

This function starts the HDMI RX subsystem including all sub-cores that are included in the processing pipeline for a given use-case.

Video pipe is started from back to front

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None
Note
Cores are started only if the corresponding start flag in the scratch pad memory is set. This allows to selectively start only those cores included in the processing chain

References XV_HdmiRxSs1::HdmiRx1Ptr, XV_HDMIRXSS1_LOG_EVT_START, and XV_HdmiRxSs1_LogWrite().

Referenced by main().

void XV_HdmiRxSs1_Stop ( XV_HdmiRxSs1 InstancePtr)

This function stops the HDMI RX subsystem including all sub-cores Stop the video pipe starting from front to back.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None

References XV_HdmiRxSs1::HdmiRx1Ptr, XV_HDMIRXSS1_LOG_EVT_STOP, and XV_HdmiRxSs1_LogWrite().

void XV_HdmiRxSs1_SYSRST ( XV_HdmiRxSs1 InstancePtr,
u8  Reset 
)

This function asserts or releases the system reset of other blocks within the subsystem.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_Reset().

void XV_HdmiRxSs1_ToggleHpd ( XV_HdmiRxSs1 InstancePtr)

This function toggles the HPD on the HDMI RX.

Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_VfpControl ( XV_HdmiRxSs1 InstancePtr,
u8  Enable 
)

This function controls HDMI RX VFP event enable/disable.

Parameters
Enable0: disable VFP event 1: enable VFP event.
Returns
None.
Note
None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_VRST ( XV_HdmiRxSs1 InstancePtr,
u8  Reset 
)

This function asserts or releases the video reset of other blocks within the subsystem.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
Returns
None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_CheckforResChange().

Variable Documentation

XV_HdmiRxSs1_SubCores XV_HdmiRxSs1_SubCoreRepo[XPAR_XV_HDMIRXSS1_NUM_INSTANCES]

Define Driver instance of all sub-core included in the design.