| v_hdmitx1 Vitis Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List

Functions | Variables
xv_hdmitx1.c File Reference

## Overview

This is the main file for Xilinx HDMI TX core.

Please see xv_hdmitx1.h for more details of the driver.

    MODIFICATION HISTORY:

    Ver   Who    Date     Changes

    1.00  EB     22/05/18 Initial release.

## Functions
int | XV_HdmiTx1_CfgInitialize (XV_HdmiTx1 *InstancePtr, XV_HdmiTx1_Config *CfgPtr, UINTPTR EffectiveAddr)
| This function initializes the HDMI TX core. More...
void | XV_HdmiTx1_SetAxiClkFreq (XV_HdmiTx1 *InstancePtr, u32 ClkFreq)
| This function sets the AXI4-Lite Clock Frequency. More...
void | XV_HdmiTx1_SetHdmiFrlMode (XV_HdmiTx1 *InstancePtr)
| This function sets the core into HDMI FRL mode. More...
void | XV_HdmiTx1_SetHdmiTmdsMode (XV_HdmiTx1 *InstancePtr)
| This function sets the core into HDMI TMDS mode. More...
void | XV_HdmiTx1_SetDviMode (XV_HdmiTx1 *InstancePtr)
| This function sets the core into DVI mode. More...
void | XV_HdmiTx1_AuxEnable (XV_HdmiTx1 *InstancePtr)
| This function enables the HDMI TX Auxiliary (AUX) peripheral. More...
void | XV_HdmiTx1_AudioEnable (XV_HdmiTx1 *InstancePtr)
| This macro enables audio in HDMI TX core. More...
void | XV_HdmiTx1_Clear (XV_HdmiTx1 *InstancePtr)
| This function clear the HDMI TX variables and sets it to the defaults. More...
void | XV_HdmiTx1_Start (XV_HdmiTx1 *InstancePtr)
| This function starts the HDMI TX core. More...
void | XV_HdmiTx1_Stop (XV_HdmiTx1 *InstancePtr)
| This function stops the HDMI TX core. More...
u8 | XV_HdmiTx1_LookupVic (XVidC_VideoMode VideoMode)
| This function provides video identification code of video mode. More...
u64 | XV_HdmiTx1_GetTmdsClk (XV_HdmiTx1 *InstancePtr)
| This function sets and return the TMDS Clock based on Video Parameter from the InstancePtr. More...
int | XV_HdmiTx1_Scrambler (XV_HdmiTx1 *InstancePtr)
| This function controls the scrambler. More...
int | XV_HdmiTx1_ClockRatio (XV_HdmiTx1 *InstancePtr)
| This function controls the TMDS clock ratio. More...
int | XV_HdmiTx1_DetectHdmi20 (XV_HdmiTx1 *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_HdmiTx1_ShowSCDC (XV_HdmiTx1 *InstancePtr)
| This function shows the sinks SCDC registers. More...
u32 | XV_HdmiTx1_SetStream (XV_HdmiTx1 *InstancePtr, XVidC_VideoTiming VideoTiming, XVidC_FrameRate FrameRate, XVidC_ColorFormat ColorFormat, XVidC_ColorDepth Bpc, XVidC_PixelsPerClock Ppc, XVidC_3DInfo *Info3D, u8 FVaFactor, u8 VrrEnabled, u8 CnmvrrEnabled, u64 *TmdsClock)
| This function sets the HDMI TX stream parameters. More...
void | XV_HdmiTx1_INT_VRST (XV_HdmiTx1 *InstancePtr, u8 Reset)
| This function asserts or releases the HDMI TX Internal VRST. More...
void | XV_HdmiTx1_INT_LRST (XV_HdmiTx1 *InstancePtr, u8 Reset)
| This function asserts or releases the HDMI TX Internal LRST. More...
void | XV_HdmiTx1_EXT_VRST (XV_HdmiTx1 *InstancePtr, u8 Reset)
| This function asserts or releases the HDMI TX External VRST. More...
void | XV_HdmiTx1_EXT_SYSRST (XV_HdmiTx1 *InstancePtr, u8 Reset)
| This function asserts or releases the HDMI TX External SYSRST. More...
void | XV_HdmiTx1_SetGcpAvmuteBit (XV_HdmiTx1 *InstancePtr)
| This function sets the HDMI TX AUX GCP register AVMUTE bit. More...
void | XV_HdmiTx1_ClearGcpAvmuteBit (XV_HdmiTx1 *InstancePtr)
| This function clears the HDMI TX AUX GCP register AVMUTE bit. More...
void | XV_HdmiTx1_SetGcpClearAvmuteBit (XV_HdmiTx1 *InstancePtr)
| This function sets the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More...
void | XV_HdmiTx1_ClearGcpClearAvmuteBit (XV_HdmiTx1 *InstancePtr)
| This function clears the HDMI TX AUX GCP register CLEAR_AVMUTE bit. More...
void | XV_HdmiTx1_SetPixelRate (XV_HdmiTx1 *InstancePtr)
| This function sets the pixel rate at output. More...
void | XV_HdmiTx1_SetSampleRate (XV_HdmiTx1 *InstancePtr, u8 SampleRate)
| This function sets the sample rate at output. More...
void | XV_HdmiTx1_SetColorFormat (XV_HdmiTx1 *InstancePtr)
| This function sets the color format. More...
void | XV_HdmiTx1_SetColorDepth (XV_HdmiTx1 *InstancePtr)
| This function sets the color depth. More...
void | XV_HdmiTx1_DdcInit (XV_HdmiTx1 *InstancePtr, u32 Frequency)
| This function prepares TX DDC peripheral to use. More...
int | XV_HdmiTx1_DdcGetAck (XV_HdmiTx1 *InstancePtr)
| This function gets the acknowledge flag. More...
int | XV_HdmiTx1_DdcWaitForDone (XV_HdmiTx1 *InstancePtr)
| This function waits for the done flag to be set. More...
void | XV_HdmiTx1_DdcWriteCommand (XV_HdmiTx1 *InstancePtr, u32 Cmd)
| This function writes data into the command fifo. More...
u8 | XV_HdmiTx1_DdcReadData (XV_HdmiTx1 *InstancePtr)
| This function reads data from the data fifo. More...
int | XV_HdmiTx1_DdcWrite (XV_HdmiTx1 *InstancePtr, u8 Slave, u16 Length, u8 *Buffer, u8 Stop)
| This function writes data from DDC peripheral from given slave address. More...
int | XV_HdmiTx1_DdcRead (XV_HdmiTx1 *InstancePtr, u8 Slave, u16 Length, u8 *Buffer, u8 Stop)
| This function reads data from DDC peripheral from given slave address. More...
int | XV_HdmiTx1_DdcReadReg (XV_HdmiTx1 *InstancePtr, u8 Slave, u16 Length, u8 RegAddr, u8 *Buffer)
| This function reads specified register from DDC peripheral from given slave address. More...
int | XV_HdmiTx1_DdcWriteField (XV_HdmiTx1 *InstancePtr, XV_HdmiTx1_ScdcFieldType Field, u8 Value)
| This function writes the specified SCDC Field. More...
void | XV_HdmiTx1_Aux_Dsc_Send_Header (XV_HdmiTx1 *InstancePtr, u32 Data)
| This function transmits the DSC packet header. More...
void | XV_HdmiTx1_Aux_Dsc_Send_Data (XV_HdmiTx1 *InstancePtr, u32 Data)
| This function transmits the DSC packet data. More...
u32 | XV_HdmiTx1_AuxSend (XV_HdmiTx1 *InstancePtr)
| This function transmits the infoframes generated by the processor. More...
void | XV_HdmiTx1_Info (XV_HdmiTx1 *InstancePtr)
| This function prints stream and timing information on STDIO/Uart console. More...
void | XV_HdmiTx1_DebugInfo (XV_HdmiTx1 *InstancePtr)
| This function prints debug information on STDIO/UART console. More...
void | XV_HdmiTx1_RegisterDebug (XV_HdmiTx1 *InstancePtr)
| This function prints out HDMI TX register. More...
int | XV_HdmiTx1_IsStreamScrambled (XV_HdmiTx1 *InstancePtr)
| This function provides status of the stream. More...
int | XV_HdmiTx1_IsStreamConnected (XV_HdmiTx1 *InstancePtr)
| This function provides the stream connected status. More...
void | XV_HdmiTx1_FRLACRStart (XV_HdmiTx1 *InstancePtr)
| This function Starts the internal ACR module for FRL. More...
void | XV_HdmiTx1_TMDSACRStart (XV_HdmiTx1 *InstancePtr)
| This function Starts the internal ACR module for FRL. More...
int | XV_HdmiTx1_SetAudioChannels (XV_HdmiTx1 *InstancePtr, u8 Value)
| This function sets the active audio channels. More...
u32 | XV_HdmiTxSs1_GetAudioCtsVal (XV_HdmiTx1 *InstancePtr)
| This function gets the Generated ACR CTS Value. More...
u32 | XV_HdmiTxSs1_GetAudioNVal (XV_HdmiTx1 *InstancePtr)
| This function gets the programmed ACR N Value. More...
int | XV_HdmiTx1_SetAudioFormat (XV_HdmiTx1 *InstancePtr, XV_HdmiTx1_AudioFormatType Value)
| This function sets the active audio format. More...
XV_HdmiTx1_AudioFormatType | XV_HdmiTx1_GetAudioFormat (XV_HdmiTx1 *InstancePtr)
| This function gets the active audio format. More...
u8 * | XV_HdmiTx1_GetScdcEdRegisters (XV_HdmiTx1 *InstancePtr)
| This function reads the CED and RSED registers from the sink and returns the pointer to the data structure which stores the CED related readings (from SCDC register 0x50 to 0x5A). More...

## Variables
const XV_HdmiTx1_ScdcField | ScdcField [XV_HDMITX1_SCDCFIELD_SIZE]
| This table contains the attributes for SCDC fields Each entry consists of: 1) Register Offset 2) Bits Mask 3) Bits Shift. More...

## Function Documentation

void XV_HdmiTx1_AudioEnable | ( | XV_HdmiTx1 * | InstancePtr | ) |

This macro enables audio in HDMI TX core.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1::Stream, XV_HDMITX1_AUD_CTRL_RUN_MASK, XV_HDMITX1_AUD_CTRL_SET_OFFSET, XV_HdmiTx1_FRLACRStart(), XV_HdmiTx1_TMDSACRStart(), and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_SetAudioChannels(), XV_HdmiTx1_SetAudioFormat(), XV_HdmiTx1_SetHdmiFrlMode(), and XV_HdmiTx1_SetHdmiTmdsMode().

void XV_HdmiTx1_Aux_Dsc_Send_Data | ( | XV_HdmiTx1 * | InstancePtr,
|  | u32 | Data
| ) |  |

This function transmits the DSC packet data.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Data | value to be written

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_Aux_Dsc_Send_Header | ( | XV_HdmiTx1 * | InstancePtr,
|  | u32 | Data
| ) |  |

This function transmits the DSC packet header.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Data | value to be written

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_AuxEnable | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function enables the HDMI TX Auxiliary (AUX) peripheral.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HDMITX1_AUX_CTRL_RUN_MASK, XV_HDMITX1_AUX_CTRL_SET_OFFSET, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_FrlStreamStart(), XV_HdmiTx1_SetHdmiFrlMode(), and XV_HdmiTx1_SetHdmiTmdsMode().

u32 XV_HdmiTx1_AuxSend | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function transmits the infoframes generated by the processor.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

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

Note
  None.

References XV_HdmiTx1::Aux, XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_AUX_DAT_OFFSET, XV_HDMITX1_AUX_STA_FIFO_FUL_MASK, XV_HDMITX1_AUX_STA_OFFSET, XV_HDMITX1_AUX_STA_PKT_RDY_MASK, XV_HdmiTx1_ReadReg, and XV_HdmiTx1_WriteReg.

int XV_HdmiTx1_CfgInitialize | ( | XV_HdmiTx1 * | InstancePtr,
|  | XV_HdmiTx1_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.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 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.

Returns
  - XST_SUCCESS if XV_HdmiTx1_CfgInitialize was successful.
  - XST_FAILURE if HDMI TX PIO ID mismatched.

Note
  None.

References XV_HdmiTx1_Stream::Audio, XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HdmiTx1::ConnectCallback, XV_HdmiTx1_Stream::CorePixPerClk, XV_HdmiTx1::DscDecodeFailCallback, XV_HdmiTx1::DynHdrMtwCallback, XV_HdmiTx1_Stream::Frl, XV_HdmiTx1::FrlConfigCallback, XV_HdmiTx1::FrlFfeCallback, XV_HdmiTx1::FrlStartCallback, XV_HdmiTx1::FrlStopCallback, XV_HdmiTx1_Stream::IsConnected, XV_HdmiTx1::IsReady, XV_HdmiTx1_Frl::Lanes, XV_HdmiTx1_Frl::MaxFrlRate, XV_HdmiTx1_Config::MaxFrlRate, XV_HdmiTx1_Stream::OverrideScrambler, XV_HdmiTx1_Frl::RateLock, XV_HdmiTx1_Stream::State, XV_HdmiTx1::Stream, XV_HdmiTx1::StreamDownCallback, XV_HdmiTx1::StreamUpCallback, XV_HdmiTx1::TmdsConfigCallback, XV_HdmiTx1::ToggleCallback, XV_HdmiTx1_Frl::TrainingState, XV_HdmiTx1::VsCallback, XV_HDMITX1_AUD_CTRL_CLR_OFFSET, XV_HDMITX1_AUD_CTRL_SET_OFFSET, XV_HdmiTx1_AudioDisable, XV_HdmiTx1_AuxDisable, XV_HdmiTx1_Clear(), XV_HDMITX1_CONNECT_CONF_OFFSET, XV_HdmiTx1_DdcDisable, XV_HdmiTx1_DdcIntrClear, XV_HdmiTx1_FrlExecute(), XV_HdmiTx1_FrlExtVidCkeSource(), XV_HdmiTx1_FrlIntrDisable, XV_HdmiTx1_FrlIntrEnable, XV_HdmiTx1_FrlReset(), XV_HdmiTx1_GetTime1Ms, XV_HDMITX1_HPD_TIMEGRID_OFFSET, XV_HDMITX1_MASK_16, XV_HDMITX1_PIO_ID, XV_HDMITX1_PIO_ID_OFFSET, XV_HDMITX1_PIO_IN_BRDG_LOCKED_MASK, XV_HDMITX1_PIO_IN_BRDG_OVERFLOW_MASK, XV_HDMITX1_PIO_IN_BRDG_UNDERFLOW_MASK, XV_HDMITX1_PIO_IN_EVT_FE_OFFSET, XV_HDMITX1_PIO_IN_EVT_RE_OFFSET, XV_HDMITX1_PIO_IN_HPD_MASK, XV_HDMITX1_PIO_IN_HPD_TOGGLE_MASK, XV_HDMITX1_PIO_IN_LNK_RDY_MASK, XV_HDMITX1_PIO_IN_VS_MASK, XV_HdmiTx1_PioDisable, XV_HdmiTx1_PioIntrClear, XV_HdmiTx1_ReadReg, XV_HdmiTx1_SetHdmiTmdsMode(), XV_HDMITX1_SHIFT_16, XV_HDMITX1_TOGGLE_CONF_OFFSET, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_Clear | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function clear the HDMI TX variables and sets it to the defaults.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns

Note
  This is required after a reset or init.

Referenced by XV_HdmiTx1_CfgInitialize().

void XV_HdmiTx1_ClearGcpAvmuteBit | ( | XV_HdmiTx1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HDMITX1_PIO_OUT_CLR_OFFSET, XV_HDMITX1_PIO_OUT_GCP_AVMUTE_MASK, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_ClearGcpClearAvmuteBit | ( | XV_HdmiTx1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HDMITX1_PIO_OUT_CLR_OFFSET, XV_HDMITX1_PIO_OUT_GCP_CLEARAVMUTE_MASK, and XV_HdmiTx1_WriteReg.

int XV_HdmiTx1_ClockRatio | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function controls the TMDS clock ratio.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - XST_SUCCESS if HDMI 2.0
  - XST_FAILURE if HDMI 1.4

Note
  None.

References XV_HdmiTx1_Stream::ScdcSupport, XV_HdmiTx1::Stream, XV_HdmiTx1_Stream::TMDSClockRatio, XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

Referenced by XV_HdmiTx1_SetStream().

int XV_HdmiTx1_DdcGetAck | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function gets the acknowledge flag.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_DDC_STA_ACK_MASK, XV_HDMITX1_DDC_STA_OFFSET, and XV_HdmiTx1_ReadReg.

Referenced by XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

void XV_HdmiTx1_DdcInit | ( | XV_HdmiTx1 * | InstancePtr,
|  | u32 | Frequency
| ) |  |

This function prepares TX DDC peripheral to use.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Frequency | specifies the value that needs to be set.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_DDC_CTRL_CLK_DIV_MASK, XV_HDMITX1_DDC_CTRL_OFFSET, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_SetAxiClkFreq().

int XV_HdmiTx1_DdcRead | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Slave,
|  | u16 | Length,
|  | u8 * | Buffer,
|  | u8 | Stop
| ) |  |

This function reads data from DDC peripheral from given slave address.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 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.

Returns
  - XST_SUCCESS if an acknowledgement received and timeout.
  - XST_FAILURE if no acknowledgement received.

Note
  None.

References XV_HDMITX1_DDC_CMD_RD_TOKEN, XV_HDMITX1_DDC_CMD_STP_TOKEN, XV_HDMITX1_DDC_CMD_STR_TOKEN, XV_HDMITX1_DDC_CMD_WR_TOKEN, XV_HdmiTx1_DdcDisable, XV_HdmiTx1_DdcEnable, XV_HdmiTx1_DdcGetAck(), XV_HdmiTx1_DdcIntrDisable, XV_HdmiTx1_DdcReadData(), XV_HdmiTx1_DdcWaitForDone(), XV_HdmiTx1_DdcWriteCommand(), XV_HdmiTx1_GetFrlTimer(), XV_HdmiTx1_PioIntrDisable, XV_HdmiTx1_PioIntrEnable, and XV_HdmiTx1_SetFrlTimerClockCycles().

Referenced by XV_HdmiTx1_ClockRatio(), XV_HdmiTx1_DdcReadReg(), XV_HdmiTx1_DdcWriteField(), XV_HdmiTx1_Scrambler(), and XV_HdmiTx1_ShowSCDC().

u8 XV_HdmiTx1_DdcReadData | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function reads data from the data fifo.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_DDC_CTRL_OFFSET, XV_HDMITX1_DDC_CTRL_RUN_MASK, XV_HDMITX1_DDC_DAT_OFFSET, XV_HDMITX1_DDC_STA_DAT_EMPTY, XV_HDMITX1_DDC_STA_OFFSET, and XV_HdmiTx1_ReadReg.

Referenced by XV_HdmiTx1_DdcRead().

int XV_HdmiTx1_DdcReadReg | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Slave,
|  | u16 | Length,
|  | u8 | RegAddr,
|  | u8 * | Buffer
| ) |  |

This function reads specified register from DDC peripheral from given slave address.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Slave | specifies the slave address from where data needs to be read.
  Length | specifies number of bytes to be read.
  RegAddr | specifies the register address from where data needs 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.

Returns
  - XST_SUCCESS if an acknowledgement received and timeout.
  - XST_FAILURE if no acknowledgement received.

Note
  None.

References XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

Referenced by XV_HdmiTx1_GetScdcEdRegisters().

int XV_HdmiTx1_DdcWaitForDone | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function waits for the done flag to be set.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_DDC_CTRL_OFFSET, XV_HDMITX1_DDC_CTRL_RUN_MASK, XV_HDMITX1_DDC_STA_DONE_MASK, XV_HDMITX1_DDC_STA_OFFSET, XV_HDMITX1_DDC_STA_TIMEOUT_MASK, XV_HdmiTx1_ReadReg, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

int XV_HdmiTx1_DdcWrite | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Slave,
|  | u16 | Length,
|  | u8 * | Buffer,
|  | u8 | Stop
| ) |  |

This function writes data from DDC peripheral from given slave address.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 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.

Returns
  - XST_SUCCESS if an acknowledgement received and timeout.
  - XST_FAILURE if no acknowledgement received.

Note
  None.

References XV_HDMITX1_DDC_CMD_STP_TOKEN, XV_HDMITX1_DDC_CMD_STR_TOKEN, XV_HDMITX1_DDC_CMD_WR_TOKEN, XV_HdmiTx1_DdcDisable, XV_HdmiTx1_DdcEnable, XV_HdmiTx1_DdcGetAck(), XV_HdmiTx1_DdcIntrDisable, XV_HdmiTx1_DdcWaitForDone(), XV_HdmiTx1_DdcWriteCommand(), XV_HdmiTx1_GetFrlTimer(), XV_HdmiTx1_PioIntrDisable, XV_HdmiTx1_PioIntrEnable, and XV_HdmiTx1_SetFrlTimerClockCycles().

Referenced by XV_HdmiTx1_ClockRatio(), XV_HdmiTx1_DdcReadReg(), XV_HdmiTx1_DdcWriteField(), XV_HdmiTx1_DetectHdmi20(), XV_HdmiTx1_Scrambler(), and XV_HdmiTx1_ShowSCDC().

void XV_HdmiTx1_DdcWriteCommand | ( | XV_HdmiTx1 * | InstancePtr,
|  | u32 | Cmd
| ) |  |

This function writes data into the command fifo.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_DDC_CMD_OFFSET, XV_HDMITX1_DDC_CTRL_OFFSET, XV_HDMITX1_DDC_CTRL_RUN_MASK, XV_HDMITX1_DDC_STA_CMD_FULL, XV_HDMITX1_DDC_STA_OFFSET, XV_HdmiTx1_ReadReg, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

int XV_HdmiTx1_DdcWriteField | ( | XV_HdmiTx1 * | InstancePtr,
|  | XV_HdmiTx1_ScdcFieldType | Field,
|  | u8 | Value
| ) |  |

This function writes the specified SCDC Field.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Field | specifies the fields from SCDC channels to be written
  Value | specifies the values to be written

Returns
  - XST_SUCCESS
  - XST_FAILURE

Note
  None.

References XV_HdmiTx1_ScdcField::Mask, XV_HdmiTx1_ScdcField::Offset, XV_HdmiTx1_ScdcField::Shift, XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

Referenced by XV_HdmiTx1_FrlRate(), and XV_HdmiTx1_FrlTrainingInit().

void XV_HdmiTx1_DebugInfo | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function prints debug information on STDIO/UART console.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_ANLZ_HBP_HS_HPB_SZ_MASK, XV_HDMITX1_ANLZ_HBP_HS_HPB_SZ_SHIFT, XV_HDMITX1_ANLZ_HBP_HS_HS_SZ_MASK, XV_HDMITX1_ANLZ_HBP_HS_OFFSET, XV_HDMITX1_ANLZ_LN_ACT_ACT_SZ_MASK, XV_HDMITX1_ANLZ_LN_ACT_LN_SZ_MASK, XV_HDMITX1_ANLZ_LN_ACT_LN_SZ_SHIFT, XV_HDMITX1_ANLZ_LN_ACT_OFFSET, XV_HDMITX1_DBG_STS_OFFSET, XV_HDMITX1_FRL_CTRL_LN_OP_MASK, XV_HDMITX1_FRL_CTRL_OFFSET, XV_HDMITX1_FRL_CTRL_OP_MODE_MASK, XV_HDMITX1_FRL_LNK_CLK_OFFSET, XV_HDMITX1_FRL_STA_LNK_CLK_OOS_MASK, XV_HDMITX1_FRL_STA_OFFSET, XV_HDMITX1_FRL_VCKE_EXT_MASK, XV_HDMITX1_FRL_VID_CLK_OFFSET, XV_HDMITX1_PIO_IN_BRDG_LOCKED_MASK, XV_HDMITX1_PIO_IN_OFFSET, XV_HDMITX1_PIO_OUT_MODE_MASK, XV_HDMITX1_PIO_OUT_OFFSET, XV_HdmiTx1_ReadReg, XV_HDMITX1_VCKE_SYS_CNT_OFFSET, XV_HDMITX1_VER_ID_OFFSET, and XV_HDMITX1_VER_VERSION_OFFSET.

int XV_HdmiTx1_DetectHdmi20 | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function detects connected sink is a HDMI 2.0/HDMI 1.4 sink device and sets appropriate flag in the TX stream.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - XST_SUCCESS if HDMI 2.0
  - XST_FAILURE if HDMI 1.4

Note
  None.

References XV_HdmiTx1_Stream::ScdcSupport, XV_HdmiTx1::Stream, and XV_HdmiTx1_DdcWrite().

void XV_HdmiTx1_EXT_SYSRST | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the HDMI TX External SYSRST.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Reset | specifies TRUE/FALSE value to either assert or release HDMI TX External SYSRST.

Returns
  None.

Note
  The reset output of the PIO is inverted. When the system is in reset, the PIO output is cleared and this will reset the HDMI TX. Therefore, clearing the PIO reset output will assert the HDMI External system reset. C-style signature: void XV_HdmiTx1_EXT_SYSRST(XV_HdmiTx1 *InstancePtr, u8 Reset)

References XV_HDMITX1_PIO_OUT_CLR_OFFSET, XV_HDMITX1_PIO_OUT_EXT_SYSRST_MASK, XV_HDMITX1_PIO_OUT_SET_OFFSET, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_EXT_VRST | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the HDMI TX External VRST.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Reset | specifies TRUE/FALSE value to either assert or release HDMI TX External VRST.

Returns
  None.

Note
  The reset output of the PIO is inverted. When the system is in reset, the PIO output is cleared and this will reset the HDMI TX. Therefore, clearing the PIO reset output will assert the HDMI external video reset. C-style signature: void XV_HdmiTx1_EXT_VRST(XV_HdmiTx1 *InstancePtr, u8 Reset)

References XV_HDMITX1_PIO_OUT_CLR_OFFSET, XV_HDMITX1_PIO_OUT_EXT_VRST_MASK, XV_HDMITX1_PIO_OUT_SET_OFFSET, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_FRLACRStart | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function Starts the internal ACR module for FRL.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  Active audio format of HDMI Tx

Note
  None.

References XV_HdmiTx1_Stream::Audio, XV_HdmiTx1_Stream::Frl, XV_HdmiTx1_Frl::LineRate, XV_HdmiTx1::Stream, XV_HDMITX1_AUD_ACR_N_OFFSET, XV_HDMITX1_AUD_CTRL_CLR_OFFSET, XV_HDMITX1_AUD_CTRL_SET_OFFSET, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_AudioEnable().

XV_HdmiTx1_AudioFormatType XV_HdmiTx1_GetAudioFormat | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function gets the active audio format.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  Active audio format of HDMI Tx

Note
  None.

References XV_HDMITX1_AUD_CTRL_3DAUDFMT_MASK, XV_HDMITX1_AUD_CTRL_AUDFMT_MASK, XV_HDMITX1_AUD_CTRL_AUDFMT_SHIFT, XV_HDMITX1_AUD_CTRL_OFFSET, and XV_HdmiTx1_ReadReg.

u8* XV_HdmiTx1_GetScdcEdRegisters | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function reads the CED and RSED registers from the sink and returns the pointer to the data structure which stores the CED related readings (from SCDC register 0x50 to 0x5A).

Parameters

  InstancePtr | is a pointer to the XHdmi_Tx core instance.

Returns
  None.

Note
  Reading the SCDC registers will clear the values at the sink

References XV_HdmiTx1_Stream::ScdcEd, XV_HdmiTx1::Stream, and XV_HdmiTx1_DdcReadReg().

u64 XV_HdmiTx1_GetTmdsClk | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets and return the TMDS Clock based on Video Parameter from the InstancePtr.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - TMDS Clock

Note
  None.

References XV_HdmiTx1_Stream::PixelClk, XV_HdmiTx1::Stream, and XV_HdmiTx1_Stream::Video.

Referenced by XV_HdmiTx1_SetStream().

void XV_HdmiTx1_Info | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function prints stream and timing information on STDIO/Uart console.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1::Stream, and XV_HdmiTx1_Stream::Video.

void XV_HdmiTx1_INT_LRST | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the HDMI TX Internal LRST.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Reset | specifies TRUE/FALSE value to either assert or release HDMI TX Internal LRST.

Returns
  None.

Note
  The reset output of the PIO is inverted. When the system is in reset, the PIO output is cleared and this will reset the HDMI TX. Therefore, clearing the PIO reset output will assert the HDMI Internal link reset. C-style signature: void XV_HdmiTx1_INT_VRST(XV_HdmiTx1 *InstancePtr, u8 Reset)

References XV_HDMITX1_PIO_OUT_CLR_OFFSET, XV_HDMITX1_PIO_OUT_INT_LRST_MASK, XV_HDMITX1_PIO_OUT_SET_OFFSET, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_INT_VRST | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Reset
| ) |  |

This function asserts or releases the HDMI TX Internal VRST.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  Reset | specifies TRUE/FALSE value to either assert or release HDMI TX Internal VRST.

Returns
  None.

Note
  The reset output of the PIO is inverted. When the system is in reset, the PIO output is cleared and this will reset the HDMI TX. Therefore, clearing the PIO reset output will assert the HDMI Internal video reset. C-style signature: void XV_HdmiTx1_INT_VRST(XV_HdmiTx1 *InstancePtr, u8 Reset)

References XV_HDMITX1_PIO_OUT_CLR_OFFSET, XV_HDMITX1_PIO_OUT_INT_VRST_MASK, XV_HDMITX1_PIO_OUT_SET_OFFSET, and XV_HdmiTx1_WriteReg.

int XV_HdmiTx1_IsStreamConnected | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function provides the stream connected status.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - TRUE = Stream is connected.
  - FALSE = Stream is connected.

Note
  None.

References XV_HdmiTx1_Stream::IsConnected, and XV_HdmiTx1::Stream.

int XV_HdmiTx1_IsStreamScrambled | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function provides status of the stream.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - TRUE = Scrambled.
  - FALSE = Not scrambled.

Note
  None.

References XV_HdmiTx1_Stream::IsScrambled, and XV_HdmiTx1::Stream.

u8 XV_HdmiTx1_LookupVic | ( | XVidC_VideoMode | VideoMode | ) |

This function provides video identification code of video mode.

Parameters

  VideoMode | specifies resolution identifier.

Returns
  Video identification code defined in the VIC table.

Note
  None.

void XV_HdmiTx1_RegisterDebug | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function prints out HDMI TX register.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HDMITX1_FRL_FEC_ERR_INJ_OFFSET, and XV_HdmiTx1_ReadReg.

int XV_HdmiTx1_Scrambler | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function controls the scrambler.

Requires TMDSClock to be up to date in order to force enable scrambler when TMDSClock > 340MHz.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - XST_SUCCESS if HDMI 2.0
  - XST_FAILURE if HDMI 1.4

Note
  None.

References XV_HdmiTx1_Stream::IsScrambled, XV_HdmiTx1_Stream::OverrideScrambler, XV_HdmiTx1_Stream::ScdcSupport, XV_HdmiTx1::Stream, XV_HdmiTx1_Stream::TMDSClock, XV_HdmiTx1_DdcRead(), XV_HdmiTx1_DdcWrite(), and XV_HdmiTx1_SetScrambler.

Referenced by XV_HdmiTx1_SetStream().

int XV_HdmiTx1_SetAudioChannels | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | Value
| ) |  |

This function sets the active audio channels.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - XST_SUCCESS if active channels were set.
  - XST_FAILURE if no active channles were set.

Note
  None.

References XV_HDMITX1_3DAUD_CTRL_CH_MASK, XV_HDMITX1_3DAUD_CTRL_CH_SHIFT, XV_HDMITX1_AUD_CTRL_CH_MASK, XV_HDMITX1_AUD_CTRL_CH_SHIFT, XV_HDMITX1_AUD_CTRL_CLR_OFFSET, XV_HDMITX1_AUD_CTRL_OFFSET, XV_HDMITX1_AUD_CTRL_RUN_MASK, XV_HDMITX1_AUD_CTRL_SET_OFFSET, XV_HdmiTx1_AudioEnable(), XV_HdmiTx1_ReadReg, and XV_HdmiTx1_WriteReg.

int XV_HdmiTx1_SetAudioFormat | ( | XV_HdmiTx1 * | InstancePtr,
|  | XV_HdmiTx1_AudioFormatType | Value
| ) |  |

This function sets the active audio format.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  - XST_SUCCESS if active channels were set.
  - XST_FAILURE if no active channles were set.

Note
  None.

References XV_HDMITX1_AUD_CTRL_3DAUDFMT_EN, XV_HDMITX1_AUD_CTRL_3DAUDFMT_MASK, XV_HDMITX1_AUD_CTRL_AUDFMT_MASK, XV_HDMITX1_AUD_CTRL_CLR_OFFSET, XV_HDMITX1_AUD_CTRL_OFFSET, XV_HDMITX1_AUD_CTRL_RUN_MASK, XV_HDMITX1_AUD_CTRL_SET_OFFSET, XV_HdmiTx1_AudioEnable(), XV_HdmiTx1_ReadReg, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_SetAxiClkFreq | ( | XV_HdmiTx1 * | InstancePtr,
|  | u32 | ClkFreq
| ) |  |

This function sets the AXI4-Lite Clock Frequency.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  ClkFreq | specifies the value that needs to be set.

Returns

Note
  This is required after a reset or init.

References XV_HdmiTx1::Config, XV_HdmiTx1::CpuClkFreq, and XV_HdmiTx1_DdcInit().

void XV_HdmiTx1_SetColorDepth | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets the color depth.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HdmiTx1::Stream, XV_HdmiTx1_Stream::Video, XV_HDMITX1_PIO_OUT_COLOR_DEPTH_MASK, XV_HDMITX1_PIO_OUT_COLOR_DEPTH_SHIFT, XV_HDMITX1_PIO_OUT_MSK_OFFSET, XV_HDMITX1_PIO_OUT_OFFSET, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_SetStream().

void XV_HdmiTx1_SetColorFormat | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets the color format.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HdmiTx1::Stream, XV_HdmiTx1_Stream::Video, XV_HDMITX1_PIO_OUT_COLOR_SPACE_MASK, XV_HDMITX1_PIO_OUT_COLOR_SPACE_SHIFT, XV_HDMITX1_PIO_OUT_MSK_OFFSET, XV_HDMITX1_PIO_OUT_OFFSET, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_SetStream().

void XV_HdmiTx1_SetDviMode | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets the core into DVI mode.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns

Note
  This is required after a reset or init.

References XV_HdmiTx1::Stream, XV_HdmiTx1_AudioDisable, XV_HdmiTx1_AuxDisable, and XV_HdmiTx1_ClearMode.

void XV_HdmiTx1_SetGcpAvmuteBit | ( | XV_HdmiTx1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HDMITX1_PIO_OUT_GCP_AVMUTE_MASK, XV_HDMITX1_PIO_OUT_SET_OFFSET, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_SetGcpClearAvmuteBit | ( | XV_HdmiTx1 * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HDMITX1_PIO_OUT_GCP_CLEARAVMUTE_MASK, XV_HDMITX1_PIO_OUT_SET_OFFSET, and XV_HdmiTx1_WriteReg.

void XV_HdmiTx1_SetHdmiFrlMode | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets the core into HDMI FRL mode.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns

Note
  This is required after a reset or init.

References XV_HdmiTx1::Stream, XV_HdmiTx1_AudioEnable(), XV_HdmiTx1_AuxEnable(), and XV_HdmiTx1_SetMode.

void XV_HdmiTx1_SetHdmiTmdsMode | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets the core into HDMI TMDS mode.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns

Note
  This is required after a reset or init.

References XV_HdmiTx1::Stream, XV_HdmiTx1_AudioEnable(), XV_HdmiTx1_AuxEnable(), and XV_HdmiTx1_SetMode.

Referenced by XV_HdmiTx1_CfgInitialize().

void XV_HdmiTx1_SetPixelRate | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function sets the pixel rate at output.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HdmiTx1_Stream::CorePixPerClk, XV_HdmiTx1::Stream, XV_HDMITX1_PIO_OUT_MSK_OFFSET, XV_HDMITX1_PIO_OUT_OFFSET, XV_HDMITX1_PIO_OUT_PIXEL_RATE_MASK, XV_HDMITX1_PIO_OUT_PIXEL_RATE_SHIFT, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_SetStream().

void XV_HdmiTx1_SetSampleRate | ( | XV_HdmiTx1 * | InstancePtr,
|  | u8 | SampleRate
| ) |  |

This function sets the sample rate at output.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  SampleRate | specifies the value that needs to be set. 2 samples per clock 3 samples per clock. 5 samples per clock.

Returns
  None.

Note
  None.

References XV_HdmiTx1_Config::BaseAddress, XV_HdmiTx1::Config, XV_HdmiTx1_Stream::SampleRate, XV_HdmiTx1::Stream, XV_HDMITX1_PIO_OUT_MSK_OFFSET, XV_HDMITX1_PIO_OUT_OFFSET, XV_HDMITX1_PIO_OUT_SAMPLE_RATE_MASK, XV_HDMITX1_PIO_OUT_SAMPLE_RATE_SHIFT, and XV_HdmiTx1_WriteReg.

u32 XV_HdmiTx1_SetStream | ( | XV_HdmiTx1 * | InstancePtr,
|  | XVidC_VideoTiming | VideoTiming,
|  | XVidC_FrameRate | FrameRate,
|  | XVidC_ColorFormat | ColorFormat,
|  | XVidC_ColorDepth | Bpc,
|  | XVidC_PixelsPerClock | Ppc,
|  | XVidC_3DInfo * | Info3D,
|  | u8 | FVaFactor,
|  | u8 | VrrEnabled,
|  | u8 | CnmvrrEnabled,
|  | u64 * | TmdsClock
| ) |  |

This function sets the HDMI TX stream parameters.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.
  VideoTiming | specifies video timing.
  FrameRate | specifies frame rate.
  ColorFormat | specifies the type of color format. 0 = XVIDC_CSF_RGB 1 = XVIDC_CSF_YCRCB_444 2 = XVIDC_CSF_YCRCB_422 3 = XVIDC_CSF_YCRCB_420
  Bpc | specifies the color depth/bits per color component. 6 = XVIDC_BPC_6 8 = XVIDC_BPC_8 10 = XVIDC_BPC_10 12 = XVIDC_BPC_12 16 = XVIDC_BPC_16
  Ppc | specifies the pixel per clock. 4 = XVIDC_PPC_4
  Info3D | 3D info
  FVaFactor | - Fast Video Active Factor
  VrrEnabled | - VRR is enabled or not
  CnmvrrEnabled | - Negative VRR supported flag
  TmdsClock,reference | clock calculated based on the input parameters.

Returns
  XST_SUCCESS on success else XST_FAILURE

Note
  None.

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_HdmiTx1_Stream::IsScrambled, XV_HdmiTx1_Stream::ScdcSupport, XV_HdmiTx1::Stream, XV_HdmiTx1_Stream::TMDSClock, XV_HdmiTx1_Stream::TMDSClockRatio, XV_HdmiTx1_Stream::Video, XV_HdmiTx1_ClockRatio(), XV_HdmiTx1_GetTmdsClk(), XV_HdmiTx1_Scrambler(), XV_HdmiTx1_SetColorDepth(), XV_HdmiTx1_SetColorFormat(), and XV_HdmiTx1_SetPixelRate().

void XV_HdmiTx1_ShowSCDC | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function shows the sinks SCDC registers.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  None.

References XV_HdmiTx1_DdcRead(), and XV_HdmiTx1_DdcWrite().

void XV_HdmiTx1_Start | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function starts the HDMI TX core.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

Note
  This is required after a reset or initialization.

References XV_HdmiTx1_PioEnable, and XV_HdmiTx1_PioIntrEnable.

void XV_HdmiTx1_Stop | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function stops the HDMI TX core.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  None.

References XV_HdmiTx1_PioDisable, and XV_HdmiTx1_PioIntrDisable.

void XV_HdmiTx1_TMDSACRStart | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function Starts the internal ACR module for FRL.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTx1 core instance.

Returns
  Active audio format of HDMI Tx

Note
  None.

References XV_HdmiTx1_Stream::Audio, XV_HdmiTx1::Stream, XV_HdmiTx1_Stream::TMDSClock, XV_HDMITX1_AUD_ACR_N_OFFSET, XV_HDMITX1_AUD_CTRL_CLR_OFFSET, XV_HDMITX1_AUD_CTRL_SET_OFFSET, and XV_HdmiTx1_WriteReg.

Referenced by XV_HdmiTx1_AudioEnable().

u32 XV_HdmiTxSs1_GetAudioCtsVal | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function gets the Generated ACR CTS Value.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs1 core instance.

Returns
  Generated ACR CTS Value

Note
  None.

References XV_HDMITX1_AUD_ACR_CTS_OFFSET, and XV_HdmiTx1_ReadReg.

u32 XV_HdmiTxSs1_GetAudioNVal | ( | XV_HdmiTx1 * | InstancePtr | ) |

This function gets the programmed ACR N Value.

Parameters

  InstancePtr | is a pointer to the XV_HdmiTxSs1 core instance.

Returns
  Programmed ACR N Value

Note
  None.

References XV_HDMITX1_AUD_ACR_N_OFFSET, and XV_HdmiTx1_ReadReg.

## Variable Documentation

const XV_HdmiTx1_ScdcField ScdcField[XV_HDMITX1_SCDCFIELD_SIZE]

Initial value:
= {
{0x02, 0xFF, 0},
{0x30, 0xFF, 0},
{0x31, 0xFF, 0},
{0x10, 0x01, 3},
{0x10, 0xFF, 1},
{0x10, 0xFF, 4},
{0x10, 0xFF, 5},
{0x30, 0x01, 1}
}

This table contains the attributes for SCDC fields Each entry consists of: 1) Register Offset 2) Bits Mask 3) Bits Shift.