dp14: xdp_tx_mst_example.c File Reference

| dp14 Xilinx SDK Drivers API Documentation

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

Functions
xdp_tx_mst_example.c File Reference

## Overview

Contains a design example using the XDp driver (operating in TX mode) in multi-stream transport (MST) mode.

Note
  For this example to display output, the user will need to implement initialization of the system (Dptx_PlatformInit) and, after training is complete, implement configuration of the video stream source in order to provide the DisplayPort core with input. See XAPP1178 for reference.
  The functions Dptx_PlatformInit and Dptx_StreamSrc* are declared extern in xdp_tx_example_common.h and are left up to the user to implement.
  Some setups may require introduction of delays when sending sideband messages.

    MODIFICATION HISTORY:

    Ver   Who  Date     Changes

    1.0   als  01/20/15 Initial creation.
    5.1   ms   01/23/17 Added xil_printf statement in main function to
                        ensure that "Successfully ran" and "Failed" strings
                        are available in all examples. This is a fix for
                        CR-965028.

## Functions
u32 | Dptx_MstExample (XDp *InstancePtr, u16 DeviceId)
| The main entry point for the multi-stream transport (MST) example using the XDp driver. More...
u32 | Dptx_MstExampleRun (XDp *InstancePtr)
| This function trains the link and allocates stream payloads. More...
int | main (void)
| This function is the main function of the XDptx multi-stream transport (MST) example. More...

## Function Documentation

u32 Dptx_MstExample | ( | XDp * | InstancePtr,
|  | u16 | DeviceId
| ) |  |

The main entry point for the multi-stream transport (MST) example using the XDp driver.

This function will either discover the topology and map streams to the sinks in the sink list, or map streams to relative addresses.

Parameters

  InstancePtr | is a pointer to the XDp instance.
  DeviceId | is the unique device ID of the DisplayPort TX core instance.

Returns
  - XST_FAILURE if the system setup failed.
  - XST_SUCCESS should never return since this function, if setup was successful, is blocking.

Note
  If system setup was successful, this function is blocking.

References Dptx_MstExampleRun(), and Dptx_SetupExample().

Referenced by main().

u32 Dptx_MstExampleRun | ( | XDp * | InstancePtr | ) |

This function trains the link and allocates stream payloads.

Parameters

  InstancePtr | is a pointer to the XDp instance.
  DeviceId | is the unique device ID of the DisplayPort TX core instance.

Returns
  - XST_SUCCESS if MST allocation was successful.
  - XST_ERROR_COUNT_MAX if the ACT trigger was lost.
  - XST_FAILURE otherwise.

Note
  None.

References XDp_Tx::AuxDelayUs, XDp_Config::BaseAddr, XDp::Config, Dptx_StartLink(), XDp_TxLinkConfig::LaneCount, XDp_Tx::LinkConfig, XDp_TxTopology::NodeTotal, XDp_Config::NumMstStreams, XDp_Tx::SbMsgDelayUs, XDp_TxTopology::SinkTotal, XDp_Tx::Topology, XDp_ReadReg, XDp_WaitUs(), and XDp_WriteReg.

Referenced by Dptx_MstExample().

int main | ( | void |  | ) |

This function is the main function of the XDptx multi-stream transport (MST) example.

Parameters

  None. |

Returns
  - XST_FAILURE if the MST example was unsuccessful - system setup failed.

Note
  Unless setup failed, main will never return since Dptx_MstExample is blocking.

References Dptx_MstExample().