Commit graph

51 commits

Author SHA1 Message Date
Andrei-Liviu Simion
73a66c85ff dptx: Added remote IIC write sideband message.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:30 +05:30
Andrei-Liviu Simion
2d318f6d74 dptx: Broadcast messages need to have an LCR of 6.
An LCR (link count remaining) value of 6 is used to protect against loops.
If the LCR isn't processed at each node and attempted to be broadcasted on all
ports, waiting for a reply, a loop in the topology will result in the broadcast
message being forwarded infinitely.
Because of this, an LCR of 0 will prevent the message from being forwarded to
subsequent DP nodes.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:19 +05:30
Andrei-Liviu Simion
48ac21fccd dptx: Updated documentation for v2_0.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:14 +05:30
Andrei-Liviu Simion
24a0758d5d dptx: Updated header comments to reflect status of testing.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:13 +05:30
Andrei-Liviu Simion
af7d539249 dptx: MST: Improved example code.
- Reduced lines of code that weren't part of the minimal set required for MST
streams to appear on the monitors.
- By default, don't use delays for AUX or sideband messaging.
- Added a final check to make sure that the link hasn't been lost. If it was
lost, re-train and try the programming sequence again.
- Added some additional comments to example code.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:12 +05:30
Andrei-Liviu Simion
4b7667f2c8 dptx: Updated revision history.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:12 +05:30
Andrei-Liviu Simion
0572fea2ca dptx: MST: Minor tweaks to sideband messaging.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:11 +05:30
Andrei-Liviu Simion
116079118c dptx: MST: Clear any lingering responses before sending a sideband message.
In case the RX device fell into a weird state.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:10 +05:30
Andrei-Liviu Simion
3974e30158 dptx: Added retry when checking if a connection exists.
It was observed that in MST mode, some of the sideband message were failing
due to the first check not showing a connected device.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:10 +05:30
Andrei-Liviu Simion
37d4046df4 dptx: MST: Modified number of iterations before timing out.
Increased waiting for a response to a sideband message before timing out.

Reduced number of reads to check that the RX device received an ACT event.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:09 +05:30
Andrei-Liviu Simion
414d35c52e dptx: Improved stack size usage for topology discovery.
Reduced the stack size required by the topology discovery algorithm
significantly.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:08 +05:30
Andrei-Liviu Simion
9547cbc0a8 dptx: Upgrade MDD file version to v2_0 and remove trailing whitespace.
Changes to the API in v2_0:
- XDptx_FindAccessibleDpDevices returns u32 now instead of void previously.
- Added a wrapper function: u32 XDptx_DiscoverTopology(XDptx *InstancePtr);

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-11-25 21:38:08 +05:30
Andrei-Liviu Simion
8deec4b397 dptx: Updated Doxygen documentation.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:25 +05:30
Andrei-Liviu Simion
a448e98992 dptx: Added a method for overriding the user pixel width of the MSA structure.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:25 +05:30
Andrei-Liviu Simion
5c5f8b85a6 dptx: MST: Limit the number of streams to configure based on IP configuration.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:24 +05:30
Andrei-Liviu Simion
91575b5dc2 dptx: Changed stream indices to start from 0 instead of 1.
Next IP documentation release will follow this convention as well.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:24 +05:30
Andrei-Liviu Simion
d2697a6631 dptx: Update examples.
Testing with the new IP configuration parameter (payload data width) required
some changes to the examples.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:24 +05:30
Andrei-Liviu Simion
fa10a1a066 dptx: Handle new IP configuration parameter.
GT data width.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:24 +05:30
Andrei-Liviu Simion
adc89fae61 dptx: Allow introduction of AUX and sideband message latency delays.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:24 +05:30
Andrei-Liviu Simion
2ebd71bd56 dptx: Exporting additional IP configuration parameters.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:23 +05:30
Andrei-Liviu Simion
0ef01dc0d1 dptx: MST: Updated Doxygen documentation with MST content.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:23 +05:30
Andrei-Liviu Simion
d3a9371163 dptx: Fixed a Doxygen parameter comment.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:23 +05:30
Andrei-Liviu Simion
c630ec3c33 dptx: MST: Rearranged some example code.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
51622b762f dptx: MST: Added remote EDID read function.
Also, rearranged/grouped the GUID functions with the EDID read function as
"utility" functions.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
ee6966c323 dptx: Removed EDID structure from Dptx structure.
Instead, moved it to the application level and functions operating on the Edid
take a pointer to the Edid as an argument.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
701b2bca5f dptx: Added user control of custom voltage swing and pre-emphasis TX levels.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
be98293a83 dptx: Fixed some bugs introduced with asserts.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
a5ac285040 dptx: Fixed some asserts.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
62bab1fb77 dptx: MST: Added some missed documentation for some struct members.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:22 +05:30
Andrei-Liviu Simion
28db6e4a6b dptx: Added some missed asserts.
- The stream-policy maker functions were missing some asserts for checking that
the stream argument is valid.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:21 +05:30
Andrei-Liviu Simion
c45033d802 dptx: MST: Optimized I2C and AUX read.
ReadData is now filled only with actually data instead of sideband message reply
data (reply code, port number, etc) + data.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:21 +05:30
Andrei-Liviu Simion
1efc76acc9 dptx: Added function comments for the selftest example.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:21 +05:30
Andrei-Liviu Simion
71f96698d0 dptx: MST: Added check for MST capabilities before enabling.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:21 +05:30
Andrei-Liviu Simion
abd449945c dptx: MST: Removed dependency on math.h.
Added equivalent ceil functionality.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:20 +05:30
Andrei-Liviu Simion
6e222812f1 dptx: MST: Added asserts.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:20 +05:30
Andrei-Liviu Simion
32b81aa075 dptx: Removed trailing whitespace.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:20 +05:30
Andrei-Liviu Simion
16172f3743 dptx: MST: Added an MST example and updated existing examples.
Also added more MST comments.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:19 +05:30
Andrei-Liviu Simion
3d6faf54b3 dptx: MST: Clean-up, documentation, and general organization.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:19 +05:30
Andrei-Liviu Simion
79093491e1 dptx: Added dependencies file for common example code.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:19 +05:30
Andrei-Liviu Simion
14f491934d dptx: Multi-stream transport (MST) addition.
Main chunk of MST code added.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:19 +05:30
Andrei-Liviu Simion
c4154510b8 dptx: Initial commit for multi-stream transport (MST) functionality.
- Now supporting up to 4 streams.
- Separate set of main stream attributes (MSA) for each stream.
- New MST calculations for payload bandwidth number (PBN) and time slot
allocation.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:19 +05:30
Andrei-Liviu Simion
0afca23bff dptx: Updated Doxygen documentation.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:12 +05:30
Andrei-Liviu Simion
808d1b79f6 dptx: More documentation for Doxygen.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:12 +05:30
Andrei-Liviu Simion
8a5fe55ba2 dptx: Using tabs instead of 8 spaces.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:12 +05:30
Andrei-Liviu Simion
e3f77d9867 dptx: Changed the self test function and example to check register reset values.
This function will now pass without a DisplayPort cable connected.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:11 +05:30
Andrei-Liviu Simion
653c4624dd dptx: Added an audio example.
The user needs to implement Dptx_ConfigureAudioSrc and Dptx_AudioSendInfoFrame
as these functions are application-specific.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:11 +05:30
Andrei-Liviu Simion
78ee97db7f dptx: Removed example with both interrupt and timer.
Redundant since there are separate examples for both interrupt and timer
functionality.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:11 +05:30
Andrei-Liviu Simion
57cd141001 dptx: Iterate on max voltage swing during training.
Required for compliance.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:11 +05:30
Andrei-Liviu Simion
94cf07d9a9 dptx: Clean-up and commenting.
- General clean-up and commenting.
- Added comment documentation to the examples, as well as some general
information in xdptx.h.
- Examples now identify the CPU architecture using the existence of
XPAR_INTC_0_DEVICE_ID from the xparameters.h instead of the __MICROBLAZE__
macro.
- Added and renamed some files for improved integration into SDK.
- Cleaned-up documentation and code for readability.
- No longer returning XST_INVALID_PARAMETER in lieu of asserts.
- Renamed TxConfig member of the XDptx structure to Config.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:11 +05:30
Andrei-Liviu Simion
b94a087ad1 dptx: AUX transaction improvements for multiple read/writes.
AUX read and writes greater than 16 data bytes require multiple transactions.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2014-09-02 11:21:10 +05:30