Commit graph

47 commits

Author SHA1 Message Date
Andrei-Liviu Simion
26bdc1bd63 dp: rx: Added function to override the DPCD link rate value.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:37 +05:30
Andrei-Liviu Simion
36aa085a0e dp: rx: Added register values to override the lane count.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:36 +05:30
Andrei-Liviu Simion
aa7172ded9 dp: rx: Added register values for overriding the link rate.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:35 +05:30
Andrei-Liviu Simion
3736bcbce0 dp: Reordered the listing of initialization functions.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:34 +05:30
Andrei-Liviu Simion
c80bd4b59d dp: rx: Increased the time to wait for the PHY to be ready.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:34 +05:30
Andrei-Liviu Simion
ccfd95487f dp: rx: Added core initialization.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:33 +05:30
Andrei-Liviu Simion
6ba1a4e305 dp: rx: Added interrupt masks.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:31 +05:30
Andrei-Liviu Simion
3465d04239 dp: rx: Added a function to disable the display timing generator.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:30 +05:30
Andrei-Liviu Simion
f5c0d7b518 dp: rx: Added a function to enable the display timing generator.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:30 +05:30
Andrei-Liviu Simion
5d03fa54da dp: rx: Added function to wait for the PHY to be ready.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:29 +05:30
Andrei-Liviu Simion
bd16c255da dp: rx: Added timer functionality.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:28 +05:30
Andrei-Liviu Simion
b3a492d02a dp: rx: Added link configuration structure.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:27 +05:30
Andrei-Liviu Simion
73e9f13cea dp: tx: Updated selftest since usage of some defines now take an argument.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:26 +05:30
Andrei-Liviu Simion
b59cb36747 dp: rx: Added vendor specific DPCD registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:25 +05:30
Andrei-Liviu Simion
8933949ee9 dp: rx: Added MST sideband messaging registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:24 +05:30
Andrei-Liviu Simion
1cb3119c90 dp: rx: Added MST MSA offsets for streams 2, 3, and 4.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:23 +05:30
Andrei-Liviu Simion
6157f90f4d dp: rx: Added MSA registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:22 +05:30
Andrei-Liviu Simion
88d0e95839 dp: rx: Added DPCD configuration space registers.
These are read-only values that represent the corresponding fields of the RX's
DPCD as seen by the TX.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:21 +05:30
Andrei-Liviu Simion
e6f4d82a4f dp: rx: Added audio registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:21 +05:30
Andrei-Liviu Simion
c61b1b58d5 dp: rx: Added PHY configuration and status registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:19 +05:30
Andrei-Liviu Simion
f4b1a740fc dp: rx: Added user video status registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:19 +05:30
Andrei-Liviu Simion
ea0c4f5d2b dp: rx: Added core and protocol version registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:18 +05:30
Andrei-Liviu Simion
c054b6714c dp: rx: Added DPCD fields.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:17 +05:30
Andrei-Liviu Simion
fe56ba6ef0 dp: rx: Added interrupt registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:16 +05:30
Andrei-Liviu Simion
252735630d dp: rx: Added AUX channel status registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:15 +05:30
Andrei-Liviu Simion
342c11f3e5 dp: rx: Added receiver core configuration registers.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:14 +05:30
Andrei-Liviu Simion
9817415d75 dp: rx: Added low-level core reads and writes.
Created xdprx_hw.h.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:13 +05:30
Andrei-Liviu Simion
31a7c5fa1d dp: Updated copyright for 2015.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:12 +05:30
Andrei-Liviu Simion
76c51cafa0 dp: dptx: Update to use new common video naming convention.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:11 +05:30
Andrei-Liviu Simion
9c570b85fa dp: dptx: The maximum iteration count for channel equalization is fixed at 5.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:07 +05:30
Andrei-Liviu Simion
6cdf439d02 dp: tx: The channel equalization sequence only depends on the loop counter.
No check is done for same voltage swing.

Required for DisplayPort compliance.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:06 +05:30
Andrei-Liviu Simion
331244ad31 dp: dptx: Training should fail if clock recovery fails on maximum voltage swing.
Required for DisplayPort compliance.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:05 +05:30
Andrei-Liviu Simion
55889d1a8d dp: dptx: Set training pattern to 0 even if training fails.
Required for DisplayPort compliance.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:05 +05:30
Andrei-Liviu Simion
a8370240c4 dp: tx: Removed duplicate horizontal and vertical total entries.
Part of the video mode table.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:04 +05:30
Andrei-Liviu Simion
2d7f2abf8a dp: tx: Update to use new common video mode table and timing structure format.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:33:03 +05:30
Andrei-Liviu Simion
5e3c1dba5a dp: rx: Moved xdprx.h include below XDp_Config type definition dependency.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:24 +05:30
Andrei-Liviu Simion
0b0c1897cc dp: rx: Add XDprx_CfgInitialize.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:23 +05:30
Andrei-Liviu Simion
f1d01171a9 dp: rx: Added receiver (RX) skeleton including the XDprx instance structure.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:22 +05:30
Andrei-Liviu Simion
e6006d9818 dp: XDptx_TimerHandler->XDp_TimerHandler.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:21 +05:30
Andrei-Liviu Simion
0a72981dcd dp: Allow differentiate between XDptx and XDprx structures from a void *.
The XDp_Config structure is moved to the top of the instance structure for
XDptx. The XDprx structure, once implemented, will keep the XDp_Config structure
as the first member.

This allows functions to accept a void * argument and determine whether the
pointed structure is of type XDptx or XDprx by accessing the XDp_Config member's
IsRx member.

The reason this works is because XDp_Config is the first member in the
structure's order so the configuration structure will be placed in the same
relative location for both the XDptx and XDprx structures.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:20 +05:30
Andrei-Liviu Simion
81cb2fe913 dp: Export IP configuration parameter for the DisplayPort core type - TX or RX.
Exporting the C_FLOW_DIRECTION configuration parameter.
XDp_Config's IsRx member specifies that the core is an RX if = 0, TX if = 1.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:19 +05:30
Andrei-Liviu Simion
204d93a1fe dp: Compilation reordering for backwards compatibility.
User application may either include xdp.h or xdptx.h to use DisplayPort driver
functionality. This is useful when upgrading to an existing application to a
newer driver version.

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:18 +05:30
Andrei-Liviu Simion
cfc2fec774 dp: Number of DisplayPort instances now uses the new driver naming prefix.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:17 +05:30
Andrei-Liviu Simion
eb9df3f478 dp: XDptx_ConfigTable->XDp_ConfigTable.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:17 +05:30
Andrei-Liviu Simion
f44bb328d6 dp: XDptx_Config->XDp_Config
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:16 +05:30
Andrei-Liviu Simion
0aee196be6 dp: LookupConfig function and sinit file adopt new driver naming.
Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:15 +05:30
Andrei-Liviu Simion
202d0114c1 dp: Initial version based on dptx.
Dptx driver moved to a common DisplayPort driver, Dp, in order to have a common
location for both transmit (Dptx) and receive (Dprx).

Signed-off-by: Andrei-Liviu Simion <andrei.simion@xilinx.com>
2015-04-26 10:32:14 +05:30