hdcp1x
Vitis Drivers API Documentation
xhdcp1x.c File Reference

Macros

#define DRIVER_VERSION   (0x00010023ul)
 This defines the version of the software driver. More...
 

Functions

int XHdcp1x_CfgInitialize (XHdcp1x *InstancePtr, const XHdcp1x_Config *CfgPtr, void *PhyIfPtr, UINTPTR EffectiveAddr)
 This function retrieves the configuration for this HDCP instance and fills in the InstancePtr->Config structure. More...
 
int XHdcp1x_Poll (XHdcp1x *InstancePtr)
 This function polls an HDCP interface. More...
 
int XHdcp1x_DownstreamReady (XHdcp1x *InstancePtr)
 This function posts a DOWNSTREAMREADY event to an HDCP interface. More...
 
int XHdcp1x_GetRepeaterInfo (XHdcp1x *InstancePtr, XHdcp1x_RepeaterExchange *RepeaterInfoPtr)
 This function copies the V'H0, V'H1, V'H2, V'H3, V'H4, KSVList and BInfo values in the HDCP RX HDCP Instance for Repeater validation . More...
 
int XHdcp1x_SetRepeater (XHdcp1x *InstancePtr, u8 State)
 This function sets the Repeater functionality for an HDCP interface. More...
 
int XHdcp1x_Reset (XHdcp1x *InstancePtr)
 This function resets an HDCP interface. More...
 
int XHdcp1x_Enable (XHdcp1x *InstancePtr)
 This function enables an HDCP interface. More...
 
int XHdcp1x_Disable (XHdcp1x *InstancePtr)
 This function disables an HDCP interface. More...
 
int XHdcp1x_SetPhysicalState (XHdcp1x *InstancePtr, int IsUp)
 This function updates the state of the underlying physical interface. More...
 
int XHdcp1x_SetLaneCount (XHdcp1x *InstancePtr, int LaneCount)
 This function sets the lane count of a hdcp interface. More...
 
int XHdcp1x_Authenticate (XHdcp1x *InstancePtr)
 This function initiates authentication of an HDCP interface. More...
 
int XHdcp1x_ReadDownstream (XHdcp1x *InstancePtr)
 This function initiates downstream read of READY bit and consequently the second part of Repeater authentication. More...
 
int XHdcp1x_IsInProgress (const XHdcp1x *InstancePtr)
 This function queries an interface to determine if authentication is in progress. More...
 
int XHdcp1x_IsAuthenticated (const XHdcp1x *InstancePtr)
 This function queries an interface to determine if it has successfully completed authentication. More...
 
int XHdcp1x_IsInComputations (const XHdcp1x *InstancePtr)
 This function queries an interface to determine if it is in the state of computations or not. More...
 
int XHdcp1x_IsInWaitforready (const XHdcp1x *InstancePtr)
 This function queries an interface to determine if it is in the wait-for-ready state or not. More...
 
int XHdcp1x_IsDwnstrmCapable (const XHdcp1x *InstancePtr)
 This function queries the device connected to the downstream interface to determine if it supports hdcp or not. More...
 
int XHdcp1x_IsEnabled (const XHdcp1x *InstancePtr)
 This function queries an interface to determine if it is enabled. More...
 
u64 XHdcp1x_GetEncryption (const XHdcp1x *InstancePtr)
 This function retrieves the current encryption map of the video streams traversing an hdcp interface. More...
 
int XHdcp1x_IsEncrypted (const XHdcp1x *InstancePtr)
 This function determines if the video stream is encrypted. More...
 
int XHdcp1x_EnableEncryption (XHdcp1x *InstancePtr, u64 Map)
 This function enables encryption on a series of streams within an HDCP interface. More...
 
int XHdcp1x_DisableEncryption (XHdcp1x *InstancePtr, u64 Map)
 This function disables encryption on a series of streams within an HDCP interface. More...
 
int XHdcp1x_SetKeySelect (XHdcp1x *InstancePtr, u8 KeySelect)
 This function sets the key selection vector that is to be used by the HDCP cipher. More...
 
void XHdcp1x_HandleTimeout (void *InstancePtr)
 This function handles a timeout on an HDCP interface. More...
 
void XHdcp1x_SetDebugPrintf (XHdcp1x_Printf PrintfFunc)
 This function sets the debug printf function for the module. More...
 
void XHdcp1x_SetDebugLogMsg (XHdcp1x_LogMsg LogFunc)
 This function sets the debug log message function for the module. More...
 
void XHdcp1x_SetKsvRevokeCheck (XHdcp1x_KsvRevokeCheck RevokeCheckFunc)
 This function sets the KSV revocation list check function for the module. More...
 
void XHdcp1x_SetTimerStart (XHdcp1x *InstancePtr, XHdcp1x_TimerStart TimerStartFunc)
 This function sets timer start function for the module. More...
 
void XHdcp1x_SetTimerStop (XHdcp1x *InstancePtr, XHdcp1x_TimerStop TimerStopFunc)
 This function sets timer stop function for the module. More...
 
void XHdcp1x_SetTimerDelay (XHdcp1x *InstancePtr, XHdcp1x_TimerDelay TimerDelayFunc)
 This function sets timer busy delay function for the module. More...
 
u32 XHdcp1x_GetDriverVersion (void)
 This function retrieves the version of the HDCP driver software. More...
 
u32 XHdcp1x_GetVersion (const XHdcp1x *InstancePtr)
 This function retrieves the cipher version of an HDCP interface. More...
 
void XHdcp1x_Info (const XHdcp1x *InstancePtr)
 This function performs a debug display of an HDCP instance. More...
 
void XHdcp1x_ProcessAKsv (XHdcp1x *InstancePtr)
 This function processes the AKsv. More...
 
void * XHdcp1x_GetTopology (XHdcp1x *InstancePtr)
 This function returns a pointer to the downstream Topology structure. More...
 
void XHdcp1x_DisableBlank (XHdcp1x *InstancePtr)
 This function disables the blank output for the cipher. More...
 
void XHdcp1x_EnableBlank (XHdcp1x *InstancePtr)
 This function enables the blank output for the cipher. More...
 
u8 * XHdcp1x_GetTopologyKSVList (XHdcp1x *InstancePtr)
 This function returns the value of KSV List read in the downstream interface of the repeater topology. More...
 
u8 * XHdcp1x_GetTopologyBKSV (XHdcp1x *InstancePtr)
 This function returns the value of KSV of the device attached to the downstream interface of the repeater. More...
 
void XHdcp1x_SetTopologyField (XHdcp1x *InstancePtr, XHdcp1x_TopologyField Field, u8 Value)
 This function is used to set various fields inside the topology structure. More...
 
u32 XHdcp1x_GetTopologyField (XHdcp1x *InstancePtr, XHdcp1x_TopologyField Field)
 This function is used to get various fields inside the topology structure. More...
 
int XHdcp1x_IsRepeater (XHdcp1x *InstancePtr)
 This function return if the HDCP interface is a repeater in case of Rx or is connected to a repeater in case of Tx. More...
 
void XHdcp1x_SetTopology (XHdcp1x *InstancePtr, const XHdcp1x_RepeaterExchange *TopologyPtr)
 This function sets the RepeaterInfo value int the HDCP RX instance. More...
 
void XHdcp1x_SetTopologyKSVList (XHdcp1x *InstancePtr, u8 *ListPtr, u32 ListSize)
 This function sets the KSVList value(s) in the HDCP RX KSV Fifo register space for the upstream interface to read. More...
 
void XHdcp1x_SetTopologyUpdate (XHdcp1x *InstancePtr)
 This function does the necessary actions to update HDCP after the topology has been set. More...
 
void XHdcp1x_SetHdmiMode (XHdcp1x *InstancePtr, u8 Value)
 This function set the HDMI_MODE in the BStatus register of the HDMI DDC space. More...
 

Variables

XHdcp1x_Printf XHdcp1xDebugPrintf = NULL
 Instance of function interface used for debug print statement. More...
 
XHdcp1x_LogMsg XHdcp1xDebugLogMsg = NULL
 Instance of function interface used for debug log message statement. More...
 
XHdcp1x_KsvRevokeCheck XHdcp1xKsvRevokeCheck = NULL
 Instance of function interface used for checking a specific KSV against the platforms revocation list. More...