![]() |
v_hdmitx
Xilinx SDK Drivers API Documentation
|
This is the main header file for Xilinx HDMI TX core.
HDMI TX core is used for transmitting the incoming video and audio streams. It consists of
The HDMI TX uses three AXI interfaces for Video, Audio and Processor:
Transmitter core performs following operations:
AXI Video Bridge converts the incoming video AXI-stream to native video.
Video Timing Controller (VTC) generates the native video timing.
Core Features
For a full description of HDMI TX features, please see the hardware specification.
Software Initialization & Configuration
The application needs to do following steps in order for preparing the HDMI TX core to be ready.
Interrupts
This driver provides interrupt handlers
Application developer needs to register interrupt handler with the processor, within their examples. Whenever processor calls registered application's interrupt handler associated with interrupt id, application's interrupt handler needs to call appropriate peripheral interrupt handler reading peripheral's Status register.
This driver provides XV_HdmiTx_SetCallback API to register functions with HDMI TX core instance.
Virtual Memory
This driver supports Virtual Memory. The RTOS is responsible for calculating the correct device base address in Virtual Memory space.
Threads
This driver is not thread safe. Any needs for threads or thread mutual exclusion must be satisfied by the layer above this driver.
Asserts
Asserts are used within all Xilinx drivers to enforce constraints on argument values. Asserts can be turned off on a system-wide basis by defining at compile time, the NDEBUG identifier. By default, asserts are turned on and it is recommended that users leave asserts on during development.
Building the driver
The HDMI TX driver is composed of several source files. This allows the user to build and link only those parts of the driver that are necessary.
MODIFICATION HISTORY: s Ver Who Date Changes
1.00 10/07/15 Initial release. 1.1 yh 15/01/16 Add 3D Support 1.2 MG 09/03/16 Added XV_HdmiTx_SetHdmiMode and XV_HdmiTx_SetDviMode. Removed support for reduced blanking 1.3 YH 25/07/16 Used UINTPTR instead of u32 for BaseAddress XV_HdmiTx_Config XV_HdmiTx_CfgInitialize 1.4 YH 17/08/16 Added XV_HdmiTx_SetAxiClkFreq 1.5 YH 14/11/16 Added XV_HdmiTx_Bridge_yuv420 & XV_HdmiTx_Bridge_pixel mode macros 1.6 MG 28/03/17 Added XV_HdmiTx_Mask macros 1.7 YH 19/07/17 Added XV_HdmiTx_IsMasked macro 22/08/17 Added XV_HdmiTx_Audio_LPCM macro Added XV_HdmiTx_Audio_HBR macro 1.8 YH 06/10/17 Replaced XV_HdmiTx_Audio_LPCM and XV_HdmiTx_Audio_HBR macro with API XV_HdmiTx_SetAudioFormat Added XV_HdmiTx_GetAudioFormat 1.9 EB 24/10/17 Added enum XV_HdmiTx_AudioFormatType 1.10 MMO 19/12/17 Added XV_HdmiTx_SetTmdsClk API 2.0 EB 16/01/18 Updated function XV_HdmiTx_SetTmdsClk and renamed to XV_HdmiTx_ConfigTmdsClk Moved Vendor Specific InfoFrame related functions to HDMI Common library Deprecating XV_HdmiTx_VSIF_GeneratePacket, XV_HdmiTx_VSIF_DisplayInfo, XV_HdmiTx_VSIF_3DStructToString, XV_HdmiTx_VSIF_3DSampMethodToString and XV_HdmiTx_VSIF_3DSampPosToString APIs Moved VicTable, XV_HdmiTx_Aux to Hdmi Common library EB 24/01/18 Added OverrideHdmi14Scrambler to XV_HdmiTx_Stream 2.2 EB 03/08/18 Marked XV_HdmiTx_AudioMute and XV_HdmiTx_AudioUnmute as deprecated MMO 11/08/18 Added Bridge Overflow and Bridge Underflow (PIO IN)
Data Structures | |
struct | XV_HdmiTx_Config |
This typedef contains configuration information for the HDMI TX core. More... | |
struct | XV_HdmiTx_AudioStream |
This typedef contains audio stream specific data structure. More... | |
struct | XV_HdmiTx_Stream |
This typedef contains HDMI TX stream specific data structure. More... | |
struct | XV_HdmiTx |
The XV_HdmiTx driver instance data. More... | |
Macros | |
#define | XV_HDMITX_H_ |
Prevent circular inclusions by using protection macros. More... | |
Enumerations | |
Handler Types | |
enum | XV_HdmiTx_HandlerType |
These constants specify different types of handler and used to differentiate interrupt requests from peripheral. More... | |
HDMI TX stream status | |
enum | XV_HdmiTx_State |
HDMI TX audio format | |
#define | XV_HdmiTx_GetTime1Ms(InstancePtr) (InstancePtr)->Config.AxiLiteClkFreq/1000 |
This macro returns the clock cycles required to count up to 1MS with respect to AXI Lite Frequency. More... | |
#define | XV_HdmiTx_GetVersion(InstancePtr) |
This macro reads the TX version. More... | |
#define | XV_HdmiTx_Reset(InstancePtr, Reset) |
This macro asserts or releases the HDMI TX reset. More... | |
#define | XV_HdmiTx_SetScrambler(InstancePtr, SetClr) |
This macro controls the HDMI TX Scrambler. More... | |
#define | XV_HdmiTx_Bridge_yuv420(InstancePtr, SetClr) |
This macro controls the YUV420 mode for video bridge. More... | |
#define | XV_HdmiTx_Bridge_pixel(InstancePtr, SetClr) |
This macro controls the Pixel Repeat mode for video bridge. More... | |
#define | XV_HdmiTx_PioEnable(InstancePtr) |
This macro enables the HDMI TX PIO peripheral. More... | |
#define | XV_HdmiTx_PioDisable(InstancePtr) |
This macro disables the HDMI TX PIO peripheral. More... | |
#define | XV_HdmiTx_PioIntrEnable(InstancePtr) |
This macro enables interrupt in the HDMI TX PIO peripheral. More... | |
#define | XV_HdmiTx_PioIntrDisable(InstancePtr) |
This macro disables interrupt in the HDMI TX PIO peripheral. More... | |
#define | XV_HdmiTx_PioIntrClear(InstancePtr) |
This macro clears HDMI TX PIO interrupt. More... | |
#define | XV_HdmiTx_DdcEnable(InstancePtr) |
This macro enables the HDMI TX Display Data Channel (DDC) peripheral. More... | |
#define | XV_HdmiTx_DdcDisable(InstancePtr) |
This macro disables the HDMI TX Display Data Channel (DDC) peripheral. More... | |
#define | XV_HdmiTx_DdcIntrEnable(InstancePtr) |
This macro enables interrupt in the HDMI TX DDC peripheral. More... | |
#define | XV_HdmiTx_DdcIntrDisable(InstancePtr) |
This macro disables interrupt in the HDMI TX DDC peripheral. More... | |
#define | XV_HdmiTx_DdcIntrClear(InstancePtr) |
This macro clears HDMI TX DDC interrupt. More... | |
#define | XV_HdmiTx_AuxEnable(InstancePtr) |
This macro enables the HDMI TX Auxiliary (AUX) peripheral. More... | |
#define | XV_HdmiTx_AuxDisable(InstancePtr) |
This macro disables the HDMI TX Auxiliary (AUX) peripheral. More... | |
#define | XV_HdmiTx_AuxIntrEnable(InstancePtr) |
This macro enables interrupt in the HDMI TX AUX peripheral. More... | |
#define | XV_HdmiTx_AuxIntrDisable(InstancePtr) |
This macro disables interrupt in the HDMI TX AUX peripheral. More... | |
#define | XV_HdmiTx_AudioEnable(InstancePtr) |
This macro enables audio in HDMI TX core. More... | |
#define | XV_HdmiTx_AudioDisable(InstancePtr) |
This macro disables audio in HDMI TX core. More... | |
#define | XV_HdmiTx_AudioUnmute(InstancePtr) |
This macro unmutes audio in HDMI TX core. More... | |
#define | XV_HdmiTx_AudioMute(InstancePtr) |
This macro mutes audio in HDMI TX core. More... | |
#define | XV_HdmiTx_SetMode(InstancePtr) |
This macro sets the mode bit. More... | |
#define | XV_HdmiTx_ClearMode(InstancePtr) |
This macro clears the mode bit. More... | |
#define | XV_HdmiTx_GetMode(InstancePtr) |
This macro provides the current mode. More... | |
#define | XV_HdmiTx_GetSampleRate(InstancePtr) (InstancePtr)->Stream.SampleRate |
This macro provides the current sample rate. More... | |
#define | XV_HdmiTx_GetAudioChannels(InstancePtr) (InstancePtr)->Stream.Audio.Channels |
This macro provides the active audio channels. More... | |
#define | XV_HdmiTx_GetPixelPackingPhase(InstancePtr) |
This macro provides the current pixel packing phase. More... | |
#define | XV_HdmiTx_MaskDisable(InstancePtr) |
This macro disables video mask in HDMI TX core. More... | |
#define | XV_HdmiTx_MaskEnable(InstancePtr) |
This macro enables video mask in HDMI TX core. More... | |
#define | XV_HdmiTx_MaskNoise(InstancePtr, SetClr) |
This macro enables or disables the noise in the video mask. More... | |
#define | XV_HdmiTx_MaskSetRed(InstancePtr, Value) |
This macro sets the red component value in the video mask. More... | |
#define | XV_HdmiTx_MaskSetGreen(InstancePtr, Value) |
This macro sets the green component value in the video mask. More... | |
#define | XV_HdmiTx_MaskSetBlue(InstancePtr, Value) |
This macro sets the blue component value in the video mask. More... | |
#define | XV_HdmiTx_IsMasked(InstancePtr) |
This macro provides the current video mask mode. More... | |
enum | XV_HdmiTx_AudioFormatType |
typedef void(* | XV_HdmiTx_Callback )(void *CallbackRef) |
Callback type for Vsync event interrupt. More... | |
XV_HdmiTx_Config * | XV_HdmiTx_LookupConfig (u16 DeviceId) |
This function returns a reference to an XV_HdmiTx_Config structure based on the core id, DeviceId. More... | |
int | XV_HdmiTx_CfgInitialize (XV_HdmiTx *InstancePtr, XV_HdmiTx_Config *CfgPtr, UINTPTR EffectiveAddr) |
This function initializes the HDMI TX core. More... | |
void | XV_HdmiTx_SetHdmiMode (XV_HdmiTx *InstancePtr) |
This function sets the core into HDMI mode. More... | |
void | XV_HdmiTx_SetDviMode (XV_HdmiTx *InstancePtr) |
This function sets the core into DVI mode. More... | |
void | XV_HdmiTx_Clear (XV_HdmiTx *InstancePtr) |
This function clear the HDMI TX variables and sets it to the defaults. More... | |
u8 | XV_HdmiTx_GetVic (XVidC_VideoMode VideoMode) |
XVidC_VideoMode | XV_HdmiTx_GetVideoModeFromVic (u8 Vic) |
u32 | XV_HdmiTx_SetStream (XV_HdmiTx *InstancePtr, XVidC_VideoMode VideoMode, XVidC_ColorFormat ColorFormat, XVidC_ColorDepth Bpc, XVidC_PixelsPerClock Ppc, XVidC_3DInfo *Info3D) |
This function sets the HDMI TX stream parameters. More... | |
u32 | XV_HdmiTx_GetTmdsClk (XV_HdmiTx *InstancePtr, XVidC_VideoMode VideoMode, XVidC_ColorFormat ColorFormat, XVidC_ColorDepth Bpc) |
This function sets and return the TMDS Clock based on Video Parameter. More... | |
void | XV_HdmiTx_INT_VRST (XV_HdmiTx *InstancePtr, u8 Reset) |
This function asserts or releases the HDMI TX Internal VRST. More... | |
void | XV_HdmiTx_INT_LRST (XV_HdmiTx *InstancePtr, u8 Reset) |
This function asserts or releases the HDMI TX Internal LRST. More... | |
void | XV_HdmiTx_EXT_VRST (XV_HdmiTx *InstancePtr, u8 Reset) |
This function asserts or releases the HDMI TX External VRST. More... | |
void | XV_HdmiTx_EXT_SYSRST (XV_HdmiTx *InstancePtr, u8 Reset) |
This function asserts or releases the HDMI TX External SYSRST. More... | |
void | XV_HdmiTx_SetGcpAvmuteBit (XV_HdmiTx *InstancePtr) |
This function sets the HDMI TX AUX GCP register AVMUTE bit. More... | |
void | XV_HdmiTx_ClearGcpAvmuteBit (XV_HdmiTx *InstancePtr) |
This function clears the HDMI TX AUX GCP register AVMUTE bit. More... | |
void | XV_HdmiTx_SetGcpClearAvmuteBit (XV_HdmiTx *InstancePtr) |
This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More... | |
void | XV_HdmiTx_ClearGcpClearAvmuteBit (XV_HdmiTx *InstancePtr) |
This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More... | |
void | XV_HdmiTx_SetPixelRate (XV_HdmiTx *InstancePtr) |
This function sets the pixel rate at output. More... | |
void | XV_HdmiTx_SetSampleRate (XV_HdmiTx *InstancePtr, u8 SampleRate) |
This function sets the sample rate at output. More... | |
void | XV_HdmiTx_SetColorFormat (XV_HdmiTx *InstancePtr) |
This function sets the color format. More... | |
void | XV_HdmiTx_SetColorDepth (XV_HdmiTx *InstancePtr) |
This function sets the color depth. More... | |
int | XV_HdmiTx_IsStreamScrambled (XV_HdmiTx *InstancePtr) |
This function provides status of the stream. More... | |
int | XV_HdmiTx_IsStreamConnected (XV_HdmiTx *InstancePtr) |
This function provides the stream connected status. More... | |
void | XV_HdmiTx_SetAxiClkFreq (XV_HdmiTx *InstancePtr, u32 ClkFreq) |
This function sets the AXI4-Lite Clock Frequency. More... | |
void | XV_HdmiTx_DdcInit (XV_HdmiTx *InstancePtr, u32 Frequency) |
This function prepares TX DDC peripheral to use. More... | |
int | XV_HdmiTx_DdcWrite (XV_HdmiTx *InstancePtr, u8 Slave, u16 Length, u8 *Buffer, u8 Stop) |
This function writes data from DDC peripheral from given slave address. More... | |
int | XV_HdmiTx_DdcRead (XV_HdmiTx *InstancePtr, u8 Slave, u16 Length, u8 *Buffer, u8 Stop) |
This function reads data from DDC peripheral from given slave address. More... | |
u32 | XV_HdmiTx_AuxSend (XV_HdmiTx *InstancePtr) |
This function transmits the infoframes generated by the processor. More... | |
int | XV_HdmiTx_Scrambler (XV_HdmiTx *InstancePtr) |
This function controls the scrambler. More... | |
int | XV_HdmiTx_ClockRatio (XV_HdmiTx *InstancePtr) |
This function controls the TMDS clock ratio. More... | |
int | XV_HdmiTx_DetectHdmi20 (XV_HdmiTx *InstancePtr) |
This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device and sets appropriate flag in the TX stream. More... | |
void | XV_HdmiTx_ShowSCDC (XV_HdmiTx *InstancePtr) |
This function shows the sinks SCDC registers. More... | |
void | XV_HdmiTx_DebugInfo (XV_HdmiTx *InstancePtr) |
This function prints stream and timing information on STDIO/Uart console. More... | |
int | XV_HdmiTx_SetAudioChannels (XV_HdmiTx *InstancePtr, u8 Value) |
This function sets the active audio channels. More... | |
int | XV_HdmiTx_SetAudioFormat (XV_HdmiTx *InstancePtr, XV_HdmiTx_AudioFormatType Value) |
This function sets the active audio format. More... | |
XV_HdmiTx_AudioFormatType | XV_HdmiTx_GetAudioFormat (XV_HdmiTx *InstancePtr) |
This function gets the active audio format. More... | |
int | XV_HdmiTx_SelfTest (XV_HdmiTx *InstancePtr) |
This function reads ID of HDMI TX PIO peripheral. More... | |
void | XV_HdmiTx_IntrHandler (void *InstancePtr) |
This function is the interrupt handler for the HDMI TX driver. More... | |
int | XV_HdmiTx_SetCallback (XV_HdmiTx *InstancePtr, XV_HdmiTx_HandlerType HandlerType, void *CallbackFunc, void *CallbackRef) |
This function installs an asynchronous callback function for the given HandlerType: More... | |
int | XV_HdmiTx_VSIF_GeneratePacket (XV_HdmiTx_VSIF *VSIFPtr, XHdmiC_Aux *AuxPtr) |
This function generates a Vendor Specific InfoFrame (VSIF). More... | |
void | XV_HdmiTx_VSIF_DisplayInfo (XV_HdmiTx_VSIF *VSIFPtr) |
This function displays the contents of an XV_HdmiTx_VSIF instance. More... | |
char * | XV_HdmiTx_VSIF_3DStructToString (XV_HdmiTx_3D_Struct_Field Item) |
This function returns a string representation of the enumerated type XV_HdmiTx_3D_Struct_Field. More... | |
char * | XV_HdmiTx_VSIF_3DSampMethodToString (XV_HdmiTx_3D_Sampling_Method Item) |
This function returns a string representation of the enumerated type XV_HdmiTx_3D_Sampling_Method. More... | |
char * | XV_HdmiTx_VSIF_3DSampPosToString (XV_HdmiTx_3D_Sampling_Position Item) |
This function returns a string representation of the enumerated type XV_HdmiTx_3D_Sampling_Position. More... | |
#define XV_HdmiTx_AudioDisable | ( | InstancePtr | ) |
This macro disables audio in HDMI TX core.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize(), and XV_HdmiTx_SetDviMode().
#define XV_HdmiTx_AudioEnable | ( | InstancePtr | ) |
This macro enables audio in HDMI TX core.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_SetHdmiMode().
#define XV_HdmiTx_AudioMute | ( | InstancePtr | ) |
This macro mutes audio in HDMI TX core.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_AudioUnmute | ( | InstancePtr | ) |
This macro unmutes audio in HDMI TX core.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_AuxDisable | ( | InstancePtr | ) |
This macro disables the HDMI TX Auxiliary (AUX) peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize(), and XV_HdmiTx_SetDviMode().
#define XV_HdmiTx_AuxEnable | ( | InstancePtr | ) |
This macro enables the HDMI TX Auxiliary (AUX) peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_SetHdmiMode().
#define XV_HdmiTx_AuxIntrDisable | ( | InstancePtr | ) |
This macro disables interrupt in the HDMI TX AUX peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_AuxIntrEnable | ( | InstancePtr | ) |
This macro enables interrupt in the HDMI TX AUX peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_Bridge_pixel | ( | InstancePtr, | |
SetClr | |||
) |
This macro controls the Pixel Repeat mode for video bridge.
InstancePtr | is a pointer to the XHdmi_Tx core instance. |
SetClr | specifies TRUE/FALSE value to either enable or disable the Pixel Repitition Support. |
#define XV_HdmiTx_Bridge_yuv420 | ( | InstancePtr, | |
SetClr | |||
) |
This macro controls the YUV420 mode for video bridge.
InstancePtr | is a pointer to the XHdmi_Tx core instance. |
SetClr | specifies TRUE/FALSE value to either enable or disable the YUV 420 Support. |
#define XV_HdmiTx_ClearMode | ( | InstancePtr | ) |
This macro clears the mode bit.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_SetDviMode().
#define XV_HdmiTx_DdcDisable | ( | InstancePtr | ) |
This macro disables the HDMI TX Display Data Channel (DDC) peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize(), XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
#define XV_HdmiTx_DdcEnable | ( | InstancePtr | ) |
This macro enables the HDMI TX Display Data Channel (DDC) peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
#define XV_HdmiTx_DdcIntrClear | ( | InstancePtr | ) |
This macro clears HDMI TX DDC interrupt.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize().
#define XV_HdmiTx_DdcIntrDisable | ( | InstancePtr | ) |
This macro disables interrupt in the HDMI TX DDC peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
#define XV_HdmiTx_DdcIntrEnable | ( | InstancePtr | ) |
This macro enables interrupt in the HDMI TX DDC peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_GetAudioChannels | ( | InstancePtr | ) | (InstancePtr)->Stream.Audio.Channels |
This macro provides the active audio channels.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_GetMode | ( | InstancePtr | ) |
This macro provides the current mode.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_GetPixelPackingPhase | ( | InstancePtr | ) |
This macro provides the current pixel packing phase.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_GetSampleRate | ( | InstancePtr | ) | (InstancePtr)->Stream.SampleRate |
This macro provides the current sample rate.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_GetTime1Ms | ( | InstancePtr | ) | (InstancePtr)->Config.AxiLiteClkFreq/1000 |
This macro returns the clock cycles required to count up to 1MS with respect to AXI Lite Frequency.
InstancePtr | is a pointer to the XV_HdmiTX core instance. |
Referenced by XV_HdmiTx_CfgInitialize().
#define XV_HdmiTx_GetVersion | ( | InstancePtr | ) |
This macro reads the TX version.
InstancePtr | is a pointer to the XV_HdmiTX core instance. |
#define XV_HDMITX_H_ |
Prevent circular inclusions by using protection macros.
#define XV_HdmiTx_IsMasked | ( | InstancePtr | ) |
This macro provides the current video mask mode.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_MaskDisable | ( | InstancePtr | ) |
This macro disables video mask in HDMI TX core.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_MaskEnable | ( | InstancePtr | ) |
This macro enables video mask in HDMI TX core.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
#define XV_HdmiTx_MaskNoise | ( | InstancePtr, | |
SetClr | |||
) |
This macro enables or disables the noise in the video mask.
InstancePtr | is a pointer to the XHdmi_Tx core instance. |
SetClr | specifies TRUE/FALSE value to either enable or disable the Noise. |
#define XV_HdmiTx_MaskSetBlue | ( | InstancePtr, | |
Value | |||
) |
This macro sets the blue component value in the video mask.
InstancePtr | is a pointer to the XHdmi_Tx core instance. |
Value |
#define XV_HdmiTx_MaskSetGreen | ( | InstancePtr, | |
Value | |||
) |
This macro sets the green component value in the video mask.
InstancePtr | is a pointer to the XHdmi_Tx core instance. |
Value |
#define XV_HdmiTx_MaskSetRed | ( | InstancePtr, | |
Value | |||
) |
This macro sets the red component value in the video mask.
InstancePtr | is a pointer to the XHdmi_Tx core instance. |
Value |
#define XV_HdmiTx_PioDisable | ( | InstancePtr | ) |
This macro disables the HDMI TX PIO peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize().
#define XV_HdmiTx_PioEnable | ( | InstancePtr | ) |
This macro enables the HDMI TX PIO peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize().
#define XV_HdmiTx_PioIntrClear | ( | InstancePtr | ) |
This macro clears HDMI TX PIO interrupt.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize().
#define XV_HdmiTx_PioIntrDisable | ( | InstancePtr | ) |
This macro disables interrupt in the HDMI TX PIO peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
#define XV_HdmiTx_PioIntrEnable | ( | InstancePtr | ) |
This macro enables interrupt in the HDMI TX PIO peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize(), XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
#define XV_HdmiTx_Reset | ( | InstancePtr, | |
Reset | |||
) |
This macro asserts or releases the HDMI TX reset.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Reset | specifies TRUE/FALSE value to either assert or release HDMI TX reset. |
#define XV_HdmiTx_SetMode | ( | InstancePtr | ) |
This macro sets the mode bit.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_SetHdmiMode().
#define XV_HdmiTx_SetScrambler | ( | InstancePtr, | |
SetClr | |||
) |
This macro controls the HDMI TX Scrambler.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
SetClr | specifies TRUE/FALSE value to either set ON or clear Scrambler. |
Referenced by XV_HdmiTx_Scrambler().
typedef void(* XV_HdmiTx_Callback)(void *CallbackRef) |
Callback type for Vsync event interrupt.
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. |
These constants specify different types of handler and used to differentiate interrupt requests from peripheral.
u32 XV_HdmiTx_AuxSend | ( | XV_HdmiTx * | InstancePtr | ) |
This function transmits the infoframes generated by the processor.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx::Aux, XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HDMITX_AUX_DAT_OFFSET, XV_HDMITX_AUX_STA_FIFO_FUL_MASK, XV_HDMITX_AUX_STA_OFFSET, XV_HDMITX_AUX_STA_PKT_RDY_MASK, XV_HdmiTx_ReadReg, and XV_HdmiTx_WriteReg.
int XV_HdmiTx_CfgInitialize | ( | XV_HdmiTx * | InstancePtr, |
XV_HdmiTx_Config * | CfgPtr, | ||
UINTPTR | EffectiveAddr | ||
) |
This function initializes the HDMI TX core.
This function must be called prior to using the HDMI TX core. Initialization of the HDMI TX includes setting up the instance data and ensuring the hardware is in a quiescent state.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
CfgPtr | points to the configuration structure associated with the HDMI TX core. |
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. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HdmiTx::ConnectCallback, XV_HdmiTx::IsConnectCallbackSet, XV_HdmiTx_Stream::IsConnected, XV_HdmiTx::IsReady, XV_HdmiTx::IsStreamDownCallbackSet, XV_HdmiTx::IsStreamUpCallbackSet, XV_HdmiTx::IsToggleCallbackSet, XV_HdmiTx::IsVsCallbackSet, XV_HdmiTx_Stream::OverrideScrambler, XV_HdmiTx_Stream::State, XV_HdmiTx::Stream, XV_HdmiTx::StreamDownCallback, XV_HdmiTx::StreamUpCallback, XV_HdmiTx::ToggleCallback, XV_HdmiTx::VsCallback, XV_HdmiTx_AudioDisable, XV_HdmiTx_AuxDisable, XV_HdmiTx_Clear(), XV_HDMITX_CONNECT_CONF_OFFSET, XV_HdmiTx_DdcDisable, XV_HdmiTx_DdcIntrClear, XV_HdmiTx_GetTime1Ms, XV_HDMITX_HPD_TIMEGRID_OFFSET, XV_HDMITX_MASK_16, XV_HDMITX_PIO_ID, XV_HDMITX_PIO_ID_OFFSET, XV_HDMITX_PIO_IN_BRDG_LOCKED_MASK, XV_HDMITX_PIO_IN_BRDG_OVERFLOW_MASK, XV_HDMITX_PIO_IN_BRDG_UNDERFLOW_MASK, XV_HDMITX_PIO_IN_EVT_FE_OFFSET, XV_HDMITX_PIO_IN_EVT_RE_OFFSET, XV_HDMITX_PIO_IN_HPD_MASK, XV_HDMITX_PIO_IN_HPD_TOGGLE_MASK, XV_HDMITX_PIO_IN_LNK_RDY_MASK, XV_HDMITX_PIO_IN_VS_MASK, XV_HdmiTx_PioDisable, XV_HdmiTx_PioEnable, XV_HdmiTx_PioIntrClear, XV_HdmiTx_PioIntrEnable, XV_HdmiTx_ReadReg, XV_HdmiTx_SetHdmiMode(), XV_HDMITX_SHIFT_16, XV_HDMITX_TOGGLE_CONF_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_Clear | ( | XV_HdmiTx * | InstancePtr | ) |
This function clear the HDMI TX variables and sets it to the defaults.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Referenced by XV_HdmiTx_CfgInitialize().
void XV_HdmiTx_ClearGcpAvmuteBit | ( | XV_HdmiTx * | InstancePtr | ) |
This function clears the HDMI TX AUX GCP register AVMUTE bit.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_PIO_OUT_CLR_OFFSET, XV_HDMITX_PIO_OUT_GCP_AVMUTE_MASK, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_ClearGcpClearAvmuteBit | ( | XV_HdmiTx * | InstancePtr | ) |
This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_PIO_OUT_CLR_OFFSET, XV_HDMITX_PIO_OUT_GCP_CLEARAVMUTE_MASK, and XV_HdmiTx_WriteReg.
int XV_HdmiTx_ClockRatio | ( | XV_HdmiTx * | InstancePtr | ) |
This function controls the TMDS clock ratio.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsHdmi20, XV_HdmiTx::Stream, XV_HdmiTx_Stream::TMDSClockRatio, XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
Referenced by XV_HdmiTx_SetStream().
void XV_HdmiTx_DdcInit | ( | XV_HdmiTx * | InstancePtr, |
u32 | Frequency | ||
) |
This function prepares TX DDC peripheral to use.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Frequency | specifies the value that needs to be set. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HDMITX_DDC_CTRL_CLK_DIV_MASK, XV_HDMITX_DDC_CTRL_OFFSET, and XV_HdmiTx_WriteReg.
Referenced by XV_HdmiTx_SetAxiClkFreq().
int XV_HdmiTx_DdcRead | ( | XV_HdmiTx * | InstancePtr, |
u8 | Slave, | ||
u16 | Length, | ||
u8 * | Buffer, | ||
u8 | Stop | ||
) |
This function reads data from DDC peripheral from given slave address.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Slave | specifies the slave address from where data needs to be read. |
Length | specifies number of bytes to be read. |
Buffer | specifies a pointer to u8 variable that will be filled with data. |
Stop | specifies the stop flag which is either TRUE/FALSE. |
References XV_HDMITX_DDC_CMD_RD_TOKEN, XV_HDMITX_DDC_CMD_STP_TOKEN, XV_HDMITX_DDC_CMD_STR_TOKEN, XV_HDMITX_DDC_CMD_WR_TOKEN, XV_HdmiTx_DdcDisable, XV_HdmiTx_DdcEnable, XV_HdmiTx_DdcGetAck(), XV_HdmiTx_DdcIntrDisable, XV_HdmiTx_DdcReadData(), XV_HdmiTx_DdcWaitForDone(), XV_HdmiTx_DdcWriteCommand(), XV_HdmiTx_PioIntrDisable, and XV_HdmiTx_PioIntrEnable.
Referenced by XV_HdmiTx_ClockRatio(), XV_HdmiTx_Scrambler(), and XV_HdmiTx_ShowSCDC().
int XV_HdmiTx_DdcWrite | ( | XV_HdmiTx * | InstancePtr, |
u8 | Slave, | ||
u16 | Length, | ||
u8 * | Buffer, | ||
u8 | Stop | ||
) |
This function writes data from DDC peripheral from given slave address.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Slave | specifies the slave address from where data needs to be read. |
Length | specifies number of bytes to be read. |
Buffer | specifies a pointer to u8 variable that will be filled with data. |
Stop | specifies the stop flag which is either TRUE/FALSE. |
References XV_HDMITX_DDC_CMD_STP_TOKEN, XV_HDMITX_DDC_CMD_STR_TOKEN, XV_HDMITX_DDC_CMD_WR_TOKEN, XV_HdmiTx_DdcDisable, XV_HdmiTx_DdcEnable, XV_HdmiTx_DdcGetAck(), XV_HdmiTx_DdcIntrDisable, XV_HdmiTx_DdcWaitForDone(), XV_HdmiTx_DdcWriteCommand(), XV_HdmiTx_PioIntrDisable, and XV_HdmiTx_PioIntrEnable.
Referenced by XV_HdmiTx_ClockRatio(), XV_HdmiTx_DetectHdmi20(), XV_HdmiTx_Scrambler(), and XV_HdmiTx_ShowSCDC().
void XV_HdmiTx_DebugInfo | ( | XV_HdmiTx * | InstancePtr | ) |
This function prints stream and timing information on STDIO/Uart console.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx::Stream, and XV_HdmiTx_Stream::Video.
int XV_HdmiTx_DetectHdmi20 | ( | XV_HdmiTx * | InstancePtr | ) |
This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device and sets appropriate flag in the TX stream.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsHdmi20, XV_HdmiTx::Stream, and XV_HdmiTx_DdcWrite().
void XV_HdmiTx_EXT_SYSRST | ( | XV_HdmiTx * | InstancePtr, |
u8 | Reset | ||
) |
This function asserts or releases the HDMI TX External SYSRST.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Reset | specifies TRUE/FALSE value to either assert or release HDMI TX External SYSRST. |
References XV_HDMITX_PIO_OUT_CLR_OFFSET, XV_HDMITX_PIO_OUT_EXT_SYSRST_MASK, XV_HDMITX_PIO_OUT_SET_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_EXT_VRST | ( | XV_HdmiTx * | InstancePtr, |
u8 | Reset | ||
) |
This function asserts or releases the HDMI TX External VRST.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Reset | specifies TRUE/FALSE value to either assert or release HDMI TX External VRST. |
References XV_HDMITX_PIO_OUT_CLR_OFFSET, XV_HDMITX_PIO_OUT_EXT_VRST_MASK, XV_HDMITX_PIO_OUT_SET_OFFSET, and XV_HdmiTx_WriteReg.
XV_HdmiTx_AudioFormatType XV_HdmiTx_GetAudioFormat | ( | XV_HdmiTx * | InstancePtr | ) |
This function gets the active audio format.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_AUD_CTRL_AUDFMT_MASK, XV_HDMITX_AUD_CTRL_AUDFMT_SHIFT, XV_HDMITX_AUD_CTRL_OFFSET, and XV_HdmiTx_ReadReg.
u32 XV_HdmiTx_GetTmdsClk | ( | XV_HdmiTx * | InstancePtr, |
XVidC_VideoMode | VideoMode, | ||
XVidC_ColorFormat | ColorFormat, | ||
XVidC_ColorDepth | Bpc | ||
) |
This function sets and return the TMDS Clock based on Video Parameter.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
VideoMode | specifies resolution identifier. |
ColorFormat | specifies the type of color format.
|
Bpc | specifies the color depth/bits per color component.
|
References XV_HdmiTx_Stream::PixelClk, and XV_HdmiTx::Stream.
Referenced by XV_HdmiTx_SetStream().
void XV_HdmiTx_INT_LRST | ( | XV_HdmiTx * | InstancePtr, |
u8 | Reset | ||
) |
This function asserts or releases the HDMI TX Internal LRST.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Reset | specifies TRUE/FALSE value to either assert or release HDMI TX Internal LRST. |
References XV_HDMITX_PIO_OUT_CLR_OFFSET, XV_HDMITX_PIO_OUT_INT_LRST_MASK, XV_HDMITX_PIO_OUT_SET_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_INT_VRST | ( | XV_HdmiTx * | InstancePtr, |
u8 | Reset | ||
) |
This function asserts or releases the HDMI TX Internal VRST.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
Reset | specifies TRUE/FALSE value to either assert or release HDMI TX Internal VRST. |
References XV_HDMITX_PIO_OUT_CLR_OFFSET, XV_HDMITX_PIO_OUT_INT_VRST_MASK, XV_HDMITX_PIO_OUT_SET_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_IntrHandler | ( | void * | InstancePtr | ) |
This function is the interrupt handler for the HDMI TX driver.
This handler reads the pending interrupt from PIO and DDC peripheral, determines the source of the interrupts, clears the interrupts and calls callbacks accordingly.
The application is responsible for connecting this function to the interrupt system. Application beyond this driver is also responsible for providing callbacks to handle interrupts and installing the callbacks using XV_HdmiTx_SetCallback() during initialization phase. An example delivered with this driver demonstrates how this could be done.
InstancePtr | is a pointer to the XV_HdmiTx instance that just interrupted. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HdmiTx::IsReady, XV_HDMITX_DDC_STA_IRQ_MASK, XV_HDMITX_DDC_STA_OFFSET, XV_HDMITX_PIO_STA_IRQ_MASK, XV_HDMITX_PIO_STA_OFFSET, and XV_HdmiTx_ReadReg.
int XV_HdmiTx_IsStreamConnected | ( | XV_HdmiTx * | InstancePtr | ) |
This function provides the stream connected status.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsConnected, and XV_HdmiTx::Stream.
int XV_HdmiTx_IsStreamScrambled | ( | XV_HdmiTx * | InstancePtr | ) |
This function provides status of the stream.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsScrambled, and XV_HdmiTx::Stream.
XV_HdmiTx_Config* XV_HdmiTx_LookupConfig | ( | u16 | DeviceId | ) |
This function returns a reference to an XV_HdmiTx_Config structure based on the core id, DeviceId.
The return value will refer to an entry in the device configuration table defined in the xv_hdmitx_g.c file.
DeviceId | is the unique core ID of the HDMI TX core for the lookup operation. |
int XV_HdmiTx_Scrambler | ( | XV_HdmiTx * | InstancePtr | ) |
This function controls the scrambler.
Requires TMDSClock to be up to date in order to force enable scrambler when TMDSClock > 340MHz.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsHdmi20, XV_HdmiTx_Stream::IsScrambled, XV_HdmiTx_Stream::OverrideScrambler, XV_HdmiTx::Stream, XV_HdmiTx_Stream::TMDSClock, XV_HdmiTx_DdcRead(), XV_HdmiTx_DdcWrite(), and XV_HdmiTx_SetScrambler.
Referenced by XV_HdmiTx_SetStream().
int XV_HdmiTx_SelfTest | ( | XV_HdmiTx * | InstancePtr | ) |
This function reads ID of HDMI TX PIO peripheral.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HDMITX_MASK_16, XV_HDMITX_PIO_ID, XV_HDMITX_PIO_ID_OFFSET, XV_HdmiTx_ReadReg, and XV_HDMITX_SHIFT_16.
int XV_HdmiTx_SetAudioChannels | ( | XV_HdmiTx * | InstancePtr, |
u8 | Value | ||
) |
This function sets the active audio channels.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_AUD_CTRL_CH_SHIFT, XV_HDMITX_AUD_CTRL_CLR_OFFSET, XV_HDMITX_AUD_CTRL_OFFSET, XV_HDMITX_AUD_CTRL_RUN_MASK, XV_HDMITX_AUD_CTRL_SET_OFFSET, XV_HdmiTx_ReadReg, and XV_HdmiTx_WriteReg.
int XV_HdmiTx_SetAudioFormat | ( | XV_HdmiTx * | InstancePtr, |
XV_HdmiTx_AudioFormatType | Value | ||
) |
This function sets the active audio format.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_AUD_CTRL_AUDFMT_MASK, XV_HDMITX_AUD_CTRL_CLR_OFFSET, XV_HDMITX_AUD_CTRL_RUN_MASK, XV_HDMITX_AUD_CTRL_SET_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_SetAxiClkFreq | ( | XV_HdmiTx * | InstancePtr, |
u32 | ClkFreq | ||
) |
This function sets the AXI4-Lite Clock Frequency.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
ClkFreq | specifies the value that needs to be set. |
References XV_HdmiTx_DdcInit().
int XV_HdmiTx_SetCallback | ( | XV_HdmiTx * | InstancePtr, |
XV_HdmiTx_HandlerType | HandlerType, | ||
void * | CallbackFunc, | ||
void * | CallbackRef | ||
) |
This function installs an asynchronous callback function for the given HandlerType:
HandlerType Callback Function Type ----------------------- -------------------------------------------------- (XV_HDMITX_HANDLER_HPD) HpdCallback (XV_HDMITX_HANDLER_VS) VsCallback
InstancePtr | is a pointer to the HDMI TX core 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. |
References XV_HdmiTx::BrdgOverflowCallback, XV_HdmiTx::BrdgOverflowRef, XV_HdmiTx::BrdgUnderflowCallback, XV_HdmiTx::BrdgUnderflowRef, XV_HdmiTx::BrdgUnlockedCallback, XV_HdmiTx::BrdgUnlockedRef, XV_HdmiTx::ConnectCallback, XV_HdmiTx::ConnectRef, XV_HdmiTx::IsBrdgOverflowCallbackSet, XV_HdmiTx::IsBrdgUnderflowCallbackSet, XV_HdmiTx::IsBrdgUnlockedCallbackSet, XV_HdmiTx::IsConnectCallbackSet, XV_HdmiTx::IsStreamDownCallbackSet, XV_HdmiTx::IsStreamUpCallbackSet, XV_HdmiTx::IsToggleCallbackSet, XV_HdmiTx::IsVsCallbackSet, XV_HdmiTx::StreamDownCallback, XV_HdmiTx::StreamDownRef, XV_HdmiTx::StreamUpCallback, XV_HdmiTx::StreamUpRef, XV_HdmiTx::ToggleCallback, XV_HdmiTx::ToggleRef, XV_HdmiTx::VsCallback, and XV_HdmiTx::VsRef.
void XV_HdmiTx_SetColorDepth | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the color depth.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HdmiTx::Stream, XV_HdmiTx_Stream::Video, XV_HDMITX_PIO_OUT_COLOR_DEPTH_MASK, XV_HDMITX_PIO_OUT_COLOR_DEPTH_SHIFT, XV_HDMITX_PIO_OUT_MSK_OFFSET, XV_HDMITX_PIO_OUT_OFFSET, and XV_HdmiTx_WriteReg.
Referenced by XV_HdmiTx_SetStream().
void XV_HdmiTx_SetColorFormat | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the color format.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HdmiTx::Stream, XV_HdmiTx_Stream::Video, XV_HDMITX_PIO_OUT_COLOR_SPACE_MASK, XV_HDMITX_PIO_OUT_COLOR_SPACE_SHIFT, XV_HDMITX_PIO_OUT_MSK_OFFSET, XV_HDMITX_PIO_OUT_OFFSET, and XV_HdmiTx_WriteReg.
Referenced by XV_HdmiTx_SetStream().
void XV_HdmiTx_SetDviMode | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the core into DVI mode.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsHdmi, XV_HdmiTx::Stream, XV_HdmiTx_AudioDisable, XV_HdmiTx_AuxDisable, and XV_HdmiTx_ClearMode.
void XV_HdmiTx_SetGcpAvmuteBit | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the HDMI TX AUX GCP register AVMUTE bit.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_PIO_OUT_GCP_AVMUTE_MASK, XV_HDMITX_PIO_OUT_SET_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_SetGcpClearAvmuteBit | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HDMITX_PIO_OUT_GCP_CLEARAVMUTE_MASK, XV_HDMITX_PIO_OUT_SET_OFFSET, and XV_HdmiTx_WriteReg.
void XV_HdmiTx_SetHdmiMode | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the core into HDMI mode.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Stream::IsHdmi, XV_HdmiTx::Stream, XV_HdmiTx_AudioEnable, XV_HdmiTx_AuxEnable, and XV_HdmiTx_SetMode.
Referenced by XV_HdmiTx_CfgInitialize().
void XV_HdmiTx_SetPixelRate | ( | XV_HdmiTx * | InstancePtr | ) |
This function sets the pixel rate at output.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HdmiTx::Stream, XV_HdmiTx_Stream::Video, XV_HDMITX_PIO_OUT_MSK_OFFSET, XV_HDMITX_PIO_OUT_OFFSET, XV_HDMITX_PIO_OUT_PIXEL_RATE_MASK, XV_HDMITX_PIO_OUT_PIXEL_RATE_SHIFT, and XV_HdmiTx_WriteReg.
Referenced by XV_HdmiTx_SetStream().
void XV_HdmiTx_SetSampleRate | ( | XV_HdmiTx * | InstancePtr, |
u8 | SampleRate | ||
) |
This function sets the sample rate at output.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
SampleRate | specifies the value that needs to be set.
|
References XV_HdmiTx_Config::BaseAddress, XV_HdmiTx::Config, XV_HdmiTx_Stream::SampleRate, XV_HdmiTx::Stream, XV_HDMITX_PIO_OUT_MSK_OFFSET, XV_HDMITX_PIO_OUT_OFFSET, XV_HDMITX_PIO_OUT_SAMPLE_RATE_MASK, XV_HDMITX_PIO_OUT_SAMPLE_RATE_SHIFT, and XV_HdmiTx_WriteReg.
u32 XV_HdmiTx_SetStream | ( | XV_HdmiTx * | InstancePtr, |
XVidC_VideoMode | VideoMode, | ||
XVidC_ColorFormat | ColorFormat, | ||
XVidC_ColorDepth | Bpc, | ||
XVidC_PixelsPerClock | Ppc, | ||
XVidC_3DInfo * | Info3D | ||
) |
This function sets the HDMI TX stream parameters.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
VideoMode | specifies resolution identifier. |
ColorFormat | specifies the type of color format.
|
Bpc | specifies the color depth/bits per color component.
|
Ppc | specifies the pixel per clock.
|
In HDMI the colordepth in YUV422 is always 12 bits, although on the link itself it is being transmitted as 8-bits. Therefore if the colorspace is YUV422, then force the colordepth to 12 bits.
References XV_HdmiTx_Stream::IsHdmi20, XV_HdmiTx_Stream::IsScrambled, XV_HdmiTx::Stream, XV_HdmiTx_Stream::TMDSClock, XV_HdmiTx_Stream::TMDSClockRatio, XV_HdmiTx_Stream::Vic, XV_HdmiTx_Stream::Video, XV_HdmiTx_ClockRatio(), XV_HdmiTx_GetTmdsClk(), XV_HdmiTx_LookupVic(), XV_HdmiTx_Scrambler(), XV_HdmiTx_SetColorDepth(), XV_HdmiTx_SetColorFormat(), and XV_HdmiTx_SetPixelRate().
void XV_HdmiTx_ShowSCDC | ( | XV_HdmiTx * | InstancePtr | ) |
This function shows the sinks SCDC registers.
InstancePtr | is a pointer to the XV_HdmiTx core instance. |
References XV_HdmiTx_DdcRead(), and XV_HdmiTx_DdcWrite().
char* XV_HdmiTx_VSIF_3DSampMethodToString | ( | XV_HdmiTx_3D_Sampling_Method | Item | ) |
This function returns a string representation of the enumerated type XV_HdmiTx_3D_Sampling_Method.
Item | specifies the value to convert. |
References XV_HDMITX_3D_SAMPLING_HORIZONTAL, and XV_HDMITX_3D_SAMPLING_QUINCUNX.
Referenced by XV_HdmiTx_VSIF_DisplayInfo().
char* XV_HdmiTx_VSIF_3DSampPosToString | ( | XV_HdmiTx_3D_Sampling_Position | Item | ) |
This function returns a string representation of the enumerated type XV_HdmiTx_3D_Sampling_Position.
Item | specifies the value to convert. |
References XV_HDMITX_3D_SAMPPOS_ELER, XV_HDMITX_3D_SAMPPOS_ELOR, XV_HDMITX_3D_SAMPPOS_OLER, and XV_HDMITX_3D_SAMPPOS_OLOR.
Referenced by XV_HdmiTx_VSIF_DisplayInfo().
char* XV_HdmiTx_VSIF_3DStructToString | ( | XV_HdmiTx_3D_Struct_Field | Item | ) |
This function returns a string representation of the enumerated type XV_HdmiTx_3D_Struct_Field.
Item | specifies the value to convert. |
References XV_HDMITX_3D_STRUCT_FIELD_ALTERNATIVE, XV_HDMITX_3D_STRUCT_FRAME_PACKING, XV_HDMITX_3D_STRUCT_L_DEPTH, XV_HDMITX_3D_STRUCT_L_DEPTH_GRAPH_GDEPTH, XV_HDMITX_3D_STRUCT_LINE_ALTERNATIVE, XV_HDMITX_3D_STRUCT_SIDE_BY_SIDE_FULL, XV_HDMITX_3D_STRUCT_SIDE_BY_SIDE_HALF, and XV_HDMITX_3D_STRUCT_TOP_AND_BOTTOM.
Referenced by XV_HdmiTx_VSIF_DisplayInfo().
void XV_HdmiTx_VSIF_DisplayInfo | ( | XV_HdmiTx_VSIF * | VSIFPtr | ) |
This function displays the contents of an XV_HdmiTx_VSIF instance.
VSIFPtr | is a pointer to the XV_HdmiTx_VSIF instance. |
References XV_HdmiTx_VSIF::Format, XV_HdmiTx_VSIF::HDMI_VIC, XV_HdmiTx_VSIF::Info_3D, XV_HdmiTx_3D_MetaData::IsPresent, XV_HdmiTx_3D_Info::MetaData, XV_HDMITX_3D_STRUCT_SIDE_BY_SIDE_HALF, XV_HdmiTx_VSIF_3DSampMethodToString(), XV_HdmiTx_VSIF_3DSampPosToString(), XV_HdmiTx_VSIF_3DStructToString(), XV_HDMITX_VSIF_VF_3D, and XV_HDMITX_VSIF_VF_EXTRES.
int XV_HdmiTx_VSIF_GeneratePacket | ( | XV_HdmiTx_VSIF * | VSIFPtr, |
XHdmiC_Aux * | AuxPtr | ||
) |
This function generates a Vendor Specific InfoFrame (VSIF).
VSIFPtr | is a pointer to the XV_HdmiTx_VSIF instance. |
AuxPtr | is a pointer to the XV_HdmiTx_Tx_Aux instance. |
References XV_HdmiTx_3D_MetaData::Data, XV_HdmiTx_VSIF::Format, XV_HdmiTx_VSIF::HDMI_VIC, XV_HdmiTx_VSIF::IEEE_ID, XV_HdmiTx_VSIF::Info_3D, XV_HdmiTx_3D_MetaData::IsPresent, XV_HdmiTx_3D_MetaData::Length, XV_HdmiTx_3D_Info::MetaData, XV_HdmiTx_3D_MetaData::Type, XV_HdmiTx_VSIF::Version, XV_HDMITX_3D_STRUCT_SIDE_BY_SIDE_HALF, XV_HDMITX_VSIF_VF_3D, and XV_HDMITX_VSIF_VF_EXTRES.