v_hdmitxss1
Vitis Drivers API Documentation
xv_hdmitxss1.h File Reference

Overview

This is main header file of the Xilinx HDMI TX Subsystem driver.

HDMI Transmitter Subsystem Overview

HDMI TX Subsystem is a collection of IP cores bounded together by software to provide an abstract view of the processing pipe. It hides all the complexities of programming the underlying cores from end user.

Subsystem Driver Features

HDMI Subsystem supports following features

  • AXI Stream Input/Output interface
  • 1, 2 or 4 pixel-wide video interface
  • 8/10/12/16 bits per component
  • RGB & YCbCr color space
  • Up to 4k2k 60Hz resolution at both Input and Output interface
  • Interlaced input support (1080i 50Hz/60Hz)
MODIFICATION HISTORY:
Ver   Who    Date     Changes


1.00 EB 22/05/18 Initial release.

Data Structures

struct  XV_HdmiTxSs1_Log
 This typedef contains the logging mechanism for debug. More...
 
struct  XV_HdmiTxSs1_SubCore
 Sub-Core Configuration Table. More...
 
struct  XV_HdmiTxSs1_Config
 Video Processing Subsystem configuration structure. More...
 
struct  XV_HdmiTxSs1_DynHdr_Config
 Dynamic HDR configuration structure. More...
 
struct  XV_HdmiTxSs1
 The XVprocss driver instance data. More...
 

Macros

#define HDMITXSS1_H
 < prevent circular inclusions by using protection macros More...
 

Typedefs

typedef void(* XV_HdmiTxSs1_Callback )(void *CallbackRef)
 Callback type for interrupt. More...
 
typedef u64(* XV_HdmiTxSs1_LogCallback )(void *CallbackRef)
 Callback type for interrupt. More...
 

Enumerations

Handler Types
enum  XV_HdmiTxSs1_LogEvent {
  XV_HDMITXSS1_LOG_EVT_NONE = 1, XV_HDMITXSS1_LOG_EVT_HDMITX1_INIT, XV_HDMITXSS1_LOG_EVT_VTC_INIT, XV_HDMITXSS1_LOG_EVT_HDCPTIMER_INIT,
  XV_HDMITXSS1_LOG_EVT_HDCP14_INIT, XV_HDMITXSS1_LOG_EVT_HDCP22_INIT, XV_HDMITXSS1_LOG_EVT_REMAP_HWRESET_INIT, XV_HDMITXSS1_LOG_EVT_REMAP_INIT,
  XV_HDMITXSS1_LOG_EVT_START, XV_HDMITXSS1_LOG_EVT_STOP, XV_HDMITXSS1_LOG_EVT_RESET, XV_HDMITXSS1_LOG_EVT_CONNECT,
  XV_HDMITXSS1_LOG_EVT_TOGGLE, XV_HDMITXSS1_LOG_EVT_DISCONNECT, XV_HDMITXSS1_LOG_EVT_STREAMUP, XV_HDMITXSS1_LOG_EVT_STREAMDOWN,
  XV_HDMITXSS1_LOG_EVT_STREAMSTART, XV_HDMITXSS1_LOG_EVT_SETAUDIOCHANNELS, XV_HDMITXSS1_LOG_EVT_AUDIOMUTE, XV_HDMITXSS1_LOG_EVT_AUDIOUNMUTE,
  XV_HDMITXSS1_LOG_EVT_AUDIOINVALIDSAMPRATE, XV_HDMITXSS1_LOG_EVT_SETSTREAM, XV_HDMITXSS1_LOG_EVT_HDCP14_AUTHREQ, XV_HDMITXSS1_LOG_EVT_HDCP22_AUTHREQ,
  XV_HDMITXSS1_LOG_EVT_PIX_REPEAT_ERR, XV_HDMITXSS1_LOG_EVT_VTC_RES_ERR, XV_HDMITXSS1_LOG_EVT_BRDG_LOCKED, XV_HDMITXSS1_LOG_EVT_BRDG_UNLOCKED,
  XV_HDMITXSS1_LOG_EVT_FRL_START, XV_HDMITXSS1_LOG_EVT_FRL_LT_PASS, XV_HDMITXSS1_LOG_EVT_FRL_CFG, XV_HDMITXSS1_LOG_EVT_TMDS_START ,
  XV_HDMITXSS1_LOG_EVT_DUMMY
}
 
enum  XV_HdmiTxSs1_HpdToleranceType
 
enum  XV_HdmiTxSs1_HdcpProtocol { XV_HDMITXSS1_HDCP_NONE, XV_HDMITXSS1_HDCP_14, XV_HDMITXSS1_HDCP_22, XV_HDMITXSS1_HDCP_BOTH }
 These constants specify the HDCP protection schemes. More...
 
enum  XV_HdmiTxSs1_HandlerType {
  XV_HDMITXSS1_HANDLER_CONNECT = 1, XV_HDMITXSS1_HANDLER_TOGGLE, XV_HDMITXSS1_HANDLER_BRDGLOCK, XV_HDMITXSS1_HANDLER_BRDGUNLOCK,
  XV_HDMITXSS1_HANDLER_BRDGOVERFLOW, XV_HDMITXSS1_HANDLER_BRDGUNDERFLOW, XV_HDMITXSS1_HANDLER_VS, XV_HDMITXSS1_HANDLER_STREAM_DOWN,
  XV_HDMITXSS1_HANDLER_STREAM_UP, XV_HDMITXSS1_HANDLER_ERROR, XV_HDMITXSS1_HANDLER_FRL_CONFIG, XV_HDMITXSS1_HANDLER_FRL_FFE,
  XV_HDMITXSS1_HANDLER_FRL_START, XV_HDMITXSS1_HANDLER_FRL_STOP, XV_HDMITXSS1_HANDLER_TMDS_CONFIG, XV_HDMITXSS1_HANDLER_HDCP_AUTHENTICATED,
  XV_HDMITXSS1_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE, XV_HDMITXSS1_HANDLER_HDCP_UNAUTHENTICATED, XV_HDMITXSS1_HANDLER_DYNHDR_MWT, XV_HDMITXSS1_HANDLER_DSCDECODE_FAIL
}
 These constants specify different types of handler and used to differentiate interrupt requests from peripheral. More...
 

Functions

XV_HdmiTxSs1_ConfigXV_HdmiTxSs1_LookupConfig (u32 DeviceId)
 This function looks for the device configuration based on the unique device ID. More...
 
void XV_HdmiTxSS1_SetHdmiFrlMode (XV_HdmiTxSs1 *InstancePtr)
 This function sets the core into HDMI mode. More...
 
void XV_HdmiTxSS1_SetHdmiTmdsMode (XV_HdmiTxSs1 *InstancePtr)
 This function sets the core into HDMI mode. More...
 
void XV_HdmiTxSS1_SetDviMode (XV_HdmiTxSs1 *InstancePtr)
 This function sets the core into DVI mode. More...
 
void XV_HdmiTxSS1_HdmiTx1IntrHandler (XV_HdmiTxSs1 *InstancePtr)
 This function calls the interrupt handler for HDMI TX. More...
 
int XV_HdmiTxSs1_CfgInitialize (XV_HdmiTxSs1 *InstancePtr, XV_HdmiTxSs1_Config *CfgPtr, UINTPTR EffectiveAddr)
 This function initializes the video subsystem and included sub-cores. More...
 
void XV_HdmiTxSS1_SetAppVersion (XV_HdmiTxSs1 *InstancePtr, u8 maj, u8 min)
 This function will set the major and minor application version in TXSs struct. More...
 
void XV_HdmiTxSs1_Start (XV_HdmiTxSs1 *InstancePtr)
 This function starts the HDMI TX subsystem including all sub-cores that are included in the processing pipeline for a given use-case. More...
 
void XV_HdmiTxSs1_Stop (XV_HdmiTxSs1 *InstancePtr)
 This function stops the HDMI TX subsystem including all sub-cores Stop the video pipe starting from front to back. More...
 
void XV_HdmiTxSs1_Reset (XV_HdmiTxSs1 *InstancePtr)
 This function resets the video subsystem sub-cores. More...
 
void XV_HdmiTxSs1_TXCore_VRST (XV_HdmiTxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the Internal Video reset of the HDMI subcore within the subsystem. More...
 
void XV_HdmiTxSs1_TXCore_LRST (XV_HdmiTxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the Internal Link reset of the HDMI subcore within the subsystem. More...
 
void XV_HdmiTxSs1_VRST (XV_HdmiTxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the video reset of other blocks within the subsystem. More...
 
void XV_HdmiTxSs1_SYSRST (XV_HdmiTxSs1 *InstancePtr, u8 Reset)
 This function asserts or releases the system reset of other blocks within the subsystem. More...
 
void XV_HdmiTxSs1_SetGcpAvmuteBit (XV_HdmiTxSs1 *InstancePtr)
 This function sets the HDMI TX AUX GCP register AVMUTE bit. More...
 
void XV_HdmiTxSs1_ClearGcpAvmuteBit (XV_HdmiTxSs1 *InstancePtr)
 This function clears the HDMI TX AUX GCP register AVMUTE bit. More...
 
void XV_HdmiTxSs1_SetGcpClearAvmuteBit (XV_HdmiTxSs1 *InstancePtr)
 This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More...
 
void XV_HdmiTxSs1_ClearGcpClearAvmuteBit (XV_HdmiTxSs1 *InstancePtr)
 This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More...
 
int XV_HdmiTxSs1_SetCallback (XV_HdmiTxSs1 *InstancePtr, XV_HdmiTxSs1_HandlerType HandlerType, void *CallbackFuncPtr, void *CallbackRef)
 This function installs an asynchronous callback function for the given HandlerType: More...
 
int XV_HdmiTxSs1_SetLogCallback (XV_HdmiTxSs1 *InstancePtr, u64 *CallbackFunc, void *CallbackRef)
 This function installs an asynchronous callback function for the LogWrite API: More...
 
int XV_HdmiTxSs1_SendCvtemAuxPackets (XV_HdmiTxSs1 *InstancePtr, XHdmiC_Aux *DscAuxFifo)
 This function is used to Send CVTEM Packet. More...
 
int XV_HdmiTxSs1_ReadEdid (XV_HdmiTxSs1 *InstancePtr, u8 *BufferPtr, u32 BufferSize)
 This function reads the HDMI Sink EDID. More...
 
int XV_HdmiTxSs1_ReadEdid_extension (XV_HdmiTxSs1 *InstancePtr, XV_VidC_EdidCntrlParam *EdidCtrlParam)
 This function reads the HDMI Sink EDID. More...
 
int XV_HdmiTxSs1_ReadEdidSegment (XV_HdmiTxSs1 *InstancePtr, u8 *Buffer, u8 segment)
 This function reads one block from the HDMI Sink EDID. More...
 
void XV_HdmiTxSs1_ShowEdid (XV_HdmiTxSs1 *InstancePtr)
 This function shows the HDMI source edid. More...
 
void XV_HdmiTxSs1_ShowEdid_extension (XV_HdmiTxSs1 *InstancePtr, XV_VidC_EdidCntrlParam *EdidCtrlParam)
 This function shows the HDMI source edid. More...
 
void XV_HdmiTxSs1_SetScrambler (XV_HdmiTxSs1 *InstancePtr, u8 Enable)
 This function enables / disables the TX scrambler. More...
 
void XV_HdmiTxSs1_StreamStart (XV_HdmiTxSs1 *InstancePtr)
 This function starts the HDMI TX stream. More...
 
void XV_HdmiTxSs1_SendAuxInfoframe (XV_HdmiTxSs1 *InstancePtr, void *AuxPtr)
 This function sends audio info frames. More...
 
u32 XV_HdmiTxSs1_SendGenericAuxInfoframe (XV_HdmiTxSs1 *InstancePtr, void *AuxPtr)
 This function sends generic info frames. More...
 
void XV_HdmiTxSs1_SetAudioChannels (XV_HdmiTxSs1 *InstancePtr, u8 AudioChannels)
 This function Sets the HDMI TX SS number of active audio channels. More...
 
void XV_HdmiTxSs1_AudioMute (XV_HdmiTxSs1 *InstancePtr, u8 Enable)
 This function set HDMI TX audio parameters. More...
 
void XV_HdmiTxSs1_SetAudioFormat (XV_HdmiTxSs1 *InstancePtr, XV_HdmiTx1_AudioFormatType format)
 This function Sets the HDMI TX SS Audio Format. More...
 
void XV_HdmiTxSs1_SetIntACR (XV_HdmiTxSs1 *InstancePtr)
 This function Sets use the internal ACR Module. More...
 
void XV_HdmiTxSs1_SetExtACR (XV_HdmiTxSs1 *InstancePtr)
 This function Sets use the external ACR Module. More...
 
void XV_HdmiTxSs1_SetSampleFrequency (XV_HdmiTxSs1 *InstancePtr, XHdmiC_SamplingFrequencyVal AudSampleFreqVal)
 This function Sets the audio sampling frequency. More...
 
XV_HdmiTx1_AudioFormatType XV_HdmiTxSs1_GetAudioFormat (XV_HdmiTxSs1 *InstancePtr)
 This function gets the active audio format. More...
 
XHdmiC_Aux * XV_HdmiTxSs1_GetAuxiliary (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI TX SS Aux structure. More...
 
XHdmiC_AVI_InfoFrame * XV_HdmiTxSs1_GetAviInfoframe (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI TX SS AVI InfoFrame structure. More...
 
XHdmiC_AudioInfoFrame * XV_HdmiTxSs1_GetAudioInfoframe (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI TX SS Audio InfoFrame structure. More...
 
XHdmiC_VSIF * XV_HdmiTxSs1_GetVSIF (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI TX SS Vendor Specific InfoFrame structure. More...
 
XHdmiC_DRMInfoFrame * XV_HdmiTxSs1_GetDrmInfoframe (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI 2.1 TX SS DRM InfoFrame structure. More...
 
u32 XV_HdmiTxSs1_SetStream (XV_HdmiTxSs1 *InstancePtr, XVidC_VideoTiming VideoTiming, XVidC_FrameRate FrameRate, XVidC_ColorFormat ColorFormat, XVidC_ColorDepth Bpc, u8 IsDSCompressed, XVidC_3DInfo *Info3D, u64 *TmdsClk)
 This function set HDMI TX susbsystem stream parameters. More...
 
XVidC_VideoStream * XV_HdmiTxSs1_GetVideoStream (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI TX SS video stream. More...
 
void XV_HdmiTxSs1_SetVideoStream (XV_HdmiTxSs1 *InstancePtr, XVidC_VideoStream VidStream)
 This function Sets the HDMI TX SS video stream. More...
 
void XV_HdmiTxSs1_SetSamplingRate (XV_HdmiTxSs1 *InstancePtr, u8 SamplingRate)
 This function Sets the HDMI TX SS video Identification code. More...
 
void XV_HdmiTxSs1_SetVideoIDCode (XV_HdmiTxSs1 *InstancePtr, u8 Vic)
 This function Sets the HDMI TX SS video Identification code. More...
 
u8 XV_HdmiTxSs1_GetVideoStreamType (XV_HdmiTxSs1 *InstancePtr)
 This function returns the HDMI TX SS video stream type. More...
 
u8 XV_HdmiTxSs1_GetTransportMode (XV_HdmiTxSs1 *InstancePtr)
 This function returns the pointer to HDMI TX SS video stream type. More...
 
void XV_HdmiTxSs1_SetVideoStreamScramblingFlag (XV_HdmiTxSs1 *InstancePtr, u8 IsScrambled)
 This function Sets the HDMI TX SS video stream type. More...
 
void XV_HdmiTxSs1_SetVideoStreamScramblingOverrideFlag (XV_HdmiTxSs1 *InstancePtr, u8 OverrideScramble)
 This function Sets the HDMI TX SS video stream scrambling behaviour. More...
 
void XV_HdmiTxSs1_SetTmdsClockRatio (XV_HdmiTxSs1 *InstancePtr, u8 Ratio)
 This function Sets the HDMI TX SS TMDS Cock Ratio. More...
 
u32 XV_HdmiTxSs1_GetTmdsClockFreqHz (XV_HdmiTxSs1 *InstancePtr)
 This function Sets the HDMI TX SS video Identification code. More...
 
int XV_HdmiTxSs1_DetectHdmi20 (XV_HdmiTxSs1 *InstancePtr)
 This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device. More...
 
void XV_HdmiTxSs1_RefClockChangeInit (XV_HdmiTxSs1 *InstancePtr)
 This function is called when HDMI TX SS TMDS clock changes. More...
 
void XV_HdmiTxSs1_ReportInfo (XV_HdmiTxSs1 *InstancePtr)
 This function prints the HDMI TX SS subcore versions. More...
 
void XV_HdmiTxSs1_DebugInfo (XV_HdmiTxSs1 *InstancePtr)
 This function prints debug information on STDIO/UART console. More...
 
void XV_HdmiTxSs1_RegisterDebug (XV_HdmiTxSs1 *InstancePtr)
 This function prints out the sub-core register dump. More...
 
int XV_HdmiTxSs1_IsStreamUp (XV_HdmiTxSs1 *InstancePtr)
 This function checks if the video stream is up. More...
 
int XV_HdmiTxSs1_IsStreamConnected (XV_HdmiTxSs1 *InstancePtr)
 This function checks if the interface is connected. More...
 
int XV_HdmiTxSs1_IsStreamToggled (XV_HdmiTxSs1 *InstancePtr)
 This function checks if the interface has toggled. More...
 
u8 XV_HdmiTxSs1_IsSinkHdcp14Capable (XV_HdmiTxSs1 *InstancePtr)
 This function determines if the connected HDMI sink is HDCP 1.4 capable. More...
 
u8 XV_HdmiTxSs1_IsSinkHdcp22Capable (XV_HdmiTxSs1 *InstancePtr)
 This function determines if the connected HDMI sink is HDCP 2.2 capable. More...
 
void XV_HdmiTxSs1_SetDefaultPpc (XV_HdmiTxSs1 *InstancePtr, u8 Id)
 This function will set the default in HDF. More...
 
void XV_HdmiTxSs1_SetPpc (XV_HdmiTxSs1 *InstancePtr, u8 Id, u8 Ppc)
 This function will set PPC specified by user. More...
 
XVidC_PixelsPerClock XV_HdmiTxSS1_GetCorePpc (XV_HdmiTxSs1 *InstancePtr)
 This function will set the major and minor application version in TXSs struct. More...
 
void XV_HdmiTxSs1_VrrControl (XV_HdmiTxSs1 *InstancePtr, u8 Enable)
 This function allows enabling/disabling of VRR in HDMI Tx. More...
 
void XV_HdmiTxSs1_FSyncControl (XV_HdmiTxSs1 *InstancePtr, u8 Enable)
 This function allows enabling/disabling of FSync in HDMI Tx. More...
 
void XV_HdmiTxSS1_SetVrrMode (XV_HdmiTxSs1 *InstancePtr, u8 mode, u8 VrrEn, u8 FvaFactor, u8 CnmvrrEn)
 This function configures Video Timing Controller with Adaptive-Sync mode. More...
 
void XV_HdmiTxSS1_SetVrrVfpStretch (XV_HdmiTxSs1 *InstancePtr, u16 StretchValue)
 This function configures vertical front porch stretch limit in Video Timing Controller. More...
 
void XV_HdmiTxSS1_DisableVrr (XV_HdmiTxSs1 *InstancePtr)
 This function disables Adaptive-Sync feature in Video Timing Controller. More...
 
void XV_HdmiTxSs1_SetVrrIf (XV_HdmiTxSs1 *InstancePtr, XV_HdmiC_VrrInfoFrame *VrrIF)
 This function allows setting VRR meta in core. More...
 
void XV_HdmiTxSs1_SetCustomVrrIf (XV_HdmiTxSs1 *InstancePtr, XV_HdmiC_VrrInfoFrame *VrrIF, u16 Sync, u16 DataSetLen)
 This function allows setting Custom VRR meta in core. More...
 
void XV_HdmiTxSs1_DynHdr_Control (XV_HdmiTxSs1 *InstancePtr, u8 Flag)
 This function will enable/disable Dynamic HDR. More...
 
void XV_HdmiTxSs1_DynHdr_GOF_Control (XV_HdmiTxSs1 *InstancePtr, u8 Flag)
 This function will enable/disable GOF for Dynamic HDR. More...
 
void XV_HdmiTxSs1_DynHdr_Cfg (XV_HdmiTxSs1 *InstancePtr, XV_HdmiTxSs1_DynHdr_Config *Cfg)
 This function will configure the HDMI Tx for Dynamic HDR. More...
 
void XV_HdmiTxSs1_DynHdr_DM_Control (XV_HdmiTxSs1 *InstancePtr, u8 Flag)
 This function will enable or disable the Data Mover in Dynamic HDR. More...
 
u32 XV_HdmiTxSs1_DynHdr_GetErr (XV_HdmiTxSs1 *InstancePtr)
 This function will read the error status of the Data Mover for Dynamic HDR. More...
 
void XV_HdmiTxSs1_LogReset (XV_HdmiTxSs1 *InstancePtr)
 This function will reset the driver's logging mechanism. More...
 
void XV_HdmiTxSs1_LogWrite (XV_HdmiTxSs1 *InstancePtr, XV_HdmiTxSs1_LogEvent Evt, u8 Data)
 This function will insert an event in the driver's logginc mechanism. More...
 
u16 XV_HdmiTxSs1_LogRead (XV_HdmiTxSs1 *InstancePtr)
 This function will read the last event from the log. More...
 
void XV_HdmiTxSs1_LogDisplay (XV_HdmiTxSs1 *InstancePtr)
 This function will print the entire log. More...
 
void XV_HdmiTxSs1_ReportCoreInfo (XV_HdmiTxSs1 *InstancePtr)
 This function reports list of cores included in Video Processing Subsystem. More...
 
void XV_HdmiTxSs1_ReportTiming (XV_HdmiTxSs1 *InstancePtr)
 This function prints the HDMI TX SS timing information. More...
 
void XV_HdmiTxSs1_ReportDRMInfo (XV_HdmiTxSs1 *InstancePtr)
 This function prints the HDMI 2.1 TX SS DRM If information. More...
 
void XV_HdmiTxSs1_ReportAudio (XV_HdmiTxSs1 *InstancePtr)
 This function prints the HDMI TX SS audio information. More...
 
void XV_HdmiTxSs1_ReportSubcoreVersion (XV_HdmiTxSs1 *InstancePtr)
 This function prints the HDMI TX SS subcore versions. More...
 
void XV_HdmiTxSS1_MaskEnable (XV_HdmiTxSs1 *InstancePtr)
 This function will enable the video masking. More...
 
void XV_HdmiTxSS1_MaskDisable (XV_HdmiTxSs1 *InstancePtr)
 This function will disable the video masking. More...
 
void XV_HdmiTxSS1_MaskNoise (XV_HdmiTxSs1 *InstancePtr, u8 Enable)
 This function will enable or disable the noise in the video mask. More...
 
void XV_HdmiTxSS1_MaskSetRed (XV_HdmiTxSs1 *InstancePtr, u16 Value)
 This function will set the red component in the video mask. More...
 
void XV_HdmiTxSS1_MaskSetGreen (XV_HdmiTxSs1 *InstancePtr, u16 Value)
 This function will set the green component in the video mask. More...
 
void XV_HdmiTxSS1_MaskSetBlue (XV_HdmiTxSs1 *InstancePtr, u16 Value)
 This function will set the blue component in the video mask. More...
 
void XV_HdmiTxSS1_SetBackgroundColor (XV_HdmiTxSs1 *InstancePtr, XVMaskColorId ColorId)
 This function configures the background color for Video Masking Feature. More...
 
u8 XV_HdmiTxSS1_IsMasked (XV_HdmiTxSs1 *InstancePtr)
 This function will get the current video mask mode. More...
 
void XV_HdmiTxSs1_SetFfeLevels (XV_HdmiTxSs1 *InstancePtr, u8 FfeLevel)
 This function sets the FFE Levels. More...
 
u8 XV_HdmiTxSs1_GetTxFfe (XV_HdmiTxSs1 *InstancePtr, u8 Lane)
 This function returns the FFE Level for the selected lane. More...
 
u8 XV_HdmiTxSs1_GetFrlLineRate (XV_HdmiTxSs1 *InstancePtr)
 This function returns the FRL Line Rate. More...
 
u8 XV_HdmiTxSs1_GetFrlRate (XV_HdmiTxSs1 *InstancePtr)
 This function returns the FRL Rate. More...
 
u8 XV_HdmiTxSs1_GetFrlLanes (XV_HdmiTxSs1 *InstancePtr)
 This function returns the the number of active FRL lanes. More...
 
int XV_HdmiTxSs1_StartTmdsMode (XV_HdmiTxSs1 *InstancePtr)
 This function starts the TMDS mode. More...
 
int XV_HdmiTxSs1_StartFrlTraining (XV_HdmiTxSs1 *InstancePtr, XHdmiC_MaxFrlRate FrlRate)
 This function starts the Fixed Rate Link Training. More...
 
void XV_HdmiTxSs1_SetFrlMaxFrlRate (XV_HdmiTxSs1 *InstancePtr, XHdmiC_MaxFrlRate MaxFrlRate)
 This function sets maximum FRL Rate supported by the system. More...
 
int XV_HdmiTxSs1_FrlStreamStart (XV_HdmiTxSs1 *InstancePtr)
 This function starts FRL stream. More...
 
int XV_HdmiTxSs1_FrlStreamStop (XV_HdmiTxSs1 *InstancePtr)
 This function stops FRL video stream. More...
 
int XV_HdmiTxSs1_TmdsStart (XV_HdmiTxSs1 *InstancePtr)
 This function starts the Legacy HDMI TMDS Mode. More...
 
void XV_HdmiTxSs1_SetFrlWrongLtp (XV_HdmiTxSs1 *InstancePtr)
 This function stops FRL video stream. More...
 
void XV_HdmiTxSs1_ClearFrlWrongLtp (XV_HdmiTxSs1 *InstancePtr)
 This function stops FRL video stream. More...
 
void XV_HdmiTxSs1_SetFrlLtp (XV_HdmiTxSs1 *InstancePtr, u8 Lane, XV_HdmiTx1_FrlLtpType Ltp)
 This function sets the FRL LTP. More...
 
void XV_HdmiTxSS1_StopFRLStream (XV_HdmiTxSs1 *InstancePtr)
 This function will Stop the FRL stream. More...
 
void XV_HdmiTxSS1_StartFRLStream (XV_HdmiTxSs1 *InstancePtr)
 This function will Start the FRL stream. More...
 
void XV_HdmiTxSs1_SetFrlExtVidCke (XV_HdmiTxSs1 *InstancePtr)
 This function sets the CKE Source for External. More...
 
void XV_HdmiTxSs1_SetFrlIntVidCke (XV_HdmiTxSs1 *InstancePtr)
 This function sets the CKE Source for Interal Generated. More...
 
void XV_HdmiTxSS1_SetHpdTolerance (XV_HdmiTxSs1 *InstancePtr, XV_HdmiTxSs1_HpdToleranceType Type, u16 ToleranceVal)
 This function will Configure Timegrid based on the tolerance value for HPD and Toggle event. More...
 

Macro Definition Documentation

#define HDMITXSS1_H

< prevent circular inclusions by using protection macros

Typedef Documentation

typedef void(* XV_HdmiTxSs1_Callback)(void *CallbackRef)

Callback type for interrupt.

Parameters
CallbackRefis a callback reference passed in by the upper layer when setting the callback functions, and passed back to the upper layer when the callback is invoked.
Returns
None.
Note
None.
typedef u64(* XV_HdmiTxSs1_LogCallback)(void *CallbackRef)

Callback type for interrupt.

Parameters
CallbackRefis a callback reference passed in by the upper layer when setting the callback functions, and passed back to the upper layer when the callback is invoked.
Returns
u8 value.
Note
None.

Enumeration Type Documentation

These constants specify different types of handler and used to differentiate interrupt requests from peripheral.

Enumerator
XV_HDMITXSS1_HANDLER_CONNECT 

Handler for connect event.

XV_HDMITXSS1_HANDLER_TOGGLE 

Handler for toggle event.

XV_HDMITXSS1_HANDLER_BRDGLOCK 

Handler for bridge locked event.

XV_HDMITXSS1_HANDLER_BRDGUNLOCK 

Handler for bridge unlocked event.

XV_HDMITXSS1_HANDLER_BRDGOVERFLOW 

Handler for bridge overflow event.

XV_HDMITXSS1_HANDLER_BRDGUNDERFLOW 

Handler for bridge underflow event.

XV_HDMITXSS1_HANDLER_VS 

Handler for vsync event.

XV_HDMITXSS1_HANDLER_STREAM_DOWN 

Handler for stream down event.

XV_HDMITXSS1_HANDLER_STREAM_UP 

Handler for stream up event.

XV_HDMITXSS1_HANDLER_ERROR 

Handler for error event.

XV_HDMITXSS1_HANDLER_FRL_CONFIG 

Handler for FRL Config.

XV_HDMITXSS1_HANDLER_FRL_FFE 

Handler for FRL FFE.

XV_HDMITXSS1_HANDLER_FRL_START 

Handler for FRL Start.

XV_HDMITXSS1_HANDLER_FRL_STOP 

Handler for FRL Stop.

XV_HDMITXSS1_HANDLER_TMDS_CONFIG 

Handler for TMDS Config.

XV_HDMITXSS1_HANDLER_HDCP_AUTHENTICATED 

Handler for HDCP authenticated event.

XV_HDMITXSS1_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE 

Handler for HDCP downstream topology available event.

XV_HDMITXSS1_HANDLER_HDCP_UNAUTHENTICATED 

Handler for HDCP unauthenticated event.

XV_HDMITXSS1_HANDLER_DYNHDR_MWT 

Handler for MTW Event.

XV_HDMITXSS1_HANDLER_DSCDECODE_FAIL 

Dsc Decode fail Event.

These constants specify the HDCP protection schemes.

Enumerator
XV_HDMITXSS1_HDCP_NONE 

No content protection.

XV_HDMITXSS1_HDCP_14 

HDCP 1.4.

XV_HDMITXSS1_HDCP_22 

HDCP 2.2.

XV_HDMITXSS1_HDCP_BOTH 

Both HDCP 1.4 and 2.2.

Enumerator
XV_HDMITXSS1_LOG_EVT_NONE 

Log event none.

XV_HDMITXSS1_LOG_EVT_HDMITX1_INIT 

Log event HDMITX1 Init.

XV_HDMITXSS1_LOG_EVT_VTC_INIT 

Log event VTC Init.

XV_HDMITXSS1_LOG_EVT_HDCPTIMER_INIT 

Log event HDCP Timer Init.

XV_HDMITXSS1_LOG_EVT_HDCP14_INIT 

Log event HDCP 14 Init.

XV_HDMITXSS1_LOG_EVT_HDCP22_INIT 

Log event HDCP 22 Init.

XV_HDMITXSS1_LOG_EVT_REMAP_HWRESET_INIT 

Log event Remap reset Init.

XV_HDMITXSS1_LOG_EVT_REMAP_INIT 

Log event Remapper Init.

XV_HDMITXSS1_LOG_EVT_START 

Log event HDMITXSS1 Start.

XV_HDMITXSS1_LOG_EVT_STOP 

Log event HDMITXSS1 Stop.

XV_HDMITXSS1_LOG_EVT_RESET 

Log event HDMITXSS1 Reset.

XV_HDMITXSS1_LOG_EVT_CONNECT 

Log event Cable connect.

XV_HDMITXSS1_LOG_EVT_TOGGLE 

Log event HPD toggle.

XV_HDMITXSS1_LOG_EVT_DISCONNECT 

Log event Cable disconnect.

XV_HDMITXSS1_LOG_EVT_STREAMUP 

Log event Stream Up.

XV_HDMITXSS1_LOG_EVT_STREAMDOWN 

Log event Stream Down.

XV_HDMITXSS1_LOG_EVT_STREAMSTART 

Log event Stream Start.

XV_HDMITXSS1_LOG_EVT_SETAUDIOCHANNELS 

Log event Set Audio Channels.

XV_HDMITXSS1_LOG_EVT_AUDIOMUTE 

Log event Audio Mute.

XV_HDMITXSS1_LOG_EVT_AUDIOUNMUTE 

Log event Audio Unmute.

XV_HDMITXSS1_LOG_EVT_AUDIOINVALIDSAMPRATE 

Log event Audio Invalid Audio Sampling Rate.

XV_HDMITXSS1_LOG_EVT_SETSTREAM 

Log event HDMITXSS1 Setstream.

XV_HDMITXSS1_LOG_EVT_HDCP14_AUTHREQ 

Log event HDCP 1.4 AuthReq.

XV_HDMITXSS1_LOG_EVT_HDCP22_AUTHREQ 

Log event HDCP 2.2 AuthReq.

XV_HDMITXSS1_LOG_EVT_PIX_REPEAT_ERR 

Log event Unsupported Pixel Repetition.

XV_HDMITXSS1_LOG_EVT_VTC_RES_ERR 

Log event Resolution Unsupported by VTC.

XV_HDMITXSS1_LOG_EVT_BRDG_LOCKED 

VID-OUT bridge locked.

XV_HDMITXSS1_LOG_EVT_BRDG_UNLOCKED 

VID-OUT bridge unlocked.

XV_HDMITXSS1_LOG_EVT_FRL_START 

Log event HDMITXSS1 FRL Start.

XV_HDMITXSS1_LOG_EVT_FRL_LT_PASS 

Log event HDMITXSS1 FRL LT Pass.

XV_HDMITXSS1_LOG_EVT_FRL_CFG 

Log event HDMITXSS1 FRL Config.

XV_HDMITXSS1_LOG_EVT_TMDS_START 

Log event HDMITXSS1 TMDS Start.

XV_HDMITXSS1_LOG_EVT_DUMMY 

Dummy Event should be last.

Function Documentation

void XV_HdmiTxSs1_AudioMute ( XV_HdmiTxSs1 InstancePtr,
u8  Enable 
)

This function set HDMI TX audio parameters.

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

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HDMITXSS1_LOG_EVT_AUDIOMUTE, XV_HDMITXSS1_LOG_EVT_AUDIOUNMUTE, and XV_HdmiTxSs1_LogWrite().

int XV_HdmiTxSs1_CfgInitialize ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiTxSs1_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_HdmiTxSs1::AppMajVer, XV_HdmiTxSs1::AppMinVer, XV_HdmiTxSs1::AudioInfoframe, XV_HdmiTxSs1::AVIInfoframe, XV_HdmiTxSs1_Config::AxiLiteClkFreq, XV_HdmiTxSs1_Config::BaseAddress, XV_HdmiTxSs1::Config, XV_HdmiTxSs1_Config::DeviceId, XV_HdmiTxSs1::DrmInfoframe, XV_HdmiTxSs1::EnableHDCPLogging, XV_HdmiTxSs1::EnableHDMILogging, XV_HdmiTxSs1::HdcpProtocol, XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1::IsReady, XV_HdmiTxSs1::VSIF, XV_HdmiTxSs1::VtcPtr, XV_HDMITXSS1_HDCP_BOTH, XV_HDMITXSS1_HDCP_NONE, XV_HdmiTxSs1_Reset(), XV_HdmiTxSs1_SubcoreInitHdmiTx1(), and XV_HdmiTxSs1_SubcoreInitVtc().

void XV_HdmiTxSs1_ClearFrlWrongLtp ( XV_HdmiTxSs1 InstancePtr)

This function stops FRL video stream.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_ClearGcpAvmuteBit ( XV_HdmiTxSs1 InstancePtr)

This function clears the HDMI TX AUX GCP register AVMUTE bit.

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

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_ClearGcpClearAvmuteBit ( XV_HdmiTxSs1 InstancePtr)

This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit.

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

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_DebugInfo ( XV_HdmiTxSs1 InstancePtr)

This function prints debug information on STDIO/UART console.

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

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by DetailedInfo().

int XV_HdmiTxSs1_DetectHdmi20 ( XV_HdmiTxSs1 InstancePtr)

This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
  • XST_SUCCESS if HDMI 2.0
  • XST_FAILURE if HDMI 1.4
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSS1_DisableVrr ( XV_HdmiTxSs1 InstancePtr)

This function disables Adaptive-Sync feature in Video Timing Controller.

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

References XV_HdmiTxSs1::VtcPtr.

void XV_HdmiTxSs1_DynHdr_Cfg ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiTxSs1_DynHdr_Config CfgPtr 
)

This function will configure the HDMI Tx for Dynamic HDR.

The configuration should be updated and called by application in Dynamic HDR MTW callback.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
CfgPtris a pointer to XV_HdmiTxSs1_DynHdr_Config instance
Returns
void.
Note
None.

References XV_HdmiTxSs1_DynHdr_Config::Address, XV_HdmiTxSs1::Config, XV_HdmiTxSs1_Config::DynHdr, XV_HdmiTxSs1_DynHdr_Config::FAPA, XV_HdmiTxSs1_DynHdr_Config::GOF, XV_HdmiTxSs1_DynHdr_Config::PktLength, and XV_HdmiTxSs1_DynHdr_Config::PktType.

void XV_HdmiTxSs1_DynHdr_Control ( XV_HdmiTxSs1 InstancePtr,
u8  Flag 
)

This function will enable/disable Dynamic HDR.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Flagset to TRUE/FALSE.
Returns
void.
Note
None.

References XV_HdmiTxSs1::Config, XV_HdmiTxSs1_Config::DynHdr, and XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_DynHdr_DM_Control ( XV_HdmiTxSs1 InstancePtr,
u8  Flag 
)

This function will enable or disable the Data Mover in Dynamic HDR.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Flag0 to disable and 1 to enable the Data Mover
Returns
void.
Note
None.

References XV_HdmiTxSs1::Config, XV_HdmiTxSs1_Config::DynHdr, and XV_HdmiTxSs1::HdmiTx1Ptr.

u32 XV_HdmiTxSs1_DynHdr_GetErr ( XV_HdmiTxSs1 InstancePtr)

This function will read the error status of the Data Mover for Dynamic HDR.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
0 - if no error else 1
Note
None.

References XV_HdmiTxSs1::Config, and XV_HdmiTxSs1_Config::DynHdr.

void XV_HdmiTxSs1_DynHdr_GOF_Control ( XV_HdmiTxSs1 InstancePtr,
u8  Flag 
)

This function will enable/disable GOF for Dynamic HDR.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Flagset to TRUE/FALSE.
Returns
void.
Note
None.

References XV_HdmiTxSs1::Config, XV_HdmiTxSs1_Config::DynHdr, and XV_HdmiTxSs1::HdmiTx1Ptr.

int XV_HdmiTxSs1_FrlStreamStart ( XV_HdmiTxSs1 InstancePtr)

This function starts FRL stream.

This should be called after the bridge, video, audio are all active.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

int XV_HdmiTxSs1_FrlStreamStop ( XV_HdmiTxSs1 InstancePtr)

This function stops FRL video stream.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_FSyncControl ( XV_HdmiTxSs1 InstancePtr,
u8  Enable 
)

This function allows enabling/disabling of FSync in HDMI Tx.

Parameters
Enable0: disable FSync 1: enable FSync
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by Exdes_ProcessVTEMPacket(), and main().

XV_HdmiTx1_AudioFormatType XV_HdmiTxSs1_GetAudioFormat ( XV_HdmiTxSs1 InstancePtr)

This function gets the active audio format.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Active audio format of HDMI Tx Subsystem
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_ReportAudio().

XHdmiC_AudioInfoFrame* XV_HdmiTxSs1_GetAudioInfoframe ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
XHdmiC_AudioInfoFrame pointer
Note
None.

References XV_HdmiTxSs1::AudioInfoframe.

XHdmiC_Aux* XV_HdmiTxSs1_GetAuxiliary ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
XVidC_VideoStream pointer
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

XHdmiC_AVI_InfoFrame* XV_HdmiTxSs1_GetAviInfoframe ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
XHdmiC_AVI_InfoFrame pointer
Note
None.

References XV_HdmiTxSs1::AVIInfoframe.

XVidC_PixelsPerClock XV_HdmiTxSS1_GetCorePpc ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Core pixel per clock value
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

XHdmiC_DRMInfoFrame* XV_HdmiTxSs1_GetDrmInfoframe ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
XHdmiC_DRMInfoFrame pointer
Note
None.

References XV_HdmiTxSs1::DrmInfoframe.

Referenced by XV_HdmiTxSs1_ReportDRMInfo().

u8 XV_HdmiTxSs1_GetFrlLanes ( XV_HdmiTxSs1 InstancePtr)

This function returns the the number of active FRL lanes.

Parameters
None.
Returns
Number of active FRL lanes.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

u8 XV_HdmiTxSs1_GetFrlLineRate ( XV_HdmiTxSs1 InstancePtr)

This function returns the FRL Line Rate.

Parameters
None.
Returns
FRL Line Rate.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

u8 XV_HdmiTxSs1_GetFrlRate ( XV_HdmiTxSs1 InstancePtr)

This function returns the FRL Rate.

Parameters
None.
Returns
FRL Rate.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

u32 XV_HdmiTxSs1_GetTmdsClockFreqHz ( XV_HdmiTxSs1 InstancePtr)

This function Sets the HDMI TX SS video Identification code.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
@returnStream Data Structure (TMDS Clock)
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

u8 XV_HdmiTxSs1_GetTransportMode ( XV_HdmiTxSs1 InstancePtr)

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

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

References XV_HdmiTxSs1::HdmiTx1Ptr.

u8 XV_HdmiTxSs1_GetTxFfe ( XV_HdmiTxSs1 InstancePtr,
u8  Lane 
)

This function returns the FFE Level for the selected lane.

Parameters
None.
Returns
FFE Level.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

XVidC_VideoStream* XV_HdmiTxSs1_GetVideoStream ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
XVidC_VideoStream pointer
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by main(), XV_HdmiTxSS1_SetBackgroundColor(), and XV_HdmiTxSS1_SetVrrVfpStretch().

u8 XV_HdmiTxSs1_GetVideoStreamType ( XV_HdmiTxSs1 InstancePtr)

This function returns the HDMI TX SS video stream type.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
Value 1:HDMI TMDS 0:DVI.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

XHdmiC_VSIF* XV_HdmiTxSs1_GetVSIF ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Returns
XHdmiC_VSIF pointer
Note
None.

References XV_HdmiTxSs1::VSIF.

void XV_HdmiTxSS1_HdmiTx1IntrHandler ( XV_HdmiTxSs1 InstancePtr)

This function calls the interrupt handler for HDMI TX.

Parameters
InstancePtris a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs1::HdmiTx1Ptr.

u8 XV_HdmiTxSS1_IsMasked ( XV_HdmiTxSs1 InstancePtr)

This function will get the current video mask mode.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Current mode. 0 = Video masking is disabled 1 = Video masking is enabled
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_ReportTiming().

u8 XV_HdmiTxSs1_IsSinkHdcp14Capable ( XV_HdmiTxSs1 InstancePtr)

This function determines if the connected HDMI sink is HDCP 1.4 capable.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 instance.
Returns
  • TRUE if sink is HDCP 1.4 capable and ready to authenticate.
  • FALSE if sink does not support HDCP 1.4 or is not ready.
u8 XV_HdmiTxSs1_IsSinkHdcp22Capable ( XV_HdmiTxSs1 InstancePtr)

This function determines if the connected HDMI sink is HDCP 2.2 capable.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 instance.
Returns
  • TRUE if sink is HDCP 2.2 capable and ready to authenticate.
  • FALSE if sink does not support HDCP 2.2 or is not ready.
int XV_HdmiTxSs1_IsStreamConnected ( XV_HdmiTxSs1 InstancePtr)

This function checks if the interface is connected.

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

References XV_HdmiTxSs1::IsStreamConnected.

int XV_HdmiTxSs1_IsStreamToggled ( XV_HdmiTxSs1 InstancePtr)

This function checks if the interface has toggled.

Parameters
None.
Returns
  • TRUE if the interface HPD has toggled.
  • FALSE if the interface HPD has not toggled.
Note
None.

References XV_HdmiTxSs1::IsStreamToggled.

int XV_HdmiTxSs1_IsStreamUp ( XV_HdmiTxSs1 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_HdmiTxSs1::IsStreamUp.

u16 XV_HdmiTxSs1_LogRead ( XV_HdmiTxSs1 InstancePtr)

This function will read the last event from the log.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
The log data.
Note
None.

References XV_HdmiTxSs1_Log::DataBuffer, XV_HdmiTxSs1_Log::HeadIndex, XV_HdmiTxSs1::Log, and XV_HdmiTxSs1_Log::TailIndex.

Referenced by XV_HdmiTxSs1_LogDisplay().

void XV_HdmiTxSs1_LogReset ( XV_HdmiTxSs1 InstancePtr)

This function will reset the driver's logging mechanism.

Parameters
InstancePtris a pointer to the xv_hdmitxss1 core instance.
Returns
None.
Note
None.

References XV_HdmiTxSs1_Log::HeadIndex, XV_HdmiTxSs1::Log, and XV_HdmiTxSs1_Log::TailIndex.

void XV_HdmiTxSS1_MaskDisable ( XV_HdmiTxSs1 InstancePtr)

This function will disable the video masking.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSS1_MaskEnable ( XV_HdmiTxSs1 InstancePtr)

This function will enable the video masking.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSS1_SetBackgroundColor().

void XV_HdmiTxSS1_MaskNoise ( XV_HdmiTxSs1 InstancePtr,
u8  Enable 
)

This function will enable or disable the noise in the video mask.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Enablespecifies TRUE/FALSE value to either enable or disable the Noise.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSS1_SetBackgroundColor().

void XV_HdmiTxSS1_MaskSetBlue ( XV_HdmiTxSs1 InstancePtr,
u16  Value 
)

This function will set the blue component in the video mask.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Valuespecifies the video mask value set to blue component
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSS1_SetBackgroundColor().

void XV_HdmiTxSS1_MaskSetGreen ( XV_HdmiTxSs1 InstancePtr,
u16  Value 
)

This function will set the green component in the video mask.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Valuespecifies the video mask value set to green component
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSS1_SetBackgroundColor().

void XV_HdmiTxSS1_MaskSetRed ( XV_HdmiTxSs1 InstancePtr,
u16  Value 
)

This function will set the red component in the video mask.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Valuespecifies the video mask value set to red component
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSS1_SetBackgroundColor().

int XV_HdmiTxSs1_ReadEdid ( XV_HdmiTxSs1 InstancePtr,
u8 *  Buffer,
u32  BufferSize 
)

This function reads the HDMI Sink EDID.

Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1::IsStreamConnected, and XV_HdmiTxSs1_ReadEdidSegment().

int XV_HdmiTxSs1_ReadEdid_extension ( XV_HdmiTxSs1 InstancePtr,
XV_VidC_EdidCntrlParam *  EdidCtrlParam 
)

This function reads the HDMI Sink EDID.

Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1::IsStreamConnected, and XV_HdmiTxSs1_ReadEdidSegment().

int XV_HdmiTxSs1_ReadEdidSegment ( XV_HdmiTxSs1 InstancePtr,
u8 *  Buffer,
u8  segment 
)

This function reads one block from the HDMI Sink EDID.

Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, and XV_HdmiTxSs1::IsStreamConnected.

Referenced by XV_HdmiTxSs1_ReadEdid(), XV_HdmiTxSs1_ReadEdid_extension(), XV_HdmiTxSs1_ShowEdid(), and XV_HdmiTxSs1_ShowEdid_extension().

void XV_HdmiTxSs1_RefClockChangeInit ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
None.
Returns
None
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1_SYSRST(), XV_HdmiTxSs1_TXCore_LRST(), XV_HdmiTxSs1_TXCore_VRST(), and XV_HdmiTxSs1_VRST().

void XV_HdmiTxSs1_RegisterDebug ( XV_HdmiTxSs1 InstancePtr)

This function prints out the sub-core register dump.

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

References XV_HdmiTxSs1_SubCore::AbsAddr, XV_HdmiTxSs1::Config, XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1::IsStreamUp, XV_HdmiTxSs1_Config::Vtc, and XV_HdmiTxSs1::VtcPtr.

void XV_HdmiTxSs1_ReportAudio ( XV_HdmiTxSs1 InstancePtr)

This function prints the HDMI TX SS audio information.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, and XV_HdmiTxSs1_GetAudioFormat().

Referenced by Info(), and XV_HdmiTxSs1_ReportInfo().

void XV_HdmiTxSs1_ReportCoreInfo ( XV_HdmiTxSs1 InstancePtr)

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

Parameters
InstancePtris a pointer to the Subsystem instance.
Returns
None

References XV_HdmiTxSs1::HdmiTx1Ptr, and XV_HdmiTxSs1::VtcPtr.

Referenced by DetailedInfo(), and XV_HdmiTxSs1_ReportInfo().

void XV_HdmiTxSs1_ReportDRMInfo ( XV_HdmiTxSs1 InstancePtr)

This function prints the HDMI 2.1 TX SS DRM If information.

Parameters
Pointerto HDMI 2.1 Tx SS Instance.
Returns
None.
Note
None.

References XV_HdmiTxSs1_GetDrmInfoframe().

Referenced by Info(), and XV_HdmiTxSs1_ReportInfo().

void XV_HdmiTxSs1_ReportInfo ( XV_HdmiTxSs1 InstancePtr)

This function prints the HDMI TX SS subcore versions.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiTxSs1_ReportAudio(), XV_HdmiTxSs1_ReportCoreInfo(), XV_HdmiTxSs1_ReportDRMInfo(), XV_HdmiTxSs1_ReportSubcoreVersion(), and XV_HdmiTxSs1_ReportTiming().

void XV_HdmiTxSs1_ReportSubcoreVersion ( XV_HdmiTxSs1 InstancePtr)

This function prints the HDMI TX SS subcore versions.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1::IsStreamUp, and XV_HdmiTxSs1::VtcPtr.

Referenced by DetailedInfo(), and XV_HdmiTxSs1_ReportInfo().

void XV_HdmiTxSs1_ReportTiming ( XV_HdmiTxSs1 InstancePtr)

This function prints the HDMI TX SS timing information.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, and XV_HdmiTxSS1_IsMasked().

Referenced by Info(), and XV_HdmiTxSs1_ReportInfo().

void XV_HdmiTxSs1_Reset ( XV_HdmiTxSs1 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_HDMITXSS1_LOG_EVT_RESET, XV_HdmiTxSs1_LogWrite(), XV_HdmiTxSs1_SYSRST(), XV_HdmiTxSs1_TXCore_LRST(), XV_HdmiTxSs1_TXCore_VRST(), and XV_HdmiTxSs1_VRST().

Referenced by XV_HdmiTxSs1_CfgInitialize().

void XV_HdmiTxSs1_SendAuxInfoframe ( XV_HdmiTxSs1 InstancePtr,
void *  Aux 
)

This function sends audio info frames.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

int XV_HdmiTxSs1_SendCvtemAuxPackets ( XV_HdmiTxSs1 InstancePtr,
XHdmiC_Aux *  DscAuxFifo 
)

This function is used to Send CVTEM Packet.

Parameters
InstancePtris a pointer to the HDMI TX Subsystem instance.
DscAuxFifois a pointer to the HDMI Aux fifo
Returns
XST_SUCCESS on successful update of header and data. XST_FAILURE if the device is busy
Note

References XV_HdmiTxSs1::HdmiTx1Ptr.

u32 XV_HdmiTxSs1_SendGenericAuxInfoframe ( XV_HdmiTxSs1 InstancePtr,
void *  Aux 
)

This function sends generic info frames.

Parameters
None.
Returns
  • XST_SUCCESS if infoframes transmitted successfully.
  • XST_FAILURE if AUX FIFO is full.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSS1_SetAppVersion ( XV_HdmiTxSs1 InstancePtr,
u8  maj,
u8  min 
)

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

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

References XV_HdmiTxSs1::AppMajVer, and XV_HdmiTxSs1::AppMinVer.

void XV_HdmiTxSs1_SetAudioChannels ( XV_HdmiTxSs1 InstancePtr,
u8  AudioChannels 
)

This function Sets the HDMI TX SS number of active audio channels.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
AudioChannels
Returns
None.
Note
None.

References XV_HdmiTxSs1::AudioChannels, XV_HdmiTxSs1::AudioInfoframe, XV_HdmiTxSs1::HdmiTx1Ptr, XV_HDMITXSS1_LOG_EVT_SETAUDIOCHANNELS, and XV_HdmiTxSs1_LogWrite().

void XV_HdmiTxSs1_SetAudioFormat ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiTx1_AudioFormatType  format 
)

This function Sets the HDMI TX SS Audio Format.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
format1:HBR 0:L-PCM
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSS1_SetBackgroundColor ( XV_HdmiTxSs1 InstancePtr,
XVMaskColorId  ColorId 
)

This function configures the background color for Video Masking Feature.

Parameters
InstancePtris a pointer to the core instance to be worked on.
ColorIdis the background color requested
Returns
None

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1_GetVideoStream(), XV_HdmiTxSS1_MaskEnable(), XV_HdmiTxSS1_MaskNoise(), XV_HdmiTxSS1_MaskSetBlue(), XV_HdmiTxSS1_MaskSetGreen(), and XV_HdmiTxSS1_MaskSetRed().

int XV_HdmiTxSs1_SetCallback ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiTxSs1_HandlerType  HandlerType,
void *  CallbackFunc,
void *  CallbackRef 
)

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

HandlerType                     Callback Function Type
-----------------------         ---------------------------------------------
(XV_HDMITXSS1_HANDLER_CONNECT)       HpdCallback
(XV_HDMITXSS1_HANDLER_VS)            VsCallback
(XV_HDMITXSS1_HANDLER_STREAM_DOWN)   StreamDownCallback
(XV_HDMITXSS1_HANDLER_STREAM_UP)     StreamUpCallback
(XV_HDMITXSS1_HANDLER_BRDGOVERFLOW)  BrdgOverflowCallback
(XV_HDMITXSS1_HANDLER_BRDGUNDERFLOW) BrdgUnderflowCallback
(XV_HDMITXSS1_HANDLER_HDCP_AUTHENTICATED)
(XV_HDMITXSS1_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE)
(XV_HDMITXSS1_HANDLER_HDCP_UNAUTHENTICATED)
Parameters
InstancePtris a pointer to the HDMI TX 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_HdmiTxSs1::BrdgLockedCallback, XV_HdmiTxSs1::BrdgLockedRef, XV_HdmiTxSs1::BrdgOverflowCallback, XV_HdmiTxSs1::BrdgOverflowRef, XV_HdmiTxSs1::BrdgUnderflowCallback, XV_HdmiTxSs1::BrdgUnderflowRef, XV_HdmiTxSs1::BrdgUnlockedCallback, XV_HdmiTxSs1::BrdgUnlockedRef, XV_HdmiTxSs1::ConnectCallback, XV_HdmiTxSs1::ConnectRef, XV_HdmiTxSs1::DscDecodeFailCallback, XV_HdmiTxSs1::DscDecodeFailRef, XV_HdmiTxSs1::DynHdrMtwCallback, XV_HdmiTxSs1::DynHdrMtwRef, XV_HdmiTxSs1::FrlConfigCallback, XV_HdmiTxSs1::FrlConfigRef, XV_HdmiTxSs1::FrlFfeCallback, XV_HdmiTxSs1::FrlFfeRef, XV_HdmiTxSs1::FrlStartCallback, XV_HdmiTxSs1::FrlStartRef, XV_HdmiTxSs1::FrlStopCallback, XV_HdmiTxSs1::FrlStopRef, XV_HdmiTxSs1::StreamDownCallback, XV_HdmiTxSs1::StreamDownRef, XV_HdmiTxSs1::StreamUpCallback, XV_HdmiTxSs1::StreamUpRef, XV_HdmiTxSs1::TmdsConfigCallback, XV_HdmiTxSs1::TmdsConfigRef, XV_HdmiTxSs1::ToggleCallback, XV_HdmiTxSs1::ToggleRef, XV_HdmiTxSs1::VsCallback, XV_HdmiTxSs1::VsRef, XV_HDMITXSS1_HANDLER_BRDGLOCK, XV_HDMITXSS1_HANDLER_BRDGOVERFLOW, XV_HDMITXSS1_HANDLER_BRDGUNDERFLOW, XV_HDMITXSS1_HANDLER_BRDGUNLOCK, XV_HDMITXSS1_HANDLER_CONNECT, XV_HDMITXSS1_HANDLER_DSCDECODE_FAIL, XV_HDMITXSS1_HANDLER_DYNHDR_MWT, XV_HDMITXSS1_HANDLER_FRL_CONFIG, XV_HDMITXSS1_HANDLER_FRL_FFE, XV_HDMITXSS1_HANDLER_FRL_START, XV_HDMITXSS1_HANDLER_FRL_STOP, XV_HDMITXSS1_HANDLER_HDCP_AUTHENTICATED, XV_HDMITXSS1_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE, XV_HDMITXSS1_HANDLER_HDCP_UNAUTHENTICATED, XV_HDMITXSS1_HANDLER_STREAM_DOWN, XV_HDMITXSS1_HANDLER_STREAM_UP, XV_HDMITXSS1_HANDLER_TMDS_CONFIG, XV_HDMITXSS1_HANDLER_TOGGLE, and XV_HDMITXSS1_HANDLER_VS.

Referenced by main().

void XV_HdmiTxSs1_SetCustomVrrIf ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiC_VrrInfoFrame *  VrrIF,
u16  Sync,
u16  DataSetLen 
)

This function allows setting Custom VRR meta in core.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 instance.
VrrIFis a pointer to the XV_HdmiC_VrrInfoFrame structure
Valueof sync in Vrr packet
Valueof data set length
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetDefaultPpc ( XV_HdmiTxSs1 InstancePtr,
u8  Id 
)

This function will set the default in HDF.

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

References XV_HdmiTxSs1::Config, and XV_HdmiTxSs1_Config::Ppc.

void XV_HdmiTxSS1_SetDviMode ( XV_HdmiTxSs1 InstancePtr)

This function sets the core into DVI mode.

Parameters
InstancePtris a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetExtACR ( XV_HdmiTxSs1 InstancePtr)

This function Sets use the external ACR Module.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
AudioSample Frequency in Hz
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetFfeLevels ( XV_HdmiTxSs1 InstancePtr,
u8  FfeLevel 
)

This function sets the FFE Levels.

Parameters
None.
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by main().

void XV_HdmiTxSs1_SetFrlExtVidCke ( XV_HdmiTxSs1 InstancePtr)

This function sets the CKE Source for External.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetFrlIntVidCke ( XV_HdmiTxSs1 InstancePtr)

This function sets the CKE Source for Interal Generated.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetFrlLtp ( XV_HdmiTxSs1 InstancePtr,
u8  Lane,
XV_HdmiTx1_FrlLtpType  Ltp 
)

This function sets the FRL LTP.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Lanesspecifies FRL operation lane
  • 3 = 3 lanes
  • 4 = 4 lanes
Parameters
Ltpis a FRL LTP Type
Returns
Note
Debug purpose.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetFrlMaxFrlRate ( XV_HdmiTxSs1 InstancePtr,
XHdmiC_MaxFrlRate  MaxFrlRate 
)

This function sets maximum FRL Rate supported by the system.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
MaxFrlRatespecifies maximum rates supported
  • 0 = FRL Not Supported
  • 1 = 3 Lanes 3Gbps
  • 2 = 4 Lanes 3Gbps
  • 3 = 4 Lanes 6Gbsp
  • 4 = 4 Lanes 8Gbps
  • 5 = 4 Lanes 10Gbps
  • 6 = 4 Lanes 12Gbps
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by main().

void XV_HdmiTxSs1_SetFrlWrongLtp ( XV_HdmiTxSs1 InstancePtr)

This function stops FRL video stream.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Returns
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetGcpAvmuteBit ( XV_HdmiTxSs1 InstancePtr)

This function sets the HDMI TX AUX GCP register AVMUTE bit.

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

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetGcpClearAvmuteBit ( XV_HdmiTxSs1 InstancePtr)

This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit.

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

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSS1_SetHdmiFrlMode ( XV_HdmiTxSs1 InstancePtr)

This function sets the core into HDMI mode.

Parameters
InstancePtris a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSS1_SetHdmiTmdsMode ( XV_HdmiTxSs1 InstancePtr)

This function sets the core into HDMI mode.

Parameters
InstancePtris a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_SubcoreInitHdmiTx1().

void XV_HdmiTxSS1_SetHpdTolerance ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiTxSs1_HpdToleranceType  Type,
u16  ToleranceVal 
)

This function will Configure Timegrid based on the tolerance value for HPD and Toggle event.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
Typeis the tolerance type.
ToleranceValis the tolerance value to be applied.
Returns
void.
Note
None.

References XV_HdmiTxSs1_Config::BaseAddress, and XV_HdmiTxSs1::Config.

void XV_HdmiTxSs1_SetIntACR ( XV_HdmiTxSs1 InstancePtr)

This function Sets use the internal ACR Module.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
AudioSample Frequency in Hz
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

int XV_HdmiTxSs1_SetLogCallback ( XV_HdmiTxSs1 InstancePtr,
u64 *  CallbackFunc,
void *  CallbackRef 
)

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

Parameters
InstancePtris a pointer to the HDMI TX 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_HdmiTxSs1::LogWriteCallback, and XV_HdmiTxSs1::LogWriteRef.

void XV_HdmiTxSs1_SetPpc ( XV_HdmiTxSs1 InstancePtr,
u8  Id,
u8  Ppc 
)

This function will set PPC specified by user.

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

References XV_HdmiTxSs1::Config, and XV_HdmiTxSs1_Config::Ppc.

void XV_HdmiTxSs1_SetSampleFrequency ( XV_HdmiTxSs1 InstancePtr,
XHdmiC_SamplingFrequencyVal  AudSampleFreqVal 
)

This function Sets the audio sampling frequency.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
AudioSample Frequency in Hz
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HDMITXSS1_LOG_EVT_AUDIOINVALIDSAMPRATE, and XV_HdmiTxSs1_LogWrite().

void XV_HdmiTxSs1_SetSamplingRate ( XV_HdmiTxSs1 InstancePtr,
u8  SamplingRate 
)

This function Sets the HDMI TX SS video Identification code.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
SamplingRateValue
Returns
None.
Note
None.

References XV_HdmiTxSs1::SamplingRate.

void XV_HdmiTxSs1_SetScrambler ( XV_HdmiTxSs1 InstancePtr,
u8  Enable 
)

This function enables / disables the TX scrambler.

Parameters
InstancePtris a pointer to the Subsystem instance to be worked on.
EnableTRUE:Enable scrambler FALSE:Disable scrambler
Returns
None.
Note
The scrambler setting will revert to the default behavior during the next stream configuration (scrambler is enabled for HDMI 2.0 video and disabled when the video is of HDMI 1.4 or lower)

References XV_HdmiTxSs1::HdmiTx1Ptr, and XV_HdmiTxSs1_SetVideoStreamScramblingFlag().

u32 XV_HdmiTxSs1_SetStream ( XV_HdmiTxSs1 InstancePtr,
XVidC_VideoTiming  VideoTiming,
XVidC_FrameRate  FrameRate,
XVidC_ColorFormat  ColorFormat,
XVidC_ColorDepth  Bpc,
u8  IsDSCompressed,
XVidC_3DInfo *  Info3D,
u64 *  TmdsClock 
)

This function set HDMI TX susbsystem stream parameters.

It returns the calculated TMDS clock value.

Parameters
InstancePtr- Pointer to HDMI 2.1 Tx Subsystem. VideoTiming - Video Timing of the video to be displayed. FrameRate - Frame rate to set ColorFormat - Color format of stream (RGB, YUV444/422/420) Bpc - Bit per component IsDSCompressed - Flag to indicate DSCompression Info3D - 3D Info TmdsClock - Address where the calculated TMDS Clock value is stored.
Returns
XST_SUCCESS - In case TMDS clock is calculated correctly XST_INVALID_PARAM - In case invalid parameters
Note
None.

References XV_HdmiTxSs1::Config, XV_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1_Config::Ppc, XV_HdmiTxSs1_Config::VideoInterface, XV_HDMITXSS1_LOG_EVT_SETSTREAM, and XV_HdmiTxSs1_LogWrite().

void XV_HdmiTxSs1_SetTmdsClockRatio ( XV_HdmiTxSs1 InstancePtr,
u8  Ratio 
)

This function Sets the HDMI TX SS TMDS Cock Ratio.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
Ratio0 - 1/10, 1 - 1/40
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetVideoIDCode ( XV_HdmiTxSs1 InstancePtr,
u8  Vic 
)

This function Sets the HDMI TX SS video Identification code.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
InstancePtrVIC Flag Value
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetVideoStream ( XV_HdmiTxSs1 InstancePtr,
XVidC_VideoStream  VidStream 
)

This function Sets the HDMI TX SS video stream.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
@returnXVidC_VideoStream pointer
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetVideoStreamScramblingFlag ( XV_HdmiTxSs1 InstancePtr,
u8  IsScrambled 
)

This function Sets the HDMI TX SS video stream type.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
IsScrambled1:IsScrambled 0: not Scrambled
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_SetScrambler().

void XV_HdmiTxSs1_SetVideoStreamScramblingOverrideFlag ( XV_HdmiTxSs1 InstancePtr,
u8  OverrideScramble 
)

This function Sets the HDMI TX SS video stream scrambling behaviour.

Setting OverrideScramble to true will force enabling/disabling scrambling function based on the value of IsScrambled flag.

Parameters
InstancePtrpointer to XV_HdmiTxSs1 instance
OverrideScramble0: Scrambling is always enabled for HDMI 2.0 resolutions and is enabled /or disabled for HDMI 1.4 resolutions based on IsScrambled value 1: Enable scrambling if IsScrambled is TRUE and disable scrambling if IsScrambled is FALSE
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_SetVrrIf ( XV_HdmiTxSs1 InstancePtr,
XV_HdmiC_VrrInfoFrame *  VrrIF 
)

This function allows setting VRR meta in core.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 instance.
VrrIFis a pointer to the XV_HdmiC_VrrInfoFrame structure
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by Exdes_ProcessVTEMPacket(), and main().

void XV_HdmiTxSS1_SetVrrMode ( XV_HdmiTxSs1 InstancePtr,
u8  mode,
u8  VrrEn,
u8  FvaFactor,
u8  CnmvrrEn 
)

This function configures Video Timing Controller with Adaptive-Sync mode.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 instance.
modeis vtc mode. 0: Fixed stretch, 1: Auto
VrrEnis to enable/disable VRR
FvaFactoris to set FVA factor value
CnmvrrEnis to enable/disable Cnmvrr
Returns
None.
Note
Should be called before XV_HdmiTxSs1_SetStream atleast once for VRR use case.
void XV_HdmiTxSS1_SetVrrVfpStretch ( XV_HdmiTxSs1 InstancePtr,
u16  StretchValue 
)

This function configures vertical front porch stretch limit in Video Timing Controller.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 instance.
StretchValueis vertical front porch stretch value.
Returns
None.
Note
Call after XV_HdmiTxSs1_SetStream and VRR mode is already set through XV_HdmiTxSS1_SetVrrMode.

References XV_HdmiTxSs1::VtcPtr, and XV_HdmiTxSs1_GetVideoStream().

Referenced by Exdes_ProcessVRRTimingChange(), and main().

void XV_HdmiTxSs1_ShowEdid ( XV_HdmiTxSs1 InstancePtr)

This function shows the HDMI source edid.

Returns
None.
Note
None.

References XV_HdmiTxSs1::IsStreamConnected, and XV_HdmiTxSs1_ReadEdidSegment().

void XV_HdmiTxSs1_ShowEdid_extension ( XV_HdmiTxSs1 InstancePtr,
XV_VidC_EdidCntrlParam *  EdidCtrlParam 
)

This function shows the HDMI source edid.

Returns
None.
Note
None.

References XV_HdmiTxSs1::IsStreamConnected, and XV_HdmiTxSs1_ReadEdidSegment().

void XV_HdmiTxSs1_Start ( XV_HdmiTxSs1 InstancePtr)

This function starts the HDMI TX 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_HdmiTxSs1::HdmiTx1Ptr, XV_HDMITXSS1_LOG_EVT_START, and XV_HdmiTxSs1_LogWrite().

Referenced by main().

int XV_HdmiTxSs1_StartFrlTraining ( XV_HdmiTxSs1 InstancePtr,
XHdmiC_MaxFrlRate  FrlRate 
)

This function starts the Fixed Rate Link Training.

Parameters
InstancePtris a pointer to the XV_HdmiTxSs1 core instance.
FrlRatespecifies the FRL rate to be attempted
  • 0 = FRL Not Supported
  • 1 = 3 Lanes 3Gbps
  • 2 = 4 Lanes 3Gbps
  • 3 = 4 Lanes 6Gbsp
  • 4 = 4 Lanes 8Gbps
  • 5 = 4 Lanes 10Gbps
  • 6 = 4 Lanes 12Gbps
Returns
Status on if FrlTraining can be started or not.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HDMITXSS1_LOG_EVT_FRL_START, and XV_HdmiTxSs1_LogWrite().

int XV_HdmiTxSs1_StartTmdsMode ( XV_HdmiTxSs1 InstancePtr)

This function starts the TMDS mode.

Parameters
InstancePtris a pointer to the XV_HdmiTx1 core instance.
Returns
Status on if TMDS can be started or not.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_Stop ( XV_HdmiTxSs1 InstancePtr)

This function stops the HDMI TX 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_HdmiTxSs1::HdmiTx1Ptr, XV_HdmiTxSs1::VtcPtr, XV_HDMITXSS1_LOG_EVT_STOP, and XV_HdmiTxSs1_LogWrite().

void XV_HdmiTxSS1_StopFRLStream ( XV_HdmiTxSs1 InstancePtr)
void XV_HdmiTxSs1_StreamStart ( XV_HdmiTxSs1 InstancePtr)

This function starts the HDMI TX stream.

Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr, XV_HDMITXSS1_LOG_EVT_STREAMSTART, and XV_HdmiTxSs1_LogWrite().

void XV_HdmiTxSs1_SYSRST ( XV_HdmiTxSs1 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_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_RefClockChangeInit(), XV_HdmiTxSs1_Reset(), XV_HdmiTxSS1_StartFRLStream(), and XV_HdmiTxSS1_StopFRLStream().

int XV_HdmiTxSs1_TmdsStart ( XV_HdmiTxSs1 InstancePtr)

This function starts the Legacy HDMI TMDS Mode.

Returns
Status on if TMDS mode is successfully started or not.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

void XV_HdmiTxSs1_TXCore_LRST ( XV_HdmiTxSs1 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_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_RefClockChangeInit(), XV_HdmiTxSs1_Reset(), XV_HdmiTxSS1_StartFRLStream(), and XV_HdmiTxSS1_StopFRLStream().

void XV_HdmiTxSs1_TXCore_VRST ( XV_HdmiTxSs1 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_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_RefClockChangeInit(), XV_HdmiTxSs1_Reset(), XV_HdmiTxSS1_StartFRLStream(), and XV_HdmiTxSS1_StopFRLStream().

void XV_HdmiTxSs1_VrrControl ( XV_HdmiTxSs1 InstancePtr,
u8  Enable 
)

This function allows enabling/disabling of VRR in HDMI Tx.

Parameters
Enable0: disable VRR 1: enable VRR
Returns
None.
Note
None.

References XV_HdmiTxSs1::HdmiTx1Ptr.

Referenced by Exdes_ProcessVTEMPacket(), and main().

void XV_HdmiTxSs1_VRST ( XV_HdmiTxSs1 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_HdmiTxSs1::HdmiTx1Ptr.

Referenced by XV_HdmiTxSs1_RefClockChangeInit(), XV_HdmiTxSs1_Reset(), XV_HdmiTxSS1_StartFRLStream(), and XV_HdmiTxSS1_StopFRLStream().