hdcp1x: xhdcp1x.h File Reference

| hdcp1x Xilinx SDK Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List

Data Structures | Macros | Typedefs | Enumerations | Functions
xhdcp1x.h File Reference

## Data Structures
struct | XHdcp1x_Config
| This typedef contains configuration information for the HDCP core. More...
struct | XHdcp1x_CipherStats
| This typedef defines the statistics collected by a cipher instance. More...
struct | XHdcp1x_Cipher
| This typedef contains an instance of the HDCP cipher core. More...
struct | XHdcp1x_PortStats
| This typedef defines the statistics collected by a port instance. More...
struct | XHdcp1x_RepeaterExchange
| This typedef contains an instance of the HDCP Repeater values to exchanged between HDCP Tx and HDCP Rx. More...
struct | XHdcp1x_PortStruct
| This typedef contains an instance of the HDCP port. More...
struct | XHdcp1x_TxStats
| This typedef defines the statistics collected transmit port instance. More...
struct | XHdcp1x_RxStats
| This typedef defines the statistics collected receive port instance. More...
struct | XHdcp1x_RxEncyptionWatch
| This typedef is used to keep a tab on the changes in the encryption status of the HDCP receiver, depending on whether the incoming data non the receiver is HDCP protected or not. More...
struct | XHdcp1x_Tx
| This typedef contains the transmit HDCP interface. More...
struct | XHdcp1x_Rx
| This typedef contains the receive HDCP interface. More...
struct | XHdcp1x
| This typedef contains an instance of an HDCP interface. More...

## Macros
#define | XHDCP1X_H
| < Prevent circular inclusions by using protection macros More...
#define | XHDCP1X_KSV_SIZE 5
| Size of each hdcp 1.4 Public Key in bytes. More...
#define | XHDCP1X_RPTR_MAX_CASCADE 4
| Maximum depth that the Repeater can support on the downstream interface. More...
#define | XHDCP1X_RPTR_MAX_DEVS_COUNT 32
| Maximum devices that can be cascaded to the Repeater. More...
#define | XHdcp1x_SetCallBack XHdcp1x_SetCallback
| Alternative name for the function to set callback for HDCP functions. More...
#define | UNUSED(x) ((void)x)
| Used to remove warnings for unused variables. More...
#define | XHDCP1X_ADDITIONAL_DEBUG 0
| Adds extra functions for additional debugging. More...

## Typedefs
typedef void(* | XHdcp1x_Callback )(void *CallbackRef)
| This typedef defines the callback interface that is to be used for interrupts within this driver. More...
typedef void(* | XHdcp1x_Printf )(const char *fmt,...)
| This typedef defines the function interface that is to be used for debug print statements within this driver. More...
typedef void(* | XHdcp1x_LogMsg )(const char *fmt,...)
| This typedef defines the function interface that is to be used for debug log message statements within this driver. More...
typedef int(* | XHdcp1x_RunDdcHandler )(u8 DeviceAddress, u16 ByteCount, u8 *BufferPtr, u8 Stop, void *RefPtr)
| Callback type used for calling DDC read and write functions. More...
typedef void(* | XHdcp1x_SetDdcHandler )(void *HandlerRef, u32 Data)
| This typedef defines the function interface that is to be used for setting the DDC handler for HDMI implementation of HDCP functionality over HDMI within this driver. More...
typedef u32(* | XHdcp1x_GetDdcHandler )(void *HandlerRef)
| This typedef defines the function interface that is to be used to get the DDC handler for implementation of HDCP functionality over HDMI within this driver. More...
typedef u64 | XHdcp1x_Ksv
| This typedef defines a memory to store a Key Selection Vector (KSV) More...
typedef struct XHdcp1x_PortStruct | XHdcp1x_Port
| This typedef contains an instance of the HDCP port. More...
typedef int(* | XHdcp1x_TimerStart )(void *InstancePtr, u16 TmoInMs)
| This typedef defines the function interface that is to be used for starting a one shot timer on behalf of an HDCP interface within the underlying platform. More...
typedef int(* | XHdcp1x_TimerStop )(void *InstancePtr)
| This typedef defines the function interface that is to be used for stopping a timer on behalf of an HDCP interface. More...
typedef int(* | XHdcp1x_TimerDelay )(void *InstancePtr, u16 DelayInMs)
| This typedef defines the function interface that is to be used for performing a busy delay on behalf of an HDCP interface. More...
typedef int(* | XHdcp1x_KsvRevokeCheck )(const XHdcp1x *InstancePtr, u64 Ksv)
| This typedef defines the function interface that is to be used for checking a specific KSV against the platforms revocation list. More...

## Enumerations
enum | XHdcp1x_Rx_StateType
| This enumerates the State Types for HDCP Receiver state machine. More...
enum | XHdcp1x_Tx_StateType
| This enumerates the Event Types for HDCP Transmitter state machine. More...
enum | XHdcp1x_HandlerType
| These constants are used to identify callback functions. More...
enum | XHdcp1x_RepeaterStateMachineHandlerType
| This enumerates the call back for the HDCP Repeater Tx state machine. More...
enum | XHdcp1x_TopologyField
| These constants are used to identify fields inside the topology structure. More...

## Functions
XHdcp1x_Config * | XHdcp1x_LookupConfig (u16 DeviceId)
| This function returns a reference to an XHdcp1x_Config structure based on specified device ID. More...
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_SelfTest (XHdcp1x *InstancePtr)
| This function self tests an HDCP interface. 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...
int | XHdcp1x_SetCallback (XHdcp1x *InstancePtr, XHdcp1x_HandlerType HandlerType, void *CallbackFunc, void *CallbackRef)
| This function installs callback functions for the given HandlerType. More...
void | XHdcp1x_CipherIntrHandler (void *InstancePtr)
| This function is the cipher interrupt handler for the HDCP module. More...
void | XHdcp1x_PortIntrHandler (void *InstancePtr, u32 IntCause)
| This function is the port interrupt handler for the HDCP module. 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...
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...
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...
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...