| v_hdmitxss Vitis Drivers API Documentation

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

Data Structures | Macros | Typedefs | Functions
xv_hdmitxss.h File Reference

## Overview

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

HDMI Transmitter Subsystem Overview

HDMI TX 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

HDMI 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         10/07/15 Initial release.
    1.1   yh     15/01/16 Add 3D Support
    1.2   yh     20/01/16 Added remapper support
    1.3   yh     01/02/16 Added set_ppc api
    1.4   MG     03/02/16 Added HDCP support
    1.5   MG     09/03/16 Removed reduced blanking support and
                          added XV_HdmiTxSS_SetHdmiMode and XV_HdmiTxSS_SetDviMode
    1.6   MH     03/15/16 Added HDCP connect event
    1.7   YH     17/03/16 Remove xintc.h as it is processor dependent
    1.8   YH     18/03/16 Add XV_HdmiTxSs_SendGenericAuxInfoframe function
    1.9   MH     23/06/16 Added HDCP repeater support.
    1.10  YH     25/07/16 Used UINTPTR instead of u32 for BaseAddress
    1.11  MH     08/08/16 Updates to optimize out HDCP when excluded.
    1.12  YH     18/08/16 Combine Report function into one ReportInfo
                          Add Event Log
    1.13  YH     27/08/16 Remove unused function XV_HdmiTxSs_SetUserTimerHandler
    1.14  YH     14/11/16 Added API to enable/disable YUV420/Pixel Repeat Mode
                          for video bridge
    1.15  YH     14/11/16 Remove Remapper APIs as remapper feature is moved to
                          video bridge and controlled by HDMI core
    1.16  mmo    03/01/17 Add compiler option(XV_HDMITXSS_LOG_ENABLE) to enable
                               Log
                          Re-order the enumation and data structure
    1.17  mmo    02/03/17 Added XV_HdmiTxSs_ReadEdidSegment API for Multiple
                                Segment Support and HDMI Compliance Test
    4.0   YH     19/07/17 Added Video Masking APIs
          MH     09/08/17 Added function XV_HdmiTxSs_HdcpSetCapability
                 22/08/17 Added function XV_HdmiTxSs_SetAudioFormat
          EB     10/10/17 Added function XV_HdmiTxSs_GetAudioFormat
    5.0   YH     16/01/18 Added dedicated reset for each clock domain
                          Added bridge unlock interrupt
                          Added PIO_OUT to set GCP_AVMUTE
          EB     17/01/18 Added InfoFrame data structure to XV_HdmiTxSs
                          Added XV_HDMITXSS_LOG_EVT_PIX_REPEAT_ERR log event
                          Added functions XV_HdmiTxSs_GetAuxiliary,
                                XV_HdmiTxSs_GetAviInfoframe,
                                XV_HdmiTxSs_GetAudioInfoframe,
                                XV_HdmiTxSs_GetVSIF
                          Updated the return type of the function
                                XV_HdmiTxSs_SendGenericAuxInfoframe
          EB     23/01/18 Added function
                              XV_HdmiTxSs_SetVideoStreamHdmi14ScramblingOverrideFlag
                 25/01/18 Added function XV_HdmiTxSs_SetScrambler
          mmo    08/02/18 Added LowResolutionSupp & YUV420Supp in the
                                XV_HdmiTxSs_Config
          SM     28/02/18 Added XV_HdmiTxSS_SetAppVersion API and AppMajVer and
                              AppMinVer version number in XV_HdmiTxSs structure
          MMO    11/08/18 Added Bridge Overflow and Bridge Underflow Interrupt

## Data Structures
struct | XV_HdmiTxSs_Log
| This typedef contains the logging mechanism for debug. More...
struct | XV_HdmiTxSs_SubCore
| Sub-Core Configuration Table. More...
struct | XV_HdmiTxSs_Config
| Video Processing Subsystem configuration structure. More...
struct | XV_HdmiTxSs
| The XVprocss driver instance data. More...

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

## Typedefs
typedef void(* | XV_HdmiTxSs_Callback )(void *CallbackRef)
| Callback type for interrupt. More...

## Enumerations
Handler Types
enum | XV_HdmiTxSs_LogEvent { XV_HDMITXSS_LOG_EVT_NONE = 1, XV_HDMITXSS_LOG_EVT_HDMITX_INIT, XV_HDMITXSS_LOG_EVT_VTC_INIT, XV_HDMITXSS_LOG_EVT_HDCPTIMER_INIT, XV_HDMITXSS_LOG_EVT_HDCP14_INIT, XV_HDMITXSS_LOG_EVT_HDCP22_INIT, XV_HDMITXSS_LOG_EVT_REMAP_HWRESET_INIT, XV_HDMITXSS_LOG_EVT_REMAP_INIT, XV_HDMITXSS_LOG_EVT_START, XV_HDMITXSS_LOG_EVT_STOP, XV_HDMITXSS_LOG_EVT_RESET, XV_HDMITXSS_LOG_EVT_CONNECT, XV_HDMITXSS_LOG_EVT_TOGGLE, XV_HDMITXSS_LOG_EVT_DISCONNECT, XV_HDMITXSS_LOG_EVT_STREAMUP, XV_HDMITXSS_LOG_EVT_STREAMDOWN, XV_HDMITXSS_LOG_EVT_STREAMSTART, XV_HDMITXSS_LOG_EVT_SETAUDIOCHANNELS, XV_HDMITXSS_LOG_EVT_AUDIOMUTE, XV_HDMITXSS_LOG_EVT_AUDIOUNMUTE, XV_HDMITXSS_LOG_EVT_SETSTREAM, XV_HDMITXSS_LOG_EVT_HDCP14_AUTHREQ, XV_HDMITXSS_LOG_EVT_HDCP22_AUTHREQ, XV_HDMITXSS_LOG_EVT_PIX_REPEAT_ERR, XV_HDMITXSS_LOG_EVT_VTC_RES_ERR, XV_HDMITXSS_LOG_EVT_BRDG_UNLOCKED, XV_HDMITXSS_LOG_EVT_DUMMY }
enum | XV_HdmiTxSs_HpdToleranceType
enum | XV_HdmiTxSs_HdcpProtocol { XV_HDMITXSS_HDCP_NONE, XV_HDMITXSS_HDCP_14, XV_HDMITXSS_HDCP_22, XV_HDMITXSS_HDCP_BOTH }
| These constants specify the HDCP protection schemes. More...
enum | XV_HdmiTxSs_HandlerType { XV_HDMITXSS_HANDLER_CONNECT = 1, XV_HDMITXSS_HANDLER_TOGGLE, XV_HDMITXSS_HANDLER_BRDGUNLOCK, XV_HDMITXSS_HANDLER_BRDGOVERFLOW, XV_HDMITXSS_HANDLER_BRDGUNDERFLOW, XV_HDMITXSS_HANDLER_VS, XV_HDMITXSS_HANDLER_STREAM_DOWN, XV_HDMITXSS_HANDLER_STREAM_UP, XV_HDMITXSS_HANDLER_HDCP_AUTHENTICATED, XV_HDMITXSS_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE, XV_HDMITXSS_HANDLER_HDCP_UNAUTHENTICATED }
| These constants specify different types of handler and used to differentiate interrupt requests from peripheral. More...

## Functions
XV_HdmiTxSs_Config * | XV_HdmiTxSs_LookupConfig (u32 DeviceId)
| This function looks for the device configuration based on the unique device ID. More...
void | XV_HdmiTxSS_SetHdmiMode (XV_HdmiTxSs *InstancePtr)
| This function sets the core into HDMI mode. More...
void | XV_HdmiTxSS_SetDviMode (XV_HdmiTxSs *InstancePtr)
| This function sets the core into DVI mode. More...
void | XV_HdmiTxSS_HdmiTxIntrHandler (XV_HdmiTxSs *InstancePtr)
| This function calls the interrupt handler for HDMI TX. More...
int | XV_HdmiTxSs_CfgInitialize (XV_HdmiTxSs *InstancePtr, XV_HdmiTxSs_Config *CfgPtr, UINTPTR EffectiveAddr)
| This function initializes the video subsystem and included sub-cores. More...
void | XV_HdmiTxSS_SetAppVersion (XV_HdmiTxSs *InstancePtr, u8 maj, u8 min)
| This function will set the major and minor application version in TXSs struct. More...
void | XV_HdmiTxSs_Start (XV_HdmiTxSs *InstancePtr)
| This function starts the HDMI TX subsystem including all sub-cores that are included in the processing pipeline for a given use-case. More...
void | XV_HdmiTxSs_Stop (XV_HdmiTxSs *InstancePtr)
| This function stops the HDMI TX subsystem including all sub-cores Stop the video pipe starting from front to back. More...
void | XV_HdmiTxSs_Reset (XV_HdmiTxSs *InstancePtr)
| This function resets the video subsystem sub-cores. More...
void | XV_HdmiTxSs_TXCore_VRST (XV_HdmiTxSs *InstancePtr, u8 Reset)
| This function asserts or releases the Internal Video reset of the HDMI subcore within the subsystem. More...
void | XV_HdmiTxSs_TXCore_LRST (XV_HdmiTxSs *InstancePtr, u8 Reset)
| This function asserts or releases the Internal Link reset of the HDMI subcore within the subsystem. More...
void | XV_HdmiTxSs_VRST (XV_HdmiTxSs *InstancePtr, u8 Reset)
| This function asserts or releases the video reset of other blocks within the subsystem. More...
void | XV_HdmiTxSs_SYSRST (XV_HdmiTxSs *InstancePtr, u8 Reset)
| This function asserts or releases the system reset of other blocks within the subsystem. More...
void | XV_HdmiTxSs_SetGcpAvmuteBit (XV_HdmiTxSs *InstancePtr)
| This function sets the HDMI TX AUX GCP register AVMUTE bit. More...
void | XV_HdmiTxSs_ClearGcpAvmuteBit (XV_HdmiTxSs *InstancePtr)
| This function clears the HDMI TX AUX GCP register AVMUTE bit. More...
void | XV_HdmiTxSs_SetGcpClearAvmuteBit (XV_HdmiTxSs *InstancePtr)
| This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More...
void | XV_HdmiTxSs_ClearGcpClearAvmuteBit (XV_HdmiTxSs *InstancePtr)
| This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More...
int | XV_HdmiTxSs_SetCallback (XV_HdmiTxSs *InstancePtr, XV_HdmiTxSs_HandlerType HandlerType, void *CallbackFuncPtr, void *CallbackRef)
| This function installs an asynchronous callback function for the given HandlerType: More...
int | XV_HdmiTxSs_ReadEdid (XV_HdmiTxSs *InstancePtr, u8 *BufferPtr)
| This function reads the HDMI Sink EDID. More...
int | XV_HdmiTxSs_ReadEdidSegment (XV_HdmiTxSs *InstancePtr, u8 *Buffer, u8 segment)
| This function reads one block from the HDMI Sink EDID. More...
void | XV_HdmiTxSs_ShowEdid (XV_HdmiTxSs *InstancePtr)
| This function shows the HDMI source edid. More...
void | XV_HdmiTxSs_SetScrambler (XV_HdmiTxSs *InstancePtr, u8 Enable)
| This function enables / disables the TX scrambler. More...
void | XV_HdmiTxSs_StreamStart (XV_HdmiTxSs *InstancePtr)
| This function starts the HDMI TX stream. More...
void | XV_HdmiTxSs_SendAuxInfoframe (XV_HdmiTxSs *InstancePtr, void *AuxPtr)
| This function sends audio info frames. More...
u32 | XV_HdmiTxSs_SendGenericAuxInfoframe (XV_HdmiTxSs *InstancePtr, void *AuxPtr)
| This function sends generic info frames. More...
void | XV_HdmiTxSs_SetAudioChannels (XV_HdmiTxSs *InstancePtr, u8 AudioChannels)
| This function Sets the HDMI TX SS number of active audio channels. More...
void | XV_HdmiTxSs_AudioMute (XV_HdmiTxSs *InstancePtr, u8 Enable)
| This function set HDMI TX audio parameters. More...
void | XV_HdmiTxSs_SetAudioFormat (XV_HdmiTxSs *InstancePtr, XV_HdmiTx_AudioFormatType format)
| This function Sets the HDMI TX SS Audio Format. More...
XV_HdmiTx_AudioFormatType | XV_HdmiTxSs_GetAudioFormat (XV_HdmiTxSs *InstancePtr)
| This function gets the active audio format. More...
XHdmiC_Aux * | XV_HdmiTxSs_GetAuxiliary (XV_HdmiTxSs *InstancePtr)
| This function returns the pointer to HDMI TX SS Aux structure. More...
XHdmiC_AVI_InfoFrame * | XV_HdmiTxSs_GetAviInfoframe (XV_HdmiTxSs *InstancePtr)
| This function returns the pointer to HDMI TX SS AVI InfoFrame structure. More...
XHdmiC_AudioInfoFrame * | XV_HdmiTxSs_GetAudioInfoframe (XV_HdmiTxSs *InstancePtr)
| This function returns the pointer to HDMI TX SS Audio InfoFrame structure. More...
XHdmiC_VSIF * | XV_HdmiTxSs_GetVSIF (XV_HdmiTxSs *InstancePtr)
| This function returns the pointer to HDMI TX SS Vendor Specific InfoFrame structure. More...
u32 | XV_HdmiTxSs_SetStream (XV_HdmiTxSs *InstancePtr, XVidC_VideoMode VideoMode, XVidC_ColorFormat ColorFormat, XVidC_ColorDepth Bpc, XVidC_3DInfo *Info3D)
| This function set HDMI TX susbsystem stream parameters. More...
XVidC_VideoStream * | XV_HdmiTxSs_GetVideoStream (XV_HdmiTxSs *InstancePtr)
| This function returns the pointer to HDMI TX SS video stream. More...
void | XV_HdmiTxSs_SetVideoStream (XV_HdmiTxSs *InstancePtr, XVidC_VideoStream VidStream)
| This function Sets the HDMI TX SS video stream. More...
void | XV_HdmiTxSs_SetSamplingRate (XV_HdmiTxSs *InstancePtr, u8 SamplingRate)
| This function Sets the HDMI TX SS video Identification code. More...
void | XV_HdmiTxSs_SetVideoIDCode (XV_HdmiTxSs *InstancePtr, u8 Vic)
| This function Sets the HDMI TX SS video Identification code. More...
void | XV_HdmiTxSs_SetVideoStreamType (XV_HdmiTxSs *InstancePtr, u8 StreamType)
| This function Sets the HDMI TX SS video stream type. More...
void | XV_HdmiTxSs_SetVideoStreamScramblingFlag (XV_HdmiTxSs *InstancePtr, u8 IsScrambled)
| This function Sets the HDMI TX SS video stream type. More...
void | XV_HdmiTxSs_SetVideoStreamScramblingOverrideFlag (XV_HdmiTxSs *InstancePtr, u8 OverrideScramble)
| This function Sets the HDMI TX SS video stream scrambling behaviour. More...
void | XV_HdmiTxSs_SetTmdsClockRatio (XV_HdmiTxSs *InstancePtr, u8 Ratio)
| This function Sets the HDMI TX SS TMDS Cock Ratio. More...
u32 | XV_HdmiTxSs_GetTmdsClockFreqHz (XV_HdmiTxSs *InstancePtr)
| This function Sets the HDMI TX SS video Identification code. More...
int | XV_HdmiTxSs_DetectHdmi20 (XV_HdmiTxSs *InstancePtr)
| This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device. More...
void | XV_HdmiTxSs_RefClockChangeInit (XV_HdmiTxSs *InstancePtr)
| This function is called when HDMI TX SS TMDS clock changes. More...
void | XV_HdmiTxSs_ReportInfo (XV_HdmiTxSs *InstancePtr)
| This function prints the HDMI TX SS subcore versions. More...
int | XV_HdmiTxSs_IsStreamUp (XV_HdmiTxSs *InstancePtr)
| This function checks if the video stream is up. More...
int | XV_HdmiTxSs_IsStreamConnected (XV_HdmiTxSs *InstancePtr)
| This function checks if the interface is connected. More...
int | XV_HdmiTxSs_IsStreamToggled (XV_HdmiTxSs *InstancePtr)
| This function checks if the interface has toggled. More...
u8 | XV_HdmiTxSs_IsSinkHdcp14Capable (XV_HdmiTxSs *InstancePtr)
| This function determines if the connected HDMI sink is HDCP 1.4 capable. More...
u8 | XV_HdmiTxSs_IsSinkHdcp22Capable (XV_HdmiTxSs *InstancePtr)
| This function determines if the connected HDMI sink is HDCP 2.2 capable. More...
void | XV_HdmiTxSs_SetDefaultPpc (XV_HdmiTxSs *InstancePtr, u8 Id)
| This function will set the default in HDF. More...
void | XV_HdmiTxSs_SetPpc (XV_HdmiTxSs *InstancePtr, u8 Id, u8 Ppc)
| This function will set PPC specified by user. More...
void | XV_HdmiTxSs_LogReset (XV_HdmiTxSs *InstancePtr)
| This function will reset the driver's logging mechanism. More...
void | XV_HdmiTxSs_LogWrite (XV_HdmiTxSs *InstancePtr, XV_HdmiTxSs_LogEvent Evt, u8 Data)
| This function will insert an event in the driver's logginc mechanism. More...
u16 | XV_HdmiTxSs_LogRead (XV_HdmiTxSs *InstancePtr)
| This function will read the last event from the log. More...
void | XV_HdmiTxSs_LogDisplay (XV_HdmiTxSs *InstancePtr)
| This function will print the entire log. More...
void | XV_HdmiTxSS_MaskEnable (XV_HdmiTxSs *InstancePtr)
| This function will enable the video masking. More...
void | XV_HdmiTxSS_MaskDisable (XV_HdmiTxSs *InstancePtr)
| This function will disable the video masking. More...
void | XV_HdmiTxSS_MaskNoise (XV_HdmiTxSs *InstancePtr, u8 Enable)
| This function will enable or disable the noise in the video mask. More...
void | XV_HdmiTxSS_MaskSetRed (XV_HdmiTxSs *InstancePtr, u16 Value)
| This function will set the red component in the video mask. More...
void | XV_HdmiTxSS_MaskSetGreen (XV_HdmiTxSs *InstancePtr, u16 Value)
| This function will set the green component in the video mask. More...
void | XV_HdmiTxSS_MaskSetBlue (XV_HdmiTxSs *InstancePtr, u16 Value)
| This function will set the blue component in the video mask. More...
void | XV_HdmiTxSS_SetBackgroundColor (XV_HdmiTxSs *InstancePtr, XVMaskColorId ColorId)
| This function configures the background color for Video Masking Feature. More...
u8 | XV_HdmiTxSS_IsMasked (XV_HdmiTxSs *InstancePtr)
| This function will get the current video mask mode. More...
void | XV_HdmiTxSS_SetHpdTolerance (XV_HdmiTxSs *InstancePtr, XV_HdmiTxSs_HpdToleranceType Type, u16 ToleranceVal)
| This function will Configure Timegrid based on the tolerance value for HPD and Toggle event. More...

## Macro Definition Documentation

#define HDMITXSS_H

< prevent circular inclusions by using protection macros

## Typedef Documentation

typedef void(* XV_HdmiTxSs_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.

## Enumeration Type Documentation

enum XV_HdmiTxSs_HandlerType

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

Enumerator
XV_HDMITXSS_HANDLER_CONNECT | Handler for connect event.
XV_HDMITXSS_HANDLER_TOGGLE | Handler for toggle event.
XV_HDMITXSS_HANDLER_BRDGUNLOCK | Handler for bridge unlocked event.
XV_HDMITXSS_HANDLER_BRDGOVERFLOW | Handler for bridge overflow event.
XV_HDMITXSS_HANDLER_BRDGUNDERFLOW | Handler for bridge underflow event.
XV_HDMITXSS_HANDLER_VS | Handler for vsync event.
XV_HDMITXSS_HANDLER_STREAM_DOWN | Handler for stream down event.
XV_HDMITXSS_HANDLER_STREAM_UP | Handler for stream up event.
XV_HDMITXSS_HANDLER_HDCP_AUTHENTICATED | Handler for HDCP authenticated event.
XV_HDMITXSS_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE | Handler for HDCP downstream topology available event.
XV_HDMITXSS_HANDLER_HDCP_UNAUTHENTICATED | Handler for HDCP unauthenticated event.

enum XV_HdmiTxSs_HdcpProtocol

These constants specify the HDCP protection schemes.

Enumerator
XV_HDMITXSS_HDCP_NONE | No content protection.
XV_HDMITXSS_HDCP_14 | HDCP 1.4.
XV_HDMITXSS_HDCP_22 | HDCP 2.2.
XV_HDMITXSS_HDCP_BOTH | Both HDCP 1.4 and 2.2.

enum XV_HdmiTxSs_LogEvent

Enumerator
XV_HDMITXSS_LOG_EVT_NONE | Log event none.
XV_HDMITXSS_LOG_EVT_HDMITX_INIT | Log event HDMITX Init.
XV_HDMITXSS_LOG_EVT_VTC_INIT | Log event VTC Init.
XV_HDMITXSS_LOG_EVT_HDCPTIMER_INIT | Log event HDCP Timer Init.
XV_HDMITXSS_LOG_EVT_HDCP14_INIT | Log event HDCP 14 Init.
XV_HDMITXSS_LOG_EVT_HDCP22_INIT | Log event HDCP 22 Init.
XV_HDMITXSS_LOG_EVT_REMAP_HWRESET_INIT | Log event Remap reset Init.
XV_HDMITXSS_LOG_EVT_REMAP_INIT | Log event Remapper Init.
XV_HDMITXSS_LOG_EVT_START | Log event HDMITXSS Start.
XV_HDMITXSS_LOG_EVT_STOP | Log event HDMITXSS Stop.
XV_HDMITXSS_LOG_EVT_RESET | Log event HDMITXSS Reset.
XV_HDMITXSS_LOG_EVT_CONNECT | Log event Cable connect.
XV_HDMITXSS_LOG_EVT_TOGGLE | Log event HPD toggle.
XV_HDMITXSS_LOG_EVT_DISCONNECT | Log event Cable disconnect.
XV_HDMITXSS_LOG_EVT_STREAMUP | Log event Stream Up.
XV_HDMITXSS_LOG_EVT_STREAMDOWN | Log event Stream Down.
XV_HDMITXSS_LOG_EVT_STREAMSTART | Log event Stream Start.
XV_HDMITXSS_LOG_EVT_SETAUDIOCHANNELS | Log event Set Audio Channels.
XV_HDMITXSS_LOG_EVT_AUDIOMUTE | Log event Audio Mute.
XV_HDMITXSS_LOG_EVT_AUDIOUNMUTE | Log event Audio Unmute.
XV_HDMITXSS_LOG_EVT_SETSTREAM | Log event HDMITXSS Setstream.
XV_HDMITXSS_LOG_EVT_HDCP14_AUTHREQ | Log event HDCP 1.4 AuthReq.
XV_HDMITXSS_LOG_EVT_HDCP22_AUTHREQ | Log event HDCP 2.2 AuthReq.
XV_HDMITXSS_LOG_EVT_PIX_REPEAT_ERR | Log event Unsupported Pixel Repetition.
XV_HDMITXSS_LOG_EVT_VTC_RES_ERR | Log event Resolution Unsupported by VTC.
XV_HDMITXSS_LOG_EVT_BRDG_UNLOCKED | VID-OUT bridge unlocked.
XV_HDMITXSS_LOG_EVT_DUMMY | Dummy Event should be last.

## Function Documentation

void XV_HdmiTxSs_AudioMute | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Enable
| ) |  |

This function set HDMI TX audio parameters.

Parameters

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

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr, XV_HDMITXSS_LOG_EVT_AUDIOMUTE, XV_HDMITXSS_LOG_EVT_AUDIOUNMUTE, and XV_HdmiTxSs_LogWrite().

Referenced by XV_HdmiTxSs_SetVideoStreamType().

int XV_HdmiTxSs_CfgInitialize | ( | XV_HdmiTxSs * | InstancePtr,
|  | XV_HdmiTxSs_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_HdmiTxSs::AppMajVer, XV_HdmiTxSs::AppMinVer, XV_HdmiTxSs::AudioInfoframe, XV_HdmiTxSs::AVIInfoframe, XV_HdmiTxSs_Config::AxiLiteClkFreq, XV_HdmiTxSs_Config::BaseAddress, XV_HdmiTxSs::Config, XV_HdmiTxSs_Config::DeviceId, XV_HdmiTxSs::DrmInfoframe, XV_HdmiTxSs::HdcpProtocol, XV_HdmiTxSs::HdmiTxPtr, XV_HdmiTxSs::IsReady, XV_HdmiTxSs::VSIF, XV_HdmiTxSs::VtcPtr, XV_HDMITXSS_HDCP_BOTH, XV_HDMITXSS_HDCP_NONE, XV_HdmiTxSs_Reset(), XV_HdmiTxSs_SubcoreInitHdmiTx(), and XV_HdmiTxSs_SubcoreInitVtc().

void XV_HdmiTxSs_ClearGcpAvmuteBit | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function clears the HDMI TX AUX GCP register AVMUTE bit.

Parameters

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

Returns
  None

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSs_ClearGcpClearAvmuteBit | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit.

Parameters

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

Returns
  None

References XV_HdmiTxSs::HdmiTxPtr.

int XV_HdmiTxSs_DetectHdmi20 | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  - XST_SUCCESS if HDMI 2.0
  - XST_FAILURE if HDMI 1.4

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

XV_HdmiTx_AudioFormatType XV_HdmiTxSs_GetAudioFormat | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function gets the active audio format.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  Active audio format of HDMI Tx Subsystem

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

XHdmiC_AudioInfoFrame* XV_HdmiTxSs_GetAudioInfoframe | ( | XV_HdmiTxSs * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance

Returns
  XHdmiC_AudioInfoFrame pointer

Note
  None.

References XV_HdmiTxSs::AudioInfoframe.

XHdmiC_Aux* XV_HdmiTxSs_GetAuxiliary | ( | XV_HdmiTxSs * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance

Returns
  XVidC_VideoStream pointer

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

XHdmiC_AVI_InfoFrame* XV_HdmiTxSs_GetAviInfoframe | ( | XV_HdmiTxSs * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance

Returns
  XHdmiC_AVI_InfoFrame pointer

Note
  None.

References XV_HdmiTxSs::AVIInfoframe.

u32 XV_HdmiTxSs_GetTmdsClockFreqHz | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function Sets the HDMI TX SS video Identification code.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  @return | Stream Data Structure (TMDS Clock)

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

XVidC_VideoStream* XV_HdmiTxSs_GetVideoStream | ( | XV_HdmiTxSs * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance

Returns
  XVidC_VideoStream pointer

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSS_SetBackgroundColor().

XHdmiC_VSIF* XV_HdmiTxSs_GetVSIF | ( | XV_HdmiTxSs * | InstancePtr | ) |

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

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance

Returns
  XHdmiC_VSIF pointer

Note
  None.

References XV_HdmiTxSs::VSIF.

void XV_HdmiTxSS_HdmiTxIntrHandler | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function calls the interrupt handler for HDMI TX.

Parameters

  InstancePtr | is a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs::HdmiTxPtr.

u8 XV_HdmiTxSS_IsMasked | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function will get the current video mask mode.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  Current mode. 0 = Video masking is disabled 1 = Video masking is enabled

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

u8 XV_HdmiTxSs_IsSinkHdcp14Capable | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function determines if the connected HDMI sink is HDCP 1.4 capable.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs instance.

Returns
  - TRUE if sink is HDCP 1.4 capable and ready to authenticate.
  - FALSE if sink does not support HDCP 1.4 or is not ready.

u8 XV_HdmiTxSs_IsSinkHdcp22Capable | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function determines if the connected HDMI sink is HDCP 2.2 capable.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs instance.

Returns
  - TRUE if sink is HDCP 2.2 capable and ready to authenticate.
  - FALSE if sink does not support HDCP 2.2 or is not ready.

int XV_HdmiTxSs_IsStreamConnected | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function checks if the interface is connected.

Parameters

  None. |

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

Note
  None.

References XV_HdmiTxSs::IsStreamConnected.

int XV_HdmiTxSs_IsStreamToggled | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function checks if the interface has toggled.

Parameters

  None. |

Returns
  - TRUE if the interface HPD has toggled.
  - FALSE if the interface HPD has not toggled.

Note
  None.

References XV_HdmiTxSs::IsStreamToggled.

int XV_HdmiTxSs_IsStreamUp | ( | XV_HdmiTxSs * | 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_HdmiTxSs::IsStreamUp.

void XV_HdmiTxSs_LogDisplay | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function will print the entire log.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  None.

Note
  None.

References XV_HDMITXSS_LOG_EVT_AUDIOMUTE, XV_HDMITXSS_LOG_EVT_AUDIOUNMUTE, XV_HDMITXSS_LOG_EVT_BRDG_UNLOCKED, XV_HDMITXSS_LOG_EVT_CONNECT, XV_HDMITXSS_LOG_EVT_DISCONNECT, XV_HDMITXSS_LOG_EVT_HDCP14_AUTHREQ, XV_HDMITXSS_LOG_EVT_HDCP14_INIT, XV_HDMITXSS_LOG_EVT_HDCP22_AUTHREQ, XV_HDMITXSS_LOG_EVT_HDCP22_INIT, XV_HDMITXSS_LOG_EVT_HDCPTIMER_INIT, XV_HDMITXSS_LOG_EVT_HDMITX_INIT, XV_HDMITXSS_LOG_EVT_NONE, XV_HDMITXSS_LOG_EVT_PIX_REPEAT_ERR, XV_HDMITXSS_LOG_EVT_RESET, XV_HDMITXSS_LOG_EVT_SETAUDIOCHANNELS, XV_HDMITXSS_LOG_EVT_SETSTREAM, XV_HDMITXSS_LOG_EVT_START, XV_HDMITXSS_LOG_EVT_STOP, XV_HDMITXSS_LOG_EVT_STREAMDOWN, XV_HDMITXSS_LOG_EVT_STREAMSTART, XV_HDMITXSS_LOG_EVT_STREAMUP, XV_HDMITXSS_LOG_EVT_TOGGLE, XV_HDMITXSS_LOG_EVT_VTC_INIT, XV_HDMITXSS_LOG_EVT_VTC_RES_ERR, and XV_HdmiTxSs_LogRead().

u16 XV_HdmiTxSs_LogRead | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function will read the last event from the log.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  The log data.

Note
  None.

References XV_HdmiTxSs_Log::DataBuffer, XV_HdmiTxSs_Log::HeadIndex, XV_HdmiTxSs::Log, and XV_HdmiTxSs_Log::TailIndex.

Referenced by XV_HdmiTxSs_LogDisplay().

void XV_HdmiTxSs_LogReset | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function will reset the driver's logging mechanism.

Parameters

  InstancePtr | is a pointer to the xv_hdmitxss core instance.

Returns
  None.

Note
  None.

References XV_HdmiTxSs_Log::HeadIndex, XV_HdmiTxSs::Log, and XV_HdmiTxSs_Log::TailIndex.

void XV_HdmiTxSs_LogWrite | ( | XV_HdmiTxSs * | InstancePtr,
|  | XV_HdmiTxSs_LogEvent | Evt,
|  | u8 | Data
| ) |  |

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

Parameters

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

Returns
  None.

Note
  None.

References XV_HdmiTxSs_Log::DataBuffer, XV_HdmiTxSs_Log::HeadIndex, XV_HdmiTxSs::Log, XV_HdmiTxSs_Log::TailIndex, and XV_HDMITXSS_LOG_EVT_DUMMY.

Referenced by XV_HdmiTxSs_AudioMute(), XV_HdmiTxSs_Reset(), XV_HdmiTxSs_SetAudioChannels(), XV_HdmiTxSs_SetStream(), XV_HdmiTxSs_Start(), XV_HdmiTxSs_Stop(), XV_HdmiTxSs_StreamStart(), XV_HdmiTxSs_SubcoreInitHdmiTx(), and XV_HdmiTxSs_SubcoreInitVtc().

void XV_HdmiTxSS_MaskDisable | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function will disable the video masking.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSS_MaskEnable | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function will enable the video masking.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSS_SetBackgroundColor().

void XV_HdmiTxSS_MaskNoise | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Enable
| ) |  |

This function will enable or disable the noise in the video mask.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.
  Enable | specifies TRUE/FALSE value to either enable or disable the Noise.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSS_SetBackgroundColor().

void XV_HdmiTxSS_MaskSetBlue | ( | XV_HdmiTxSs * | InstancePtr,
|  | u16 | Value
| ) |  |

This function will set the blue component in the video mask.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.
  Value | specifies the video mask value set to blue component

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSS_SetBackgroundColor().

void XV_HdmiTxSS_MaskSetGreen | ( | XV_HdmiTxSs * | InstancePtr,
|  | u16 | Value
| ) |  |

This function will set the green component in the video mask.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.
  Value | specifies the video mask value set to green component

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSS_SetBackgroundColor().

void XV_HdmiTxSS_MaskSetRed | ( | XV_HdmiTxSs * | InstancePtr,
|  | u16 | Value
| ) |  |

This function will set the red component in the video mask.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.
  Value | specifies the video mask value set to red component

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSS_SetBackgroundColor().

int XV_HdmiTxSs_ReadEdid | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 * | Buffer
| ) |  |

This function reads the HDMI Sink EDID.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr, and XV_HdmiTxSs::IsStreamConnected.

int XV_HdmiTxSs_ReadEdidSegment | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 * | Buffer,
|  | u8 | segment
| ) |  |

This function reads one block from the HDMI Sink EDID.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr, and XV_HdmiTxSs::IsStreamConnected.

Referenced by XV_HdmiTxSs_ShowEdid().

void XV_HdmiTxSs_RefClockChangeInit | ( | XV_HdmiTxSs * | InstancePtr | ) |

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

Parameters

  None. |

Returns
  None

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr, XV_HdmiTxSs_SYSRST(), XV_HdmiTxSs_TXCore_LRST(), XV_HdmiTxSs_TXCore_VRST(), and XV_HdmiTxSs_VRST().

void XV_HdmiTxSs_ReportInfo | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function prints the HDMI TX SS subcore versions.

Parameters

  None. |

Returns
  None.

Note
  None.

void XV_HdmiTxSs_Reset | ( | XV_HdmiTxSs * | 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_HDMITXSS_LOG_EVT_RESET, XV_HdmiTxSs_LogWrite(), XV_HdmiTxSs_SYSRST(), XV_HdmiTxSs_TXCore_LRST(), XV_HdmiTxSs_TXCore_VRST(), and XV_HdmiTxSs_VRST().

Referenced by XV_HdmiTxSs_CfgInitialize().

void XV_HdmiTxSs_SendAuxInfoframe | ( | XV_HdmiTxSs * | InstancePtr,
|  | void * | Aux
| ) |  |

This function sends audio info frames.

Parameters

  None. |

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

u32 XV_HdmiTxSs_SendGenericAuxInfoframe | ( | XV_HdmiTxSs * | InstancePtr,
|  | void * | Aux
| ) |  |

This function sends generic info frames.

Parameters

  None. |

Returns
  - XST_SUCCESS if infoframes transmitted successfully.
  - XST_FAILURE if AUX FIFO is full.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSS_SetAppVersion | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | maj,
|  | u8 | min
| ) |  |

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

Parameters

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

Returns
  void.

Note
  None.

References XV_HdmiTxSs::AppMajVer, and XV_HdmiTxSs::AppMinVer.

void XV_HdmiTxSs_SetAudioChannels | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | AudioChannels
| ) |  |

This function Sets the HDMI TX SS number of active audio channels.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  AudioChannels |

Returns
  None.

Note
  None.

References XV_HdmiTxSs::AudioChannels, XV_HdmiTxSs::AudioInfoframe, XV_HdmiTxSs::HdmiTxPtr, XV_HDMITXSS_LOG_EVT_SETAUDIOCHANNELS, and XV_HdmiTxSs_LogWrite().

void XV_HdmiTxSs_SetAudioFormat | ( | XV_HdmiTxSs * | InstancePtr,
|  | XV_HdmiTx_AudioFormatType | format
| ) |  |

This function Sets the HDMI TX SS Audio Format.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  format | 1:HBR 0:L-PCM

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSS_SetBackgroundColor | ( | XV_HdmiTxSs * | InstancePtr,
|  | XVMaskColorId | ColorId
| ) |  |

This function configures the background color for Video Masking Feature.

Parameters

  InstancePtr | is a pointer to the core instance to be worked on.
  ColorId | is the background color requested

Returns
  None

References XV_HdmiTxSs::HdmiTxPtr, XV_HdmiTxSs_GetVideoStream(), XV_HdmiTxSS_MaskEnable(), XV_HdmiTxSS_MaskNoise(), XV_HdmiTxSS_MaskSetBlue(), XV_HdmiTxSS_MaskSetGreen(), and XV_HdmiTxSS_MaskSetRed().

int XV_HdmiTxSs_SetCallback | ( | XV_HdmiTxSs * | InstancePtr,
|  | XV_HdmiTxSs_HandlerType | HandlerType,
|  | void * | CallbackFunc,
|  | void * | CallbackRef
| ) |  |

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

    HandlerType                     Callback Function Type
    -----------------------         ---------------------------------------------
    (XV_HDMITXSS_HANDLER_CONNECT)       HpdCallback
    (XV_HDMITXSS_HANDLER_VS)            VsCallback
    (XV_HDMITXSS_HANDLER_STREAM_DOWN)   StreamDownCallback
    (XV_HDMITXSS_HANDLER_STREAM_UP)     StreamUpCallback
    (XV_HDMITXSS_HANDLER_BRDGOVERFLOW)  BrdgOverflowCallback
    (XV_HDMITXSS_HANDLER_BRDGUNDERFLOW) BrdgUnderflowCallback
    (XV_HDMITXSS_HANDLER_HDCP_AUTHENTICATED)
    (XV_HDMITXSS_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE)
    (XV_HDMITXSS_HANDLER_HDCP_UNAUTHENTICATED)

Parameters

  InstancePtr | is a pointer to the HDMI TX 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_HdmiTxSs::BrdgOverflowCallback, XV_HdmiTxSs::BrdgOverflowRef, XV_HdmiTxSs::BrdgUnderflowCallback, XV_HdmiTxSs::BrdgUnderflowRef, XV_HdmiTxSs::BrdgUnlockedCallback, XV_HdmiTxSs::BrdgUnlockedRef, XV_HdmiTxSs::ConnectCallback, XV_HdmiTxSs::ConnectRef, XV_HdmiTxSs::StreamDownCallback, XV_HdmiTxSs::StreamDownRef, XV_HdmiTxSs::StreamUpCallback, XV_HdmiTxSs::StreamUpRef, XV_HdmiTxSs::ToggleCallback, XV_HdmiTxSs::ToggleRef, XV_HdmiTxSs::VsCallback, XV_HdmiTxSs::VsRef, XV_HDMITXSS_HANDLER_BRDGOVERFLOW, XV_HDMITXSS_HANDLER_BRDGUNDERFLOW, XV_HDMITXSS_HANDLER_BRDGUNLOCK, XV_HDMITXSS_HANDLER_CONNECT, XV_HDMITXSS_HANDLER_HDCP_AUTHENTICATED, XV_HDMITXSS_HANDLER_HDCP_DOWNSTREAM_TOPOLOGY_AVAILABLE, XV_HDMITXSS_HANDLER_HDCP_UNAUTHENTICATED, XV_HDMITXSS_HANDLER_STREAM_DOWN, XV_HDMITXSS_HANDLER_STREAM_UP, XV_HDMITXSS_HANDLER_TOGGLE, and XV_HDMITXSS_HANDLER_VS.

void XV_HdmiTxSs_SetDefaultPpc | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Id
| ) |  |

This function will set the default in HDF.

Parameters

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

Returns
  None.

Note
  None.

References XV_HdmiTxSs::Config, and XV_HdmiTxSs_Config::Ppc.

void XV_HdmiTxSS_SetDviMode | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function sets the core into DVI mode.

Parameters

  InstancePtr | is a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_SetVideoStreamType().

void XV_HdmiTxSs_SetGcpAvmuteBit | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function sets the HDMI TX AUX GCP register AVMUTE bit.

Parameters

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

Returns
  None

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSs_SetGcpClearAvmuteBit | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit.

Parameters

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

Returns
  None

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSS_SetHdmiMode | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function sets the core into HDMI mode.

Parameters

  InstancePtr | is a pointer to the HDMI TX Subsystem

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_SetVideoStreamType(), and XV_HdmiTxSs_SubcoreInitHdmiTx().

void XV_HdmiTxSS_SetHpdTolerance | ( | XV_HdmiTxSs * | InstancePtr,
|  | XV_HdmiTxSs_HpdToleranceType | Type,
|  | u16 | ToleranceVal
| ) |  |

This function will Configure Timegrid based on the tolerance value for HPD and Toggle event.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs core instance.
  Type | is the tolerance type.
  ToleranceVal | is the tolerance value to be applied.

Returns
  void.

Note
  None.

References XV_HdmiTxSs_Config::BaseAddress, and XV_HdmiTxSs::Config.

void XV_HdmiTxSs_SetPpc | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Id,
|  | u8 | Ppc
| ) |  |

This function will set PPC specified by user.

Parameters

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

Returns
  None.

Note
  None.

References XV_HdmiTxSs::Config, and XV_HdmiTxSs_Config::Ppc.

void XV_HdmiTxSs_SetSamplingRate | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | SamplingRate
| ) |  |

This function Sets the HDMI TX SS video Identification code.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  SamplingRate | Value

Returns
  None.

Note
  None.

References XV_HdmiTxSs::SamplingRate.

void XV_HdmiTxSs_SetScrambler | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Enable
| ) |  |

This function enables / disables the TX scrambler.

Parameters

  InstancePtr | is a pointer to the Subsystem instance to be worked on.
  Enable | TRUE:Enable scrambler FALSE:Disable scrambler

Returns
  None.

Note
  The scrambler setting will revert to the default behavior during the next stream configuration (scrambler is enabled for HDMI 2.0 video and disabled when the video is of HDMI 1.4 or lower)

References XV_HdmiTxSs::HdmiTxPtr, and XV_HdmiTxSs_SetVideoStreamScramblingFlag().

u32 XV_HdmiTxSs_SetStream | ( | XV_HdmiTxSs * | InstancePtr,
|  | XVidC_VideoMode | VideoMode,
|  | XVidC_ColorFormat | ColorFormat,
|  | XVidC_ColorDepth | Bpc,
|  | XVidC_3DInfo * | Info3D
| ) |  |

This function set HDMI TX susbsystem stream parameters.

Parameters

  None. |

Returns
  Calculated TMDS Clock

Note
  None.

References XV_HdmiTxSs::Config, XV_HdmiTxSs::HdmiTxPtr, XV_HdmiTxSs_Config::Ppc, XV_HDMITXSS_LOG_EVT_SETSTREAM, and XV_HdmiTxSs_LogWrite().

void XV_HdmiTxSs_SetTmdsClockRatio | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Ratio
| ) |  |

This function Sets the HDMI TX SS TMDS Cock Ratio.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  Ratio | 0 - 1/10, 1 - 1/40

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSs_SetVideoIDCode | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | Vic
| ) |  |

This function Sets the HDMI TX SS video Identification code.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  InstancePtr | VIC Flag Value

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSs_SetVideoStream | ( | XV_HdmiTxSs * | InstancePtr,
|  | XVidC_VideoStream | VidStream
| ) |  |

This function Sets the HDMI TX SS video stream.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  @return | XVidC_VideoStream pointer

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSs_SetVideoStreamScramblingFlag | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | IsScrambled
| ) |  |

This function Sets the HDMI TX SS video stream type.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  IsScrambled | 1:IsScrambled 0: not Scrambled

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_SetScrambler().

void XV_HdmiTxSs_SetVideoStreamScramblingOverrideFlag | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | OverrideScramble
| ) |  |

This function Sets the HDMI TX SS video stream scrambling behaviour.

Setting OverrideScramble to true will force enabling/disabling scrambling function based on the value of IsScrambled flag.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  OverrideScramble | 0: Scrambling is always enabled for HDMI 2.0 resolutions and is enabled /or disabled for HDMI 1.4 resolutions based on IsScrambled value 1: Enable scrambling if IsScrambled is TRUE and disable scrambling if IsScrambled is FALSE

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr.

void XV_HdmiTxSs_SetVideoStreamType | ( | XV_HdmiTxSs * | InstancePtr,
|  | u8 | StreamType
| ) |  |

This function Sets the HDMI TX SS video stream type.

Parameters

  InstancePtr | pointer to XV_HdmiTxSs instance
  InstancePtr | VIC Value 1:HDMI 0:DVI

Returns
  None.

Note
  None.

References XV_HdmiTxSs_AudioMute(), XV_HdmiTxSS_SetDviMode(), and XV_HdmiTxSS_SetHdmiMode().

void XV_HdmiTxSs_ShowEdid | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function shows the HDMI source edid.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::IsStreamConnected, and XV_HdmiTxSs_ReadEdidSegment().

void XV_HdmiTxSs_Start | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function starts the HDMI TX 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_HDMITXSS_LOG_EVT_START, and XV_HdmiTxSs_LogWrite().

void XV_HdmiTxSs_Stop | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function stops the HDMI TX 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_HdmiTxSs::VtcPtr, XV_HDMITXSS_LOG_EVT_STOP, and XV_HdmiTxSs_LogWrite().

void XV_HdmiTxSs_StreamStart | ( | XV_HdmiTxSs * | InstancePtr | ) |

This function starts the HDMI TX stream.

Returns
  None.

Note
  None.

References XV_HdmiTxSs::HdmiTxPtr, XV_HDMITXSS_LOG_EVT_STREAMSTART, and XV_HdmiTxSs_LogWrite().

void XV_HdmiTxSs_SYSRST | ( | XV_HdmiTxSs * | 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_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_RefClockChangeInit(), and XV_HdmiTxSs_Reset().

void XV_HdmiTxSs_TXCore_LRST | ( | XV_HdmiTxSs * | 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_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_RefClockChangeInit(), and XV_HdmiTxSs_Reset().

void XV_HdmiTxSs_TXCore_VRST | ( | XV_HdmiTxSs * | 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_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_RefClockChangeInit(), and XV_HdmiTxSs_Reset().

void XV_HdmiTxSs_VRST | ( | XV_HdmiTxSs * | 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_HdmiTxSs::HdmiTxPtr.

Referenced by XV_HdmiTxSs_RefClockChangeInit(), and XV_HdmiTxSs_Reset().