dp14txss
Vitis Drivers API Documentation
xdptxss.h File Reference

Data Structures

struct  XDpTxSs_UsrOpt
 User input structure. More...
 
struct  XDpTxSs_VtcSubCore
 VTC Sub-core structure. More...
 
struct  XDpTxSs_DsSubCore
 Dual Splitter Sub-core structure. More...
 
struct  XDpTxSs_DpSubCore
 DisplayPort Sub-core structure. More...
 
struct  XDpTxSs_Hdcp1xSubCore
 High-Bandwidth Content Protection (HDCP) Sub-core structure. More...
 
struct  XDpTxSs_TmrCtrSubCore
 Timer Counter Sub-core structure. More...
 
struct  XDpTxSs_Hdcp22SubCore
 HDCP22 Sub-core structure. More...
 
struct  XDpTxSs_Config
 This typedef contains configuration information for the DisplayPort Transmitter Subsystem core. More...
 
struct  XDpTxSs_UsrHpdPulseData
 HPD Pulse User Data structure. More...
 
struct  XDpTxSs_UsrHpdEventData
 HPD Event User Data structure. More...
 
struct  XDpTxSs
 The DisplayPort TX Subsystem driver instance data. More...
 

Macros

#define XDPTXSS_H_
 Prevent circular inclusions by using protection macros. More...
 
#define XDpTxSs_TimerHandler   XDp_TimerHandler
 Callback type which represents a custom timer wait handler. More...
 
#define XDpTxSs_MainStreamAttributes   XDp_TxMainStreamAttributes
 Main-Stream attributes. More...
 
#define XDpTxSs_Printf   XHdcp1x_Printf
 Debug printf. More...
 
#define XDpTxSs_LogMsg   XHdcp1x_LogMsg
 Debug log message. More...
 
#define XDpTxSs_CfgMsaEnSynchClkMode(InstancePtr, Stream, Enable)   XDp_TxCfgMsaEnSynchClkMode((InstancePtr)->DpPtr, (Sream), (Enable))
 This function enables or disables synchronous clock mode for a video stream. More...
 
#define XDpTxSs_Mst_AudioEnable(InstancePtr, StreamId)   XDp_Tx_Mst_AudioEn((InstancePtr)->DpPtr, StreamId)
 This function macro enables MST-TX audio on a given stream on the main link. More...
 
#define XDpTxSs_Mst_AudioDisable(InstancePtr)   XDp_TxAudioDis((InstancePtr)->DpPtr)
 This function macro disables audio on a given stream on the main link. More...
 
#define XDpTxSs_SendAudioInfoFrame(InstancePtr, xilInfoFrame)   XDp_TxSendAudioInfoFrame((InstancePtr)->DpPtr, xilInfoFrame)
 This function macro sends audio infoframe packets on the main link. More...
 

Enumerations

enum  XDpTxSs_HandlerType {
  XDPTXSS_HANDLER_DP_HPD_EVENT = 1, XDPTXSS_HANDLER_DP_HPD_PULSE, XDPTXSS_HANDLER_DP_LANE_COUNT_CHG, XDPTXSS_HANDLER_DP_LINK_RATE_CHG,
  XDPTXSS_HANDLER_DP_PE_VS_ADJUST, XDPTXSS_HANDLER_HDCP_RPTR_EXCHG, XDPTXSS_HANDLER_HDCP22_AUTHENTICATED, XDPTXSS_HANDLER_HDCP22_UNAUTHENTICATED,
  XDPTXSS_HANDLER_HDCP22_UPDATE_DOWNSTREAM_TOPOLOGY, XDPTXSS_HANDLER_DP_SET_MSA, XDPTXSS_DRV_HANDLER_DP_HPD_EVENT, XDPTXSS_DRV_HANDLER_DP_HPD_PULSE,
  XDPTXSS_HANDLER_DP_EXT_PKT_EVENT, XDPTXSS_DRV_HANDLER_DP_EXT_PKT_EVENT, XDPTXSS_HANDLER_DP_VSYNC
}
 These constants specify different types of handler and used to differentiate interrupt requests from sub-cores. More...
 
enum  XDpTxSs_HdcpProtocol { XDPTXSS_HDCP_NONE, XDPTXSS_HDCP_1X, XDPTXSS_HDCP_22, XDPTXSS_HDCP_BOTH }
 These constants specify the HDCP protection schemes. More...
 
enum  XDpTxSs_HdcpContentStreamType { XDPTXSS_HDCP_STREAMTYPE_0, XDPTXSS_HDCP_STREAMTYPE_1 }
 These constants specify HDCP repeater content stream management type. More...
 

Functions

XDpTxSs_ConfigXDpTxSs_LookupConfig (u16 DeviceId)
 This function returns a reference to an XDptxss_Config structure based on the core id, DeviceId. More...
 
u32 XDpTxSs_CfgInitialize (XDpTxSs *InstancePtr, XDpTxSs_Config *CfgPtr, UINTPTR EffectiveAddr)
 This function initializes the DisplayPort Transmitter Subsystem core. More...
 
u32 XDpTxSs_Start (XDpTxSs *InstancePtr)
 This function starts the DisplayPort Transmitter Subsystem including all sub-cores. More...
 
u32 XDpTxSs_StartCustomMsa (XDpTxSs *InstancePtr, XDpTxSs_MainStreamAttributes *MsaConfigCustom)
 This function starts the DisplayPort Transmitter Subsystem with custom multi-stream attributes (MSA)including all sub-cores. More...
 
void XDpTxSs_Stop (XDpTxSs *InstancePtr)
 This function disables the DisplayPort Transmitter Subsystem sub-cores. More...
 
void XDpTxSs_Reset (XDpTxSs *InstancePtr)
 This function resets the DisplayPort Transmitter Subsystem including all sub-cores. More...
 
void XDpTxSs_VtcAdjustBSTimingEnable (XDpTxSs *InstancePtr)
 This function enables special timing mode for BS equal timing. More...
 
void XDpTxSs_VtcAdjustBSTimingDisable (XDpTxSs *InstancePtr)
 This function disables special timing mode for BS equal timing. More...
 
void XDpTxSs_OverrideSyncPolarity (XDpTxSs *InstancePtr, u8 Stream)
 This function overrides the Polarity for Horizontal and Vertical Sync signals. More...
 
u32 XDpTxSs_SetBpc (XDpTxSs *InstancePtr, u8 Bpc)
 This function sets the bits per color value of the video stream. More...
 
u32 XDpTxSs_SetVidMode (XDpTxSs *InstancePtr, XVidC_VideoMode VidMode)
 This function sets the standard display mode. More...
 
u32 XDpTxSs_SetLinkRate (XDpTxSs *InstancePtr, u8 LinkRate)
 This function sets the data rate to be used by the DisplayPort TX Subsystem core. More...
 
u32 XDpTxSs_SetLaneCount (XDpTxSs *InstancePtr, u8 LaneCount)
 This function sets the number of lanes to be used by DisplayPort TX Subsystem core. More...
 
u32 XDpTxSs_SetTransportMode (XDpTxSs *InstancePtr, u8 Mode)
 This function sets transport mode (SST/MST). More...
 
u32 XDpTxSs_IsConnected (XDpTxSs *InstancePtr)
 This function checks if there is a connected RX device to DisplayPort TX Subsystem. More...
 
u32 XDpTxSs_CheckLinkStatus (XDpTxSs *InstancePtr)
 This function checks if the receiver's DisplayPort Configuration Data (DPCD) indicates the receiver has achieved and maintained clock recovery, channel equalization, symbol lock, and interlane alignment for all lanes currently in use. More...
 
u32 XDpTxSs_IsMstCapable (XDpTxSs *InstancePtr)
 This function determines whether downstream RX device is MST/SST capable. More...
 
u32 XDpTxSs_GetRxCapabilities (XDpTxSs *InstancePtr)
 This function retrieves the RX device's capabilities from the RX device's DisplayPort Configuration Data (DPCD). More...
 
u32 XDpTxSs_GetEdid (XDpTxSs *InstancePtr, u8 *Edid)
 This function retrieves an immediately connected RX device's Extended Display Identification Data (EDID) structure. More...
 
u32 XDpTxSs_GetRemoteEdid (XDpTxSs *InstancePtr, u8 SinkNum, u8 *Edid)
 This function retrieves a remote RX device's Extended Display Identification Data (EDID) structure. More...
 
void XDpTxSs_SetHasRedriverInPath (XDpTxSs *InstancePtr, u8 Set)
 This function sets software switch that specify whether or not a redriver exits on the DisplayPort output path. More...
 
void XDpTxSs_SetUserPixelWidth (XDpTxSs *InstancePtr, u8 UserPixelWidth, u8 StreamId)
 This function configures the number of pixels output through the user data interface. More...
 
u8 XDpTxSs_GetNumOfMstStreams (XDpTxSs *InstancePtr)
 This function returns number of downstream MST sink devices enumerated and available for payload allocation . More...
 
u32 XDpTxSs_Authenticate (XDpTxSs *InstancePtr)
 This function initiates authentication process. More...
 
u32 XDpTxSs_IsAuthenticated (XDpTxSs *InstancePtr)
 This function checks whether HDCP Transmitter authenticated the HDCP Receiver. More...
 
u32 XDpTxSs_HdcpEnable (XDpTxSs *InstancePtr)
 This function enables High-Bandwidth Content Protection (HDCP) interface. More...
 
u32 XDpTxSs_HdcpDisable (XDpTxSs *InstancePtr)
 This function disables High-Bandwidth Content Protection (HDCP) interface. More...
 
int XDpTxSs_HdcpSetCapability (XDpTxSs *InstancePtr, XDpTxSs_HdcpProtocol Protocol)
 This function sets the HDCP protocol capability used during authentication. More...
 
int XDpTxSs_HdcpReset (XDpTxSs *InstancePtr)
 This function resets both HDCP 1.4 and 2.2 protocols. More...
 
int XDpTxSs_HdcpSetProtocol (XDpTxSs *InstancePtr, XDpTxSs_HdcpProtocol Protocol)
 This function sets the active HDCP protocol and enables it. More...
 
u32 XDpTxSs_EnableEncryption (XDpTxSs *InstancePtr, u64 StreamMap)
 This function enables encryption on series of streams within an HDCP interface. More...
 
u32 XDpTxSs_DisableEncryption (XDpTxSs *InstancePtr, u64 StreamMap)
 This function disables encryption on series of streams within an HDCP interface. More...
 
u32 XDpTxSs_Poll (XDpTxSs *InstancePtr)
 This function polls the HDCP interface, process events and sets transmit state machine accordingly. More...
 
u32 XDpTxSs_IsHdcpCapable (XDpTxSs *InstancePtr)
 This function determines whether downstream/remote RX device is HDCP capable. More...
 
u64 XDpTxSs_GetEncryption (XDpTxSs *InstancePtr)
 This function retrieves the current encryption map. More...
 
u32 XDpTxSs_SetPhysicalState (XDpTxSs *InstancePtr, u32 PhyState)
 This function enables/disables the underlying physical interface. More...
 
u32 XDpTxSs_SetLane (XDpTxSs *InstancePtr, u32 Lane)
 This function sets lane(s) of the HDCP interface. More...
 
void XDpTxSs_SetDebugPrintf (XDpTxSs *InstancePtr, XDpTxSs_Printf PrintfFunc)
 This function sets the debug printf function. More...
 
void XDpTxSs_SetDebugLogMsg (XDpTxSs *InstancePtr, XDpTxSs_LogMsg LogFunc)
 This function sets the debug log message function. More...
 
u32 XDpTxSs_ReadDownstream (XDpTxSs *InstancePtr)
 This function initiates downstream read of READY bit and consequently the second part of repeater authentication. More...
 
void XDpTxSs_HandleTimeout (XDpTxSs *InstancePtr)
 This function handles a timeout for HDCP. More...
 
void XDpTxSs_ReportCoreInfo (XDpTxSs *InstancePtr)
 This function reports list of sub-cores included in DisplayPort TX Subsystem. More...
 
void XDpTxSs_ReportLinkInfo (XDpTxSs *InstancePtr)
 This function prints the link status, selected resolution, bits per color and link/lane count symbol error. More...
 
void XDpTxSs_ReportMsaInfo (XDpTxSs *InstancePtr)
 This function prints the current main stream attributes from the DisplayPort TX core. More...
 
void XDpTxSs_ReportSinkCapInfo (XDpTxSs *InstancePtr)
 This function prints the capabilities of the DisplayPort sink. More...
 
void XDpTxSs_ReportSplitterInfo (XDpTxSs *InstancePtr)
 This function prints the current Dual Splitter information. More...
 
void XDpTxSs_ReportVtcInfo (XDpTxSs *InstancePtr)
 This function prints the current VTC timing information. More...
 
void XDpTxSs_ReportHdcpInfo (XDpTxSs *InstancePtr)
 This function prints the debug display info of the HDCP interface. More...
 
u32 XDpTxSs_SelfTest (XDpTxSs *InstancePtr)
 This function performs self test on DisplayPort Transmitter Subsystem sub-cores. More...
 
void XDpTxSs_HdcpIntrHandler (void *InstancePtr)
 This function is the interrupt handler for the HDCP Cipher core. More...
 
void XDpTxSs_TmrCtrIntrHandler (void *InstancePtr)
 This function is the interrupt handler for the Timer Counter core. More...
 
void XDpTxSs_Hdcp22SetKey (XDpTxSs *InstancePtr, XDpTxSs_Hdcp22KeyType KeyType, u8 *KeyPtr)
 This function sets pointers to the HDCP 2.2 keys. More...
 
void XDpTxSs_DpIntrHandler (void *InstancePtr)
 This function is the interrupt handler for the DisplayPort TX core operating in TX mode. More...
 
u32 XDpTxSs_SetCallBack (XDpTxSs *InstancePtr, u32 HandlerType, void *CallbackFunc, void *CallbackRef)
 This function installs an asynchronous callback function for the given HandlerType: More...
 
void XDpTxSs_SetUserTimerHandler (XDpTxSs *InstancePtr, XDpTxSs_TimerHandler CallbackFunc, void *CallbackRef)
 This function installs a custom delay/sleep function to be used by the DisplayPort TX Subsystem. More...
 
u32 XDpTxSs_CheckVscColorimetrySupport (XDpTxSs *InstancePtr)
 This function will check if the immediate downstream RX device capable of receiving colorimetry information through VSC extended SDP packet. More...
 
u32 XDpTxSs_SetVscExtendedPacket (XDpTxSs *InstancePtr, XDp_TxVscExtPacket VscPkt)
 This function decodes the extended packet payload data bytes and fills up the driver extended packet structure members. More...
 
void XDpTxss_EnableVscColorimetry (XDpTxSs *InstancePtr, u8 Enable)
 This function Enable / Disable the mechanism of sending colorimetry information through VSC extended packet. More...
 
void XDpTxSs_HpdEventProcess (void *InstancePtr)
 This function is process some DP driver read as per DP spec on HPD EVENT. More...
 
void XDpTxSs_HpdPulseProcess (void *InstancePtr)
 This function is process some DP driver read as per DP spec on HPD Pulse. More...
 
void XDpTxSs_WriteVscExtPktProcess (void *InstancePtr)
 This function writes the pixel encoding format and colorimetry formats in to the extended packet registers at DP TX offset addresses "0x0330 to 0x0350". More...