hdcp22_tx
Vitis Drivers API Documentation
xhdcp22_tx.c File Reference

Macros

#define XHDCP22_TX_INVALID_RXSTATUS   0xFFFF
 RxStatus value used to force re-authentication. More...
 
#define XHDCP22_TX_CASE_TO_STR_PRE(pre, arg)   case pre ## arg : strcpy(str, #arg); break;
 Case replacement to copy a case Id to a string with a pre-lead. More...
 

Typedefs

typedef XHdcp22_Tx_StateType XHdcp22Tx_StateFuncType (XHdcp22_Tx *InstancePtr)
 Pointer to the state handling functions. More...
 
typedef void XHdcp22_Tx_TransitionFuncType (XHdcp22_Tx *InstancePtr)
 Pointer to the transition functions going from one state to the next. More...
 

Functions

int XHdcp22Tx_CfgInitialize (XHdcp22_Tx *InstancePtr, XHdcp22_Tx_Config *CfgPtr, UINTPTR EffectiveAddr)
 This function initializes the HDCP22 TX core. More...
 
void XHdcp22Tx_LoadLc128 (XHdcp22_Tx *InstancePtr, const u8 *Lc128Ptr)
 This function is used to load the Lc128 value by copying the contents of the array referenced by Lc128Ptr into the cipher. More...
 
int XHdcp22Tx_LoadRevocationTable (XHdcp22_Tx *InstancePtr, const u8 *SrmPtr)
 This function is used to load the system renewability messages (SRMs) which carries the Receiver ID revocation list. More...
 
u8 XHdcp22Tx_IsDeviceRevoked (XHdcp22_Tx *InstancePtr, u8 *RecvIdPtr)
 This function searches for the specified ReceiverID in the revocation list. More...
 
XHdcp22_Tx_RevocationListXHdcp22Tx_GetRevocationReceiverIdList (XHdcp22_Tx *InstancePtr)
 This function returns a pointer to the Revocation Receiver ID list. More...
 
XHdcp22_Tx_TopologyXHdcp22Tx_GetTopology (XHdcp22_Tx *InstancePtr)
 This function returns a pointer to the downstream topology structure. More...
 
u8 * XHdcp22Tx_GetTopologyReceiverIdList (XHdcp22_Tx *InstancePtr)
 This function returns a pointer to the ReceiverID list in the repeater topology structure. More...
 
u32 XHdcp22Tx_GetTopologyField (XHdcp22_Tx *InstancePtr, XHdcp22_Tx_TopologyField Field)
 This function is used to get various fields inside the topology structure. More...
 
void XHdcp22Tx_SetContentStreamType (XHdcp22_Tx *InstancePtr, XHdcp22_Tx_ContentStreamType StreamType)
 This function sets the Content Stream Type. More...
 
u32 XHdcp22Tx_GetVersion (XHdcp22_Tx *InstancePtr)
 This function reads the version. More...
 
int XHdcp22Tx_Authenticate (XHdcp22_Tx *InstancePtr)
 This function is a called to start authentication. More...
 
int XHdcp22Tx_Poll (XHdcp22_Tx *InstancePtr)
 This function is a executed every time to trigger the state machine. More...
 
int XHdcp22Tx_Reset (XHdcp22_Tx *InstancePtr)
 This function resets the state machine. More...
 
int XHdcp22Tx_Enable (XHdcp22_Tx *InstancePtr)
 This function enables the state machine and acts as a resume. More...
 
int XHdcp22Tx_Disable (XHdcp22_Tx *InstancePtr)
 This function disables the state machine and acts as a pause. More...
 
int XHdcp22Tx_EnableEncryption (XHdcp22_Tx *InstancePtr)
 This function enables HDMI stream encryption by enabling the cipher. More...
 
int XHdcp22Tx_DisableEncryption (XHdcp22_Tx *InstancePtr)
 This function disables HDMI stream encryption by disabling the cipher. More...
 
void XHdcp22Tx_EnableBlank (XHdcp22_Tx *InstancePtr)
 This function enables the blank output for the cipher. More...
 
void XHdcp22Tx_DisableBlank (XHdcp22_Tx *InstancePtr)
 This function disables the blank output for the cipher. More...
 
u8 XHdcp22Tx_IsRepeater (XHdcp22_Tx *InstancePtr)
 This function returns the current repeater mode status. More...
 
void XHdcp22Tx_SetRepeater (XHdcp22_Tx *InstancePtr, u8 Set)
 This function sets the repeater mode status. More...
 
u8 XHdcp22Tx_IsEnabled (XHdcp22_Tx *InstancePtr)
 This function returns the current enabled state. More...
 
u8 XHdcp22Tx_IsEncryptionEnabled (XHdcp22_Tx *InstancePtr)
 This function returns the current encryption enabled state. More...
 
u8 XHdcp22Tx_IsInProgress (XHdcp22_Tx *InstancePtr)
 This function returns the current progress state. More...
 
u8 XHdcp22Tx_IsAuthenticated (XHdcp22_Tx *InstancePtr)
 This function returns the current authenticated state. More...
 
u8 XHdcp22Tx_IsDwnstrmCapable (XHdcp22_Tx *InstancePtr)
 This function checks if the downstream device HDCP2Version register is set. More...
 
int XHdcp22Tx_SetCallback (XHdcp22_Tx *InstancePtr, XHdcp22_Tx_HandlerType HandlerType, void *CallbackFunc, void *CallbackRef)
 This function installs callback functions for the given HandlerType: More...
 
XTmrCtr * XHdcp22Tx_GetTimer (XHdcp22_Tx *InstancePtr)
 This function returns the pointer to the internal timer control instance needed for connecting the timer interrupt to an interrupt controller. More...
 
void XHdcp22Tx_SetMessagePollingValue (XHdcp22_Tx *InstancePtr, u32 PollingValue)
 This function can be used to change the polling value. More...
 
int XHdcp22Tx_ClearPairingInfo (XHdcp22_Tx *InstancePtr)
 This function clear the global pairing info structure, so every HDCP2.2 receiver will have to go through the 'no stored km' sequence to authenticate. More...
 
void XHdcp22Tx_RevokeReceiverId (XHdcp22_Tx *InstancePtr, u8 *ReceiverIdPtr)
 This function adds a ReceiverID to RevocationList. More...
 
void XHdcp22Tx_LogReset (XHdcp22_Tx *InstancePtr, u8 Verbose)
 This function clears the log pointers. More...
 
u32 XHdcp22Tx_LogGetTimeUSecs (XHdcp22_Tx *InstancePtr)
 This function returns the time expired since a log reset was called. More...
 
void XHdcp22Tx_LogWr (XHdcp22_Tx *InstancePtr, XHdcp22_Tx_LogEvt Evt, u16 Data)
 This function writes HDCP TX logs into buffer. More...
 
XHdcp22_Tx_LogItemXHdcp22Tx_LogRd (XHdcp22_Tx *InstancePtr)
 This function provides the log information from the log buffer. More...
 
void XHdcp22Tx_LogDisplay (XHdcp22_Tx *InstancePtr)
 This function prints the content of log buffer. More...
 
void XHdcp22Tx_Info (XHdcp22_Tx *InstancePtr)
 This function prints the state machine information. More...
 

Variables

XHdcp22Tx_StateFuncType *const XHdcp22_Tx_StateTable [XHDCP22_TX_NUM_STATES]
 This table contains the function pointers for all possible states. More...