| v_hdmirxss1 Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List
- Examples

Data Structures | Macros | Typedefs
xv_hdmirxss1.h File Reference

## Overview

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

HDMI RX Subsystem Overview

Video 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

Video 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_HdmiRxSs1_Log
| This typedef contains the logging mechanism for debug. More...
struct | XV_HdmiRxSs1_SubCore
| Sub-Core Configuration Table. More...
struct | XV_HdmiRxSs1_Config
| Video Processing Subsystem configuration structure. More...
struct | XV_HdmiRxSs1
| The XVprocss driver instance data. More...
struct | XV_HdmiRxSs1_DynHDR_Info
| This typedef contains HDMI RX stream specific Dynamic HDR info. More...

## Macros
#define | HDMIRXSS1_H
| < prevent circular inclusions by using protection macros More...

## Typedefs
typedef void(* | XV_HdmiRxSs1_Callback )(void *CallbackRef)
| Callback type for interrupt. More...
typedef u64(* | XV_HdmiRxSs1_LogCallback )(void *CallbackRef)
| Callback type for interrupt. More...

## Handler Types
#define | ANSI_COLOR_RED "\x1b[31m"
#define | ANSI_COLOR_YELLOW "\x1b[33m"
#define | ANSI_COLOR_RESET "\x1b[0m"
enum | XV_HdmiRxSs1_LogEvent { XV_HDMIRXSS1_LOG_EVT_NONE = 1, XV_HDMIRXSS1_LOG_EVT_HDMIRX1_INIT, XV_HDMIRXSS1_LOG_EVT_VTC_INIT, XV_HDMIRXSS1_LOG_EVT_HDCPTIMER_INIT, XV_HDMIRXSS1_LOG_EVT_HDCP14_INIT, XV_HDMIRXSS1_LOG_EVT_HDCP22_INIT, XV_HDMIRXSS1_LOG_EVT_START, XV_HDMIRXSS1_LOG_EVT_STOP, XV_HDMIRXSS1_LOG_EVT_RESET, XV_HDMIRXSS1_LOG_EVT_CONNECT, XV_HDMIRXSS1_LOG_EVT_DISCONNECT, XV_HDMIRXSS1_LOG_EVT_LINKSTATUS, XV_HDMIRXSS1_LOG_EVT_STREAMUP, XV_HDMIRXSS1_LOG_EVT_STREAMDOWN, XV_HDMIRXSS1_LOG_EVT_STREAMINIT, XV_HDMIRXSS1_LOG_EVT_SETSTREAM, XV_HDMIRXSS1_LOG_EVT_SETSTREAM_ERR, XV_HDMIRXSS1_LOG_EVT_REFCLOCKCHANGE, XV_HDMIRXSS1_LOG_EVT_HDCP14, XV_HDMIRXSS1_LOG_EVT_HDCP22, XV_HDMIRXSS1_LOG_EVT_HDMIMODE, XV_HDMIRXSS1_LOG_EVT_DVIMODE, XV_HDMIRXSS1_LOG_EVT_SYNCLOSS, XV_HDMIRXSS1_LOG_EVT_PIX_REPEAT_ERR, XV_HDMIRXSS1_LOG_EVT_SYNCEST, XV_HDMIRXSS1_LOG_EVT_VICERROR, XV_HDMIRXSS1_LOG_EVT_LNKRDYERROR, XV_HDMIRXSS1_LOG_EVT_VIDRDYERROR, XV_HDMIRXSS1_LOG_EVT_SKEWLOCKERROR , XV_HDMIRXSS1_LOG_EVT_DUMMY }
enum | XV_HdmiRxSs1_HdcpProtocol { XV_HDMIRXSS1_HDCP_NONE, XV_HDMIRXSS1_HDCP_14, XV_HDMIRXSS1_HDCP_22 , XV_HDMIRXSS1_HDCP_NOUSERPREF }
| These constants specify the HDCP protection schemes. More...
enum | XV_HdmiRxSs1_HandlerType { XV_HDMIRXSS1_HANDLER_CONNECT = 1, XV_HDMIRXSS1_HANDLER_BRDGOVERFLOW, XV_HDMIRXSS1_HANDLER_AUX, XV_HDMIRXSS1_HANDLER_AUD, XV_HDMIRXSS1_HANDLER_LNKSTA, XV_HDMIRXSS1_HANDLER_DDC, XV_HDMIRXSS1_HANDLER_STREAM_DOWN, XV_HDMIRXSS1_HANDLER_STREAM_INIT, XV_HDMIRXSS1_HANDLER_STREAM_UP, XV_HDMIRXSS1_HANDLER_PHY_RESET, XV_HDMIRXSS1_HANDLER_FRL_CONFIG, XV_HDMIRXSS1_HANDLER_FRL_START, XV_HDMIRXSS1_HANDLER_TMDS_CONFIG, XV_HDMIRXSS1_HANDLER_HDCP, XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATED, XV_HDMIRXSS1_HANDLER_HDCP_UNAUTHENTICATED, XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATION_REQUEST, XV_HDMIRXSS1_HANDLER_HDCP_STREAM_MANAGE_REQUEST, XV_HDMIRXSS1_HANDLER_HDCP_TOPOLOGY_UPDATE, XV_HDMIRXSS1_HANDLER_HDCP_ENCRYPTION_UPDATE, XV_HDMIRXSS1_HANDLER_TMDS_CLK_RATIO, XV_HDMIRXSS1_HANDLER_VIC_ERROR, XV_HDMIRXSS1_HANDLER_VFP_CH, XV_HDMIRXSS1_HANDLER_VRR_RDY, XV_HDMIRXSS1_HANDLER_VID_RDY_ERR, XV_HDMIRXSS1_HANDLER_DYN_HDR, XV_HDMIRXSS1_HANDLER_DSC_STRM_CH, XV_HDMIRXSS1_HANDLER_DSC_PKT_ERR, XV_HDMIRXSS1_HANDLER_DSC_STS_UPDT }
| These constants specify different types of handler and used to differentiate interrupt requests from peripheral. More...

## HDMI RX SS Dynamic HDR Error type
enum | XV_HdmiRxSs1_DynHdrErrType
XV_HdmiRxSs1_Config * | XV_HdmiRxSs1_LookupConfig (u32 DeviceId)
| This function looks for the device configuration based on the unique device ID. More...
void | XV_HdmiRxSs1_SetUserTimerHandler (XV_HdmiRxSs1 *InstancePtr, XVidC_DelayHandler CallbackFunc, void *CallbackRef)
| This function installs a custom delay/sleep function to be used by the XV_HdmiRxSs1 driver. More...
void | XV_HdmiRxSS1_HdmiRxIntrHandler (XV_HdmiRxSs1 *InstancePtr)
| This function calls the interrupt handler for HDMI RX. More...
int | XV_HdmiRxSs1_CfgInitialize (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_Config *CfgPtr, UINTPTR EffectiveAddr)
| This function initializes the video subsystem and included sub-cores. More...
void | XV_HdmiRxSS1_SetAppVersion (XV_HdmiRxSs1 *InstancePtr, u8 maj, u8 min)
| This function will set the major and minor application version in RXSs struct. More...
void | XV_HdmiRxSs1_Start (XV_HdmiRxSs1 *InstancePtr)
| This function starts the HDMI RX subsystem including all sub-cores that are included in the processing pipeline for a given use-case. More...
void | XV_HdmiRxSs1_Stop (XV_HdmiRxSs1 *InstancePtr)
| This function stops the HDMI RX subsystem including all sub-cores Stop the video pipe starting from front to back. More...
void | XV_HdmiRxSs1_Reset (XV_HdmiRxSs1 *InstancePtr)
| This function resets the video subsystem sub-cores. More...
void | XV_HdmiRxSs1_RXCore_VRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
| This function asserts or releases the Internal Video reset of the HDMI subcore within the subsystem. More...
void | XV_HdmiRxSs1_RXCore_LRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
| This function asserts or releases the Internal Link reset of the HDMI subcore within the subsystem. More...
void | XV_HdmiRxSs1_VRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
| This function asserts or releases the video reset of other blocks within the subsystem. More...
void | XV_HdmiRxSs1_SYSRST (XV_HdmiRxSs1 *InstancePtr, u8 Reset)
| This function asserts or releases the system reset of other blocks within the subsystem. More...
int | XV_HdmiRxSs1_SetCallback (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_HandlerType HandlerType, void *CallbackFunc, void *CallbackRef)
| This function installs an asynchronous callback function for the given HandlerType: More...
int | XV_HdmiRxSs1_SetLogCallback (XV_HdmiRxSs1 *InstancePtr, u64 *CallbackFunc, void *CallbackRef)
| This function installs an asynchronous callback function for the LogWrite API: More...
void | XV_HdmiRxSs1_SetEdidParam (XV_HdmiRxSs1 *InstancePtr, u8 *EdidDataPtr, u16 Length)
| This function Sets the EDID parameters in the HDMI RX SS struct. More...
void | XV_HdmiRxSs1_LoadDefaultEdid (XV_HdmiRxSs1 *InstancePtr)
| This function loads the default EDID to the HDMI RX. More...
void | XV_HdmiRxSs1_LoadEdid (XV_HdmiRxSs1 *InstancePtr, u8 *EdidDataPtr, u16 Length)
| This function loads the default EDID to the HDMI RX. More...
void | XV_HdmiRxSs1_SetHpd (XV_HdmiRxSs1 *InstancePtr, u8 Value)
| This function sets the HPD on the HDMI RX. More...
void | XV_HdmiRxSs1_ToggleHpd (XV_HdmiRxSs1 *InstancePtr)
| This function toggles the HPD on the HDMI RX. More...
XHdmiC_Aux * | XV_HdmiRxSs1_GetAuxiliary (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS Aux structure. More...
XHdmiC_AVI_InfoFrame * | XV_HdmiRxSs1_GetAviInfoframe (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS AVI InfoFrame structure. More...
XHdmiC_AudioInfoFrame * | XV_HdmiRxSs1_GetAudioInfoframe (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS Audio InfoFrame structure. More...
XHdmiC_VSIF * | XV_HdmiRxSs1_GetVSIF (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS Vendor Specific InfoFrame structure. More...
XHdmiC_DRMInfoFrame * | XV_HdmiRxSs1_GetDrmInfoframe (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI 2.1 RX SS DRM InfoFrame structure. More...
XHdmiC_GeneralControlPacket * | XV_HdmiRxSs1_GetGCP (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS General Control Packet structure. More...
u32 | XV_HdmiRxSs1_SetStream (XV_HdmiRxSs1 *InstancePtr, u32 Clock, u32 LineRate)
| This function set HDMI RX susbsystem stream parameters. More...
XVidC_VideoStream * | XV_HdmiRxSs1_GetVideoStream (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS video stream. More...
u8 | XV_HdmiRxSs1_GetVideoIDCode (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS video Identification code. More...
u8 | XV_HdmiRxSs1_GetVideoStreamType (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS video stream type. More...
u8 | XV_HdmiRxSs1_GetTransportMode (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS video stream type. More...
u8 | XV_HdmiRxSs1_GetVideoStreamScramblingFlag (XV_HdmiRxSs1 *InstancePtr)
| This function returns the pointer to HDMI RX SS video stream type. More...
u8 | XV_HdmiRxSs1_GetAudioChannels (XV_HdmiRxSs1 *InstancePtr)
| This function returns the HDMI RX SS number of active audio channels. More...
XV_HdmiRx1_AudioFormatType | XV_HdmiRxSs1_GetAudioFormat (XV_HdmiRxSs1 *InstancePtr)
| This function returns the HDMI RX SS audio format. More...
u32 | XV_HdmiRxSs1_GetAudioAcrCtsVal (XV_HdmiRxSs1 *InstancePtr)
| This function returns the HDMI RX SS CTS value. More...
u32 | XV_HdmiRxSs1_GetAudioAcrNVal (XV_HdmiRxSs1 *InstancePtr)
| This function returns the HDMI RX SS CTS value. More...
void | XV_HdmiRxSs1_RefClockChangeInit (XV_HdmiRxSs1 *InstancePtr)
| This function is called when HDMI RX SS TMDS clock changes. More...
void | XV_HdmiRxSs1_ReportInfo (XV_HdmiRxSs1 *InstancePtr)
void | XV_HdmiRxSs1_RegisterDebug (XV_HdmiRxSs1 *InstancePtr)
| This function prints out the sub-core register dump. More...
int | XV_HdmiRxSs1_IsStreamUp (XV_HdmiRxSs1 *InstancePtr)
| This function checks if the video stream is up. More...
int | XV_HdmiRxSs1_IsStreamConnected (XV_HdmiRxSs1 *InstancePtr)
| This function checks if the interface is connected. More...
void | XV_HdmiRxSs1_SetDefaultPpc (XV_HdmiRxSs1 *InstancePtr, u8 Id)
| This function will set the default in HDF. More...
void | XV_HdmiRxSs1_SetPpc (XV_HdmiRxSs1 *InstancePtr, u8 Id, u8 Ppc)
| This function will set PPC specified by user. More...
XVidC_PixelsPerClock | XV_HdmiRxSs1_GetCorePpc (XV_HdmiRxSs1 *InstancePtr)
| This function returns core ppc value. More...
void | XV_HdmiRxSs1_AudioMute (XV_HdmiRxSs1 *InstancePtr, u8 Enable)
| This function set HDMI RX audio parameters. More...
void | XV_HdmiRxSs1_VfpControl (XV_HdmiRxSs1 *InstancePtr, u8 Enable)
| This function controls HDMI RX VFP event enable/disable. More...
XV_HdmiC_VrrInfoFrame * | XV_HdmiRxSs1_GetVrrIf (XV_HdmiRxSs1 *InstancePtr)
| This function returns VRR infoframe type. More...
void | XV_HdmiRxSs1_DynHDR_DM_Enable (XV_HdmiRxSs1 *InstancePtr)
| This function enables the Data mover in Dynamic HDR. More...
void | XV_HdmiRxSs1_DynHDR_DM_Disable (XV_HdmiRxSs1 *InstancePtr)
| This function disables the Data mover in Dynamic HDR. More...
void | XV_HdmiRxSs1_DynHDR_SetAddr (XV_HdmiRxSs1 *InstancePtr, u64 Addr)
| This function sets the buffer address for Dyanamic HDR. More...
void | XV_HdmiRxSs1_DynHDR_GetInfo (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_DynHDR_Info *RxDynInfoPtr)
| This function sets the buffer address for Dyanamic HDR. More...
u32 | XV_HdmiRxSs1_DSC_IsEnableStream (XV_HdmiRxSs1 *InstancePtr)
int | XV_HdmiRxSs1_DSC_SetDecodeFail (XV_HdmiRxSs1 *InstancePtr)
int | XV_HdmiRxSs1_DSC_SetDscFrlMax (XV_HdmiRxSs1 *InstancePtr)
void | XV_HdmiRxSs1_ReportCoreInfo (XV_HdmiRxSs1 *InstancePtr)
| This function reports list of cores included in Video Processing Subsystem. More...
void | XV_HdmiRxSs1_DebugInfo (XV_HdmiRxSs1 *InstancePtr)
| This function prints debug information on STDIO/UART console. More...
void | XV_HdmiRxSs1_DdcRegDump (XV_HdmiRxSs1 *InstancePtr)
| This function prints out RX's SCDC registers and values on STDIO/UART console. More...
void | XV_HdmiRxSs1_ReportTiming (XV_HdmiRxSs1 *InstancePtr)
| This function prints the HDMI RX SS timing information. More...
void | XV_HdmiRxSs1_ReportLinkQuality (XV_HdmiRxSs1 *InstancePtr)
| This function reports the link quality based on the link error counter. More...
void | XV_HdmiRxSs1_ReportAudio (XV_HdmiRxSs1 *InstancePtr)
| This function prints the HDMI RX SS audio information. More...
void | XV_HdmiRxSs1_ReportInfoFrame (XV_HdmiRxSs1 *InstancePtr)
| This function prints the HDMI RX SS audio information. More...
void | XV_HdmiRxSs1_ReportSubcoreVersion (XV_HdmiRxSs1 *InstancePtr)
| This function prints the HDMI RX SS subcore versions. More...
void | XV_HdmiRxSs1_ReportDRMInfo (XV_HdmiRxSs1 *InstancePtr)
| This function prints the HDMI 2.1 RX SS static HDR infoframe information. More...
void | XV_HdmiRxSs1_LogReset (XV_HdmiRxSs1 *InstancePtr)
| This function will reset the driver's logging mechanism. More...
void | XV_HdmiRxSs1_LogWrite (XV_HdmiRxSs1 *InstancePtr, XV_HdmiRxSs1_LogEvent Evt, u8 Data)
| This function will insert an event in the driver's logginc mechanism. More...
u16 | XV_HdmiRxSs1_LogRead (XV_HdmiRxSs1 *InstancePtr)
| This function will read the last event from the log. More...
void | XV_HdmiRxSs1_LogDisplay (XV_HdmiRxSs1 *InstancePtr)
| This function will print the entire log. More...
void | XV_HdmiRxSs1_FrlLinkRetrain (XV_HdmiRxSs1 *InstancePtr, u8 LtpThreshold, XV_HdmiRx1_FrlLtp DefaultLtp)
void | XV_HdmiRxSs1_FrlModeEnable (XV_HdmiRxSs1 *InstancePtr, u8 LtpThreshold, XV_HdmiRx1_FrlLtp DefaultLtp, u8 FfeSuppFlag)
void | XV_HdmiRxSs1_SetFrlFltNoTimeout (XV_HdmiRxSs1 *InstancePtr)
void | XV_HdmiRxSs1_ClearFrlFltNoTimeout (XV_HdmiRxSs1 *InstancePtr)

## Macro Definition Documentation

#define HDMIRXSS1_H

< prevent circular inclusions by using protection macros

## Typedef Documentation

typedef void(* XV_HdmiRxSs1_Callback)(void *CallbackRef)

Callback type for interrupt.

Parameters

  CallbackRef | is 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_HdmiRxSs1_LogCallback)(void *CallbackRef)

Callback type for interrupt.

Parameters

  CallbackRef | is 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.

## Enumeration Type Documentation

enum XV_HdmiRxSs1_HandlerType

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

Enumerator
XV_HDMIRXSS1_HANDLER_CONNECT | Handler for connect event.
XV_HDMIRXSS1_HANDLER_BRDGOVERFLOW | Handler for bridge fifo overflow event.
XV_HDMIRXSS1_HANDLER_AUX | Handler for AUX peripheral event.
XV_HDMIRXSS1_HANDLER_AUD | Handler for AUD peripheral event.
XV_HDMIRXSS1_HANDLER_LNKSTA | Handler for LNKSTA peripheral event.
XV_HDMIRXSS1_HANDLER_DDC | Handler for DDC peripheral event.
XV_HDMIRXSS1_HANDLER_STREAM_DOWN | Handler for stream down event.
XV_HDMIRXSS1_HANDLER_STREAM_INIT | Handler for stream init event.
XV_HDMIRXSS1_HANDLER_STREAM_UP | Handler for stream up event.
XV_HDMIRXSS1_HANDLER_PHY_RESET | Handler for Phy Reset.
XV_HDMIRXSS1_HANDLER_FRL_CONFIG | Handler for FRL Config.
XV_HDMIRXSS1_HANDLER_FRL_START | Handler for FRL Start.
XV_HDMIRXSS1_HANDLER_TMDS_CONFIG | Handler for TMDS Config.
XV_HDMIRXSS1_HANDLER_HDCP | Handler for HDCP 1.4 event.
XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATED | Handler for HDCP authenticated event.
XV_HDMIRXSS1_HANDLER_HDCP_UNAUTHENTICATED | Handler for HDCP unauthenticated event.
XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATION_REQUEST | Handler for HDCP authentication request event.
XV_HDMIRXSS1_HANDLER_HDCP_STREAM_MANAGE_REQUEST | Handler for HDCP stream manage request event.
XV_HDMIRXSS1_HANDLER_HDCP_TOPOLOGY_UPDATE | Handler for HDCP topology update event.
XV_HDMIRXSS1_HANDLER_HDCP_ENCRYPTION_UPDATE | Handler for HDCP encryption status update event.
XV_HDMIRXSS1_HANDLER_TMDS_CLK_RATIO | Handler type for TMDS clock ratio change.
XV_HDMIRXSS1_HANDLER_VIC_ERROR | Handler type for VIC error change.
XV_HDMIRXSS1_HANDLER_VFP_CH | Handler type for VFP change.
XV_HDMIRXSS1_HANDLER_VRR_RDY | Handler type for VRR ready.
XV_HDMIRXSS1_HANDLER_VID_RDY_ERR | Handler type for VID ready error.
XV_HDMIRXSS1_HANDLER_DYN_HDR | Handler type for Dynamic HDR.
XV_HDMIRXSS1_HANDLER_DSC_STRM_CH | Handler type for DSC stream change event.
XV_HDMIRXSS1_HANDLER_DSC_PKT_ERR | Handler type for DSC PPS Packet error event.
XV_HDMIRXSS1_HANDLER_DSC_STS_UPDT | Handler type for SCDC Reg 0x10 bit 0 Status_Update bit set by HDMI Source.

enum XV_HdmiRxSs1_HdcpProtocol

These constants specify the HDCP protection schemes.

Enumerator
XV_HDMIRXSS1_HDCP_NONE | No content protection.
XV_HDMIRXSS1_HDCP_14 | HDCP 1.4.
XV_HDMIRXSS1_HDCP_22 | HDCP 2.2.
XV_HDMIRXSS1_HDCP_NOUSERPREF | Control user selection. to be used only with API XV_HdmiRxSs1_SetUserHdcpProtocol < Both HDCP 1.4 and 2.2>

enum XV_HdmiRxSs1_LogEvent

Enumerator
XV_HDMIRXSS1_LOG_EVT_NONE | Log event none.
XV_HDMIRXSS1_LOG_EVT_HDMIRX1_INIT | Log event HDMIRX Init.
XV_HDMIRXSS1_LOG_EVT_VTC_INIT | Log event VTC Init.
XV_HDMIRXSS1_LOG_EVT_HDCPTIMER_INIT | Log event HDCP Timer Init.
XV_HDMIRXSS1_LOG_EVT_HDCP14_INIT | Log event HDCP 14 Init.
XV_HDMIRXSS1_LOG_EVT_HDCP22_INIT | Log event HDCP 22 Init.
XV_HDMIRXSS1_LOG_EVT_START | Log event HDMIRXSS1 Start.
XV_HDMIRXSS1_LOG_EVT_STOP | Log event HDMIRXSS1 Stop.
XV_HDMIRXSS1_LOG_EVT_RESET | Log event HDMIRXSS1 Reset.
XV_HDMIRXSS1_LOG_EVT_CONNECT | Log event Cable connect.
XV_HDMIRXSS1_LOG_EVT_DISCONNECT | Log event Cable disconnect.
XV_HDMIRXSS1_LOG_EVT_LINKSTATUS | Log event Link Status Error.
XV_HDMIRXSS1_LOG_EVT_STREAMUP | Log event Stream Up.
XV_HDMIRXSS1_LOG_EVT_STREAMDOWN | Log event Stream Down.
XV_HDMIRXSS1_LOG_EVT_STREAMINIT | Log event Stream Init.
XV_HDMIRXSS1_LOG_EVT_SETSTREAM | Log event HDMIRXSS1 Setstream.
XV_HDMIRXSS1_LOG_EVT_SETSTREAM_ERR | Log event HDMIRXSS1 Setstream Err.
XV_HDMIRXSS1_LOG_EVT_REFCLOCKCHANGE | Log event TMDS Ref clock change.
XV_HDMIRXSS1_LOG_EVT_HDCP14 | Log event Enable HDCP 1.4.
XV_HDMIRXSS1_LOG_EVT_HDCP22 | Log event Enable HDCP 2.2.
XV_HDMIRXSS1_LOG_EVT_HDMIMODE | Log event HDMI Mode change.
XV_HDMIRXSS1_LOG_EVT_DVIMODE | Log event HDMI Mode change.
XV_HDMIRXSS1_LOG_EVT_SYNCLOSS | Log event Sync Loss detected.
XV_HDMIRXSS1_LOG_EVT_PIX_REPEAT_ERR | Log event Unsupported Pixel Repetition.
XV_HDMIRXSS1_LOG_EVT_SYNCEST | Log event Sync Loss detected.
XV_HDMIRXSS1_LOG_EVT_VICERROR | Log event vic error detected.
XV_HDMIRXSS1_LOG_EVT_LNKRDYERROR | Log event link ready error detected.
XV_HDMIRXSS1_LOG_EVT_VIDRDYERROR | Log event video ready error detected.
XV_HDMIRXSS1_LOG_EVT_SKEWLOCKERROR | Log event skew lock error detected.
XV_HDMIRXSS1_LOG_EVT_DUMMY | Dummy Event should be last.

## Function Documentation

void XV_HdmiRxSs1_AudioMute | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Enable
| ) |  |

This function set HDMI RX audio parameters.

Parameters

  Enable | 0: Unmute the audio 1: Mute the audio.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

int XV_HdmiRxSs1_CfgInitialize | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | XV_HdmiRxSs1_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

  InstancePtr | is a pointer to the Subsystem instance to be worked on.
  CfgPtr | points to the configuration structure associated with the subsystem instance.
  EffectiveAddr | is 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_HdmiRxSs1::AppMajVer, XV_HdmiRxSs1::AppMinVer, XV_HdmiRxSs1_Config::AxiLiteClkFreq, XV_HdmiRxSs1_Config::BaseAddress, XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DeviceId, XV_HdmiRxSs1_Config::DSC, XV_HdmiRxSs1::EnableHDCPLogging, XV_HdmiRxSs1::EnableHDMILogging, XV_HdmiRxSs1::HdmiRx1Ptr, XV_HdmiRxSs1::IsReady, XV_HdmiRxSs1_GetDrmInfoframe(), XV_HDMIRXSS1_HDCP_14, XV_HDMIRXSS1_HDCP_22, XV_HDMIRXSS1_HDCP_NOUSERPREF, XV_HdmiRxSs1_Reset(), and XV_HdmiRxSs1_SubcoreInitHdmiRx1().

void XV_HdmiRxSs1_DdcRegDump | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints out RX's SCDC registers and values on STDIO/UART console.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 instance.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DebugInfo | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints debug information on STDIO/UART console.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 instance.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by DetailedInfo().

void XV_HdmiRxSs1_DynHDR_DM_Disable | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function disables the Data mover in Dynamic HDR.

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance

Returns
  None

Note
  None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DynHDR_DM_Enable | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function enables the Data mover in Dynamic HDR.

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance

Returns
  None

Note
  None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DynHDR_GetInfo | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | XV_HdmiRxSs1_DynHDR_Info * | RxDynHdrInfo
| ) |  |

This function sets the buffer address for Dyanamic HDR.

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance
  RxDynHdrInfo | pointer to dynamic hdr info structure. This is passed by the application.

Returns
  None

Note
  None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_DynHDR_SetAddr | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u64 | Addr
| ) |  |

This function sets the buffer address for Dyanamic HDR.

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance
  Addr | 64 bit address

Returns
  None

Note
  None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1_Config::DynamicHDR, and XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by main().

u32 XV_HdmiRxSs1_GetAudioAcrCtsVal | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns the HDMI RX SS CTS value.

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Channels

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u32 XV_HdmiRxSs1_GetAudioAcrNVal | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns the HDMI RX SS CTS value.

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Channels

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u8 XV_HdmiRxSs1_GetAudioChannels | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns the HDMI RX SS number of active audio channels.

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Channels

Note
  None.

References XV_HdmiRxSs1::AudioChannels.

XV_HdmiRx1_AudioFormatType XV_HdmiRxSs1_GetAudioFormat | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns the HDMI RX SS audio format.

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Channels

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_ReportAudio().

XHdmiC_AudioInfoFrame* XV_HdmiRxSs1_GetAudioInfoframe | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance

Returns
  XHdmiC_AudioInfoFrame pointer

Note
  None.

References XV_HdmiRxSs1::AudioInfoframe.

XHdmiC_Aux* XV_HdmiRxSs1_GetAuxiliary | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  XVidC_VideoStream pointer

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_UpdateAuxFifo().

XHdmiC_AVI_InfoFrame* XV_HdmiRxSs1_GetAviInfoframe | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance

Returns
  XHdmiC_AVI_InfoFrame pointer

Note
  None.

References XV_HdmiRxSs1::AVIInfoframe.

XVidC_PixelsPerClock XV_HdmiRxSs1_GetCorePpc | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns core ppc value.

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance

Returns
  Core pixel per clock value

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

XHdmiC_DRMInfoFrame* XV_HdmiRxSs1_GetDrmInfoframe | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  XHdmiC_DRMInfoFrame pointer

Note
  None.

References XV_HdmiRxSs1::DrmInfoframe.

Referenced by XV_HdmiRxSs1_CfgInitialize(), and XV_HdmiRxSs1_ReportDRMInfo().

XHdmiC_GeneralControlPacket* XV_HdmiRxSs1_GetGCP | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns the pointer to HDMI RX SS General Control Packet structure.

Parameters

  InstancePtr | pointer to XV_HdmiRXSs instance

Returns
  XHdmiC_GeneralControlPacket pointer

Note
  None.

References XV_HdmiRxSs1::GCP.

u8 XV_HdmiRxSs1_GetTransportMode | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Transport Mode 1:FRL 0:TMDS

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u8 XV_HdmiRxSs1_GetVideoIDCode | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns the pointer to HDMI RX SS video Identification code.

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  VIC

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

XVidC_VideoStream* XV_HdmiRxSs1_GetVideoStream | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  XVidC_VideoStream pointer

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_ProcessVRRTimingChange(), and main().

u8 XV_HdmiRxSs1_GetVideoStreamScramblingFlag | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Stream Type 1:IsScrambled 0: not Scrambled

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

u8 XV_HdmiRxSs1_GetVideoStreamType | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  Stream Type 1:HDMI 0:DVI

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

XV_HdmiC_VrrInfoFrame* XV_HdmiRxSs1_GetVrrIf | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function returns VRR infoframe type.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 instance.

Returns
  XV_HdmiRx1_VrrInfoframeType

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_ProcessVTEMPacket(), Exdes_ReadVTEMPacket(), and main().

XHdmiC_VSIF* XV_HdmiRxSs1_GetVSIF | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  XHdmiC_VSIF pointer

Note
  None.

References XV_HdmiRxSs1::VSIF.

void XV_HdmiRxSS1_HdmiRxIntrHandler | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function calls the interrupt handler for HDMI RX.

Parameters

  InstancePtr | is a pointer to the HDMI RX Subsystem

References XV_HdmiRxSs1::HdmiRx1Ptr.

int XV_HdmiRxSs1_IsStreamConnected | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function checks if the interface is connected.

Parameters

  None. |

Returns
  - TRUE if interface is connected.
  - FALSE if interface is not connected.

Note
  None.

References XV_HdmiRxSs1::IsStreamConnected.

int XV_HdmiRxSs1_IsStreamUp | ( | XV_HdmiRxSs1 * | 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_HdmiRxSs1::IsStreamUp.

void XV_HdmiRxSs1_LoadDefaultEdid | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function loads the default EDID to the HDMI RX.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::EdidLength, XV_HdmiRxSs1::EdidPtr, and XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_LoadEdid | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 * | EdidDataPtr,
|  | u16 | Length
| ) |  |

This function loads the default EDID to the HDMI RX.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_LogDisplay | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function will print the entire log.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::Log, XV_HdmiRxSs1::LogWriteCallback, XV_HdmiRxSs1_Log::TailIndex, XV_HdmiRxSs1_Log::TimeRecord, XV_HDMIRXSS1_LOG_EVT_CONNECT, XV_HDMIRXSS1_LOG_EVT_DISCONNECT, XV_HDMIRXSS1_LOG_EVT_DVIMODE, XV_HDMIRXSS1_LOG_EVT_HDCP14, XV_HDMIRXSS1_LOG_EVT_HDCP14_INIT, XV_HDMIRXSS1_LOG_EVT_HDCP22, XV_HDMIRXSS1_LOG_EVT_HDCP22_INIT, XV_HDMIRXSS1_LOG_EVT_HDCPTIMER_INIT, XV_HDMIRXSS1_LOG_EVT_HDMIMODE, XV_HDMIRXSS1_LOG_EVT_HDMIRX1_INIT, XV_HDMIRXSS1_LOG_EVT_LINKSTATUS, XV_HDMIRXSS1_LOG_EVT_LNKRDYERROR, XV_HDMIRXSS1_LOG_EVT_NONE, XV_HDMIRXSS1_LOG_EVT_PIX_REPEAT_ERR, XV_HDMIRXSS1_LOG_EVT_REFCLOCKCHANGE, XV_HDMIRXSS1_LOG_EVT_RESET, XV_HDMIRXSS1_LOG_EVT_SETSTREAM, XV_HDMIRXSS1_LOG_EVT_SETSTREAM_ERR, XV_HDMIRXSS1_LOG_EVT_SKEWLOCKERROR, XV_HDMIRXSS1_LOG_EVT_START, XV_HDMIRXSS1_LOG_EVT_STOP, XV_HDMIRXSS1_LOG_EVT_STREAMDOWN, XV_HDMIRXSS1_LOG_EVT_STREAMINIT, XV_HDMIRXSS1_LOG_EVT_STREAMUP, XV_HDMIRXSS1_LOG_EVT_SYNCEST, XV_HDMIRXSS1_LOG_EVT_SYNCLOSS, XV_HDMIRXSS1_LOG_EVT_VICERROR, XV_HDMIRXSS1_LOG_EVT_VIDRDYERROR, XV_HDMIRXSS1_LOG_EVT_VTC_INIT, and XV_HdmiRxSs1_LogRead().

u16 XV_HdmiRxSs1_LogRead | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function will read the last event from the log.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 core instance.

Returns
  The log data.

Note
  None.

References XV_HdmiRxSs1_Log::DataBuffer, XV_HdmiRxSs1_Log::HeadIndex, XV_HdmiRxSs1::Log, and XV_HdmiRxSs1_Log::TailIndex.

Referenced by XV_HdmiRxSs1_LogDisplay().

void XV_HdmiRxSs1_LogReset | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function will reset the driver's logging mechanism.

Parameters

  InstancePtr | is a pointer to the xv_hdmirxss1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1_Log::HeadIndex, XV_HdmiRxSs1::Log, and XV_HdmiRxSs1_Log::TailIndex.

void XV_HdmiRxSs1_LogWrite | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | XV_HdmiRxSs1_LogEvent | Evt,
|  | u8 | Data
| ) |  |

This function will insert an event in the driver's logginc mechanism.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 core instance.
  Evt | is the event type to log.
  Data | is the associated data for the event.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1_Log::DataBuffer, XV_HdmiRxSs1_Log::HeadIndex, XV_HdmiRxSs1::Log, XV_HdmiRxSs1::LogWriteCallback, XV_HdmiRxSs1::LogWriteRef, XV_HdmiRxSs1_Log::TailIndex, XV_HdmiRxSs1_Log::TimeRecord, and XV_HDMIRXSS1_LOG_EVT_DUMMY.

Referenced by XV_HdmiRxSs1_FrlStartCallback(), XV_HdmiRxSs1_RefClockChangeInit(), XV_HdmiRxSs1_Reset(), XV_HdmiRxSs1_SetStream(), XV_HdmiRxSs1_Start(), XV_HdmiRxSs1_Stop(), and XV_HdmiRxSs1_SubcoreInitHdmiRx1().

void XV_HdmiRxSs1_RefClockChangeInit | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  None. |

Returns
  None

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr, XV_HdmiRxSs1::TMDSClockRatio, XV_HDMIRXSS1_LOG_EVT_REFCLOCKCHANGE, and XV_HdmiRxSs1_LogWrite().

void XV_HdmiRxSs1_RegisterDebug | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints out the sub-core register dump.

Parameters

  InstancePtr | Instance Pointer to the main data structure

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_ReportAudio | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints the HDMI RX SS audio information.

Parameters

  None. |

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr, and XV_HdmiRxSs1_GetAudioFormat().

Referenced by Info().

void XV_HdmiRxSs1_ReportCoreInfo | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the Subsystem instance.

Returns
  None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by DetailedInfo().

void XV_HdmiRxSs1_ReportDRMInfo | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints the HDMI 2.1 RX SS static HDR infoframe information.

Parameters

  InstancePtr | pointer to XV_HdmiRxSs1 instance

Returns
  None.

Note
  None.

References XV_HdmiRxSs1_GetDrmInfoframe().

Referenced by Info().

void XV_HdmiRxSs1_ReportInfoFrame | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints the HDMI RX SS audio information.

Parameters

  None. |

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_ReportLinkQuality | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function reports the link quality based on the link error counter.

Parameters

  None. |

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Info().

void XV_HdmiRxSs1_ReportSubcoreVersion | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints the HDMI RX SS subcore versions.

Parameters

  None. |

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by DetailedInfo().

void XV_HdmiRxSs1_ReportTiming | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function prints the HDMI RX SS timing information.

Parameters

  None. |

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Info().

void XV_HdmiRxSs1_Reset | ( | XV_HdmiRxSs1 * | 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

  InstancePtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XV_HDMIRXSS1_LOG_EVT_RESET, XV_HdmiRxSs1_LogWrite(), XV_HdmiRxSs1_RXCore_LRST(), XV_HdmiRxSs1_RXCore_VRST(), and XV_HdmiRxSs1_SYSRST().

Referenced by XV_HdmiRxSs1_CfgInitialize().

void XV_HdmiRxSs1_RXCore_LRST | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the Internal Link reset of the HDMI subcore within the subsystem.

Parameters

  InstancePtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_Reset().

void XV_HdmiRxSs1_RXCore_VRST | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the Internal Video reset of the HDMI subcore within the subsystem.

Parameters

  InstancePtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_Reset().

void XV_HdmiRxSS1_SetAppVersion | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | maj,
|  | u8 | min
| ) |  |

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

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 core instance.
  maj | is the major version of the application.
  min | is the minor version of the application.

Returns
  void.

Note
  None.

References XV_HdmiRxSs1::AppMajVer, and XV_HdmiRxSs1::AppMinVer.

int XV_HdmiRxSs1_SetCallback | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | XV_HdmiRxSs1_HandlerType | HandlerType,
|  | void * | CallbackFunc,
|  | void * | CallbackRef
| ) |  |

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

    HandlerType                     Callback Function Type
    -----------------------         ---------------------------------------------
    (XV_HDMIRXSS1_HANDLER_CONNECT)             HpdCallback
    (XV_HDMIRXSS1_HANDLER_VS)                  VsCallback
    (XV_HDMIRXSS1_HANDLER_STREAM_DOWN)         StreamDownCallback
    (XV_HDMIRXSS1_HANDLER_STREAM_UP)           StreamUpCallback
    (XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATED)
    (XV_HDMIRXSS1_HANDLER_HDCP_UNAUTHENTICATED)
    (XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATION_REQUEST)
    (XV_HDMIRXSS1_HANDLER_HDCP_STREAM_MANAGE_REQUEST)
    (XV_HDMIRXSS1_HANDLER_HDCP_TOPOLOGY_UPDATE)

Parameters

  InstancePtr | is a pointer to the HDMI RX Subsystem instance.
  HandlerType | specifies the type of handler.
  CallbackFunc | is the address of the callback function.
  CallbackRef | is 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_HdmiRxSs1::AudCallback, XV_HdmiRxSs1::AudRef, XV_HdmiRxSs1::AuxCallback, XV_HdmiRxSs1::AuxRef, XV_HdmiRxSs1::BrdgOverflowCallback, XV_HdmiRxSs1::BrdgOverflowRef, XV_HdmiRxSs1::ConnectCallback, XV_HdmiRxSs1::ConnectRef, XV_HdmiRxSs1::DdcCallback, XV_HdmiRxSs1::DdcRef, XV_HdmiRxSs1::DSCPktErrCallback, XV_HdmiRxSs1::DSCStreamChangeEventCallback, XV_HdmiRxSs1::DSCStrmChgEvtRef, XV_HdmiRxSs1::DSCStsUpdtEvtCallback, XV_HdmiRxSs1::DSCStsUpdtEvtRef, XV_HdmiRxSs1::DynHdrCallback, XV_HdmiRxSs1::DynHdrRef, XV_HdmiRxSs1::FrlConfigCallback, XV_HdmiRxSs1::FrlConfigRef, XV_HdmiRxSs1::FrlStartCallback, XV_HdmiRxSs1::FrlStartRef, XV_HdmiRxSs1::HdcpCallback, XV_HdmiRxSs1::HdcpRef, XV_HdmiRxSs1::LnkStaCallback, XV_HdmiRxSs1::LnkStaRef, XV_HdmiRxSs1::PhyResetCallback, XV_HdmiRxSs1::PhyResetRef, XV_HdmiRxSs1::StreamDownCallback, XV_HdmiRxSs1::StreamDownRef, XV_HdmiRxSs1::StreamInitCallback, XV_HdmiRxSs1::StreamInitRef, XV_HdmiRxSs1::StreamUpCallback, XV_HdmiRxSs1::StreamUpRef, XV_HdmiRxSs1::TmdsClkRatioCallback, XV_HdmiRxSs1::TmdsClkRatioRef, XV_HdmiRxSs1::TmdsConfigCallback, XV_HdmiRxSs1::TmdsConfigRef, XV_HdmiRxSs1::VfpChangeCallback, XV_HdmiRxSs1::VfpChangeRef, XV_HdmiRxSs1::VicErrorCallback, XV_HdmiRxSs1::VicErrorRef, XV_HdmiRxSs1::VidRdyErrorCallback, XV_HdmiRxSs1::VidRdyErrorRef, XV_HdmiRxSs1::VrrRdyCallback, XV_HdmiRxSs1::VrrRdyRef, XV_HDMIRXSS1_HANDLER_AUD, XV_HDMIRXSS1_HANDLER_AUX, XV_HDMIRXSS1_HANDLER_BRDGOVERFLOW, XV_HDMIRXSS1_HANDLER_CONNECT, XV_HDMIRXSS1_HANDLER_DDC, XV_HDMIRXSS1_HANDLER_DSC_PKT_ERR, XV_HDMIRXSS1_HANDLER_DSC_STRM_CH, XV_HDMIRXSS1_HANDLER_DSC_STS_UPDT, XV_HDMIRXSS1_HANDLER_DYN_HDR, XV_HDMIRXSS1_HANDLER_FRL_CONFIG, XV_HDMIRXSS1_HANDLER_FRL_START, XV_HDMIRXSS1_HANDLER_HDCP, XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATED, XV_HDMIRXSS1_HANDLER_HDCP_AUTHENTICATION_REQUEST, XV_HDMIRXSS1_HANDLER_HDCP_ENCRYPTION_UPDATE, XV_HDMIRXSS1_HANDLER_HDCP_STREAM_MANAGE_REQUEST, XV_HDMIRXSS1_HANDLER_HDCP_TOPOLOGY_UPDATE, XV_HDMIRXSS1_HANDLER_HDCP_UNAUTHENTICATED, XV_HDMIRXSS1_HANDLER_LNKSTA, XV_HDMIRXSS1_HANDLER_PHY_RESET, XV_HDMIRXSS1_HANDLER_STREAM_DOWN, XV_HDMIRXSS1_HANDLER_STREAM_INIT, XV_HDMIRXSS1_HANDLER_STREAM_UP, XV_HDMIRXSS1_HANDLER_TMDS_CLK_RATIO, XV_HDMIRXSS1_HANDLER_TMDS_CONFIG, XV_HDMIRXSS1_HANDLER_VFP_CH, XV_HDMIRXSS1_HANDLER_VIC_ERROR, XV_HDMIRXSS1_HANDLER_VID_RDY_ERR, and XV_HDMIRXSS1_HANDLER_VRR_RDY.

void XV_HdmiRxSs1_SetDefaultPpc | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Id
| ) |  |

This function will set the default in HDF.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 core instance.
  Id | is the XV_HdmiRxSs1 ID to operate on.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::Config, and XV_HdmiRxSs1_Config::Ppc.

void XV_HdmiRxSs1_SetEdidParam | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 * | EdidDataPtr,
|  | u16 | Length
| ) |  |

This function Sets the EDID parameters in the HDMI RX SS struct.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::EdidLength, and XV_HdmiRxSs1::EdidPtr.

void XV_HdmiRxSs1_SetHpd | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Value
| ) |  |

This function sets the HPD on the HDMI RX.

Parameters

  Value | is a flag used to set the HPD. TRUE drives HPD high FALSE drives HPD low

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

int XV_HdmiRxSs1_SetLogCallback | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u64 * | CallbackFunc,
|  | void * | CallbackRef
| ) |  |

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

Parameters

  InstancePtr | is a pointer to the HDMI RX Subsystem instance.
  CallbackFunc | is the address of the callback function.
  CallbackRef | is 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_HdmiRxSs1::LogWriteCallback, and XV_HdmiRxSs1::LogWriteRef.

void XV_HdmiRxSs1_SetPpc | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Id,
|  | u8 | Ppc
| ) |  |

This function will set PPC specified by user.

Parameters

  InstancePtr | is a pointer to the XV_HdmiRxSs1 core instance.
  Id | is the XV_HdmiRxSs1 ID to operate on.
  Ppc | is the PPC to be set.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::Config, and XV_HdmiRxSs1_Config::Ppc.

u32 XV_HdmiRxSs1_SetStream | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u32 | Clock,
|  | u32 | LineRate
| ) |  |

This function set HDMI RX susbsystem stream parameters.

Parameters

  None. |

Returns
  Calculated TMDS Clock

Note
  None.

References XV_HdmiRxSs1::Config, XV_HdmiRxSs1::HdmiRx1Ptr, XV_HdmiRxSs1_Config::Ppc, XV_HDMIRXSS1_LOG_EVT_SETSTREAM, XV_HDMIRXSS1_LOG_EVT_SETSTREAM_ERR, and XV_HdmiRxSs1_LogWrite().

void XV_HdmiRxSs1_SetUserTimerHandler | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | XVidC_DelayHandler | CallbackFunc,
|  | void * | CallbackRef
| ) |  |

This function installs a custom delay/sleep function to be used by the XV_HdmiRxSs1 driver.

Parameters

  InstancePtr | is a pointer to the HdmiSsRx instance.
  CallbackFunc | is the address to the callback function.
  CallbackRef | is the user data item (microseconds to delay) that will be passed to the custom sleep/delay function when it is invoked.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::UserTimerPtr, and XV_HdmiRxSs1::UserTimerWaitUs.

void XV_HdmiRxSs1_Start | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function starts the HDMI RX 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

  InstancePtr | is 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_HdmiRxSs1::HdmiRx1Ptr, XV_HDMIRXSS1_LOG_EVT_START, and XV_HdmiRxSs1_LogWrite().

Referenced by main().

void XV_HdmiRxSs1_Stop | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function stops the HDMI RX subsystem including all sub-cores Stop the video pipe starting from front to back.

Parameters

  InstancePtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XV_HdmiRxSs1::HdmiRx1Ptr, XV_HDMIRXSS1_LOG_EVT_STOP, and XV_HdmiRxSs1_LogWrite().

void XV_HdmiRxSs1_SYSRST | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the system reset of other blocks within the subsystem.

Parameters

  InstancePtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by XV_HdmiRxSs1_Reset().

void XV_HdmiRxSs1_ToggleHpd | ( | XV_HdmiRxSs1 * | InstancePtr | ) |

This function toggles the HPD on the HDMI RX.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_VfpControl | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Enable
| ) |  |

This function controls HDMI RX VFP event enable/disable.

Parameters

  Enable | 0: disable VFP event 1: enable VFP event.

Returns
  None.

Note
  None.

References XV_HdmiRxSs1::HdmiRx1Ptr.

void XV_HdmiRxSs1_VRST | ( | XV_HdmiRxSs1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the video reset of other blocks within the subsystem.

Parameters

  InstancePtr | is a pointer to the Subsystem instance to be worked on.

Returns
  None

References XV_HdmiRxSs1::HdmiRx1Ptr.

Referenced by Exdes_CheckforResChange().