public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Add a brief description of the VLV display PHY internals
@ 2014-04-25 13:32 ville.syrjala
  2014-04-25 14:01 ` Daniel Vetter
  0 siblings, 1 reply; 16+ messages in thread
From: ville.syrjala @ 2014-04-25 13:32 UTC (permalink / raw)
  To: intel-gfx

From: Ville Syrjälä <ville.syrjala@linux.intel.com>

Document the internal structure of the VLV display PHY a bit to help
people understand how the different register blocks relate to each
other.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_reg.h | 40 +++++++++++++++++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 0eff337..064e599 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -571,7 +571,45 @@ enum punit_power_well {
  *
  * DPIO is VLV only.
  *
- * Note: digital port B is DDI0, digital pot C is DDI1
+ * Note: digital port B is DDI0, digital port C is DDI1
+ *
+ * Each display PHY is made up of one or two channels. Each channel
+ * houses a common lane part which contains the PLL and other common
+ * logic. CH0 common lane also contains the IOSF-SB logic for the
+ * Common Register Interface (CRI) ie. the DPIO registers. CRI clock
+ * must be running when any DPIO registers are accessed.
+ *
+ * Eeach channel also has two splines, and each spline is made up of
+ * one Physical Access Coding Sub-Layer (PCS) block and two TX lanes.
+ * So each channel has two PCS blocks and four TX lanes. The TX lanes
+ * are used as DP lanes or TMDS data/clock pairs depending on the
+ * output type.
+ *
+ * Additionally the PHY also contains an AUX lane with AUX blocks
+ * for each channel. This is used for DP AUX communication, but
+ * this fact isn't really relevant for the driver since AUX is
+ * controlled from the display controller side. No DPIO registers
+ * need to be accessed during AUX communication,
+ *
+ * Generally the common lane corresponds to the pipe and
+ * the spline (PCS/TX) correponds to the port:
+ *  pipe A == CMN/PLL/REF CH0
+ *  pipe B == CMN/PLL/REF CH1
+ *  port B == PCS/TX CH0
+ *  port C == PCS/TX CH1
+ * This is especially important when we cross the streams
+ * ie. drive port B with pipe B, or port C with pipe A.
+ *
+ * ---------------------------------
+ * |      CH0      |      CH1      |
+ * |  CMN/PLL/REF  |  CMN/PLL/REF  |
+ * |---------------|---------------| Display PHY
+ * | PCS01 | PCS23 | PCS01 | PCS23 |
+ * |-------|-------|-------|-------|
+ * |TX0|TX1|TX2|TX3|TX0|TX1|TX2|TX3|
+ * ---------------------------------
+ * |     DDI0      |     DDI1      | DP/HDMI ports
+ * ---------------------------------
  */
 #define DPIO_DEVFN			0
 #define DPIO_OPCODE_REG_WRITE		1
-- 
1.8.3.2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2014-05-21 12:18 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-25 13:32 [PATCH] drm/i915: Add a brief description of the VLV display PHY internals ville.syrjala
2014-04-25 14:01 ` Daniel Vetter
2014-04-25 14:01   ` Daniel Vetter
2014-04-25 17:14   ` [PATCH 1/3] drm/i915: Drop /** */ comments from i915_reg.h ville.syrjala
2014-04-25 17:14     ` [PATCH v2 2/3] drm/i915: Add a brief description of the VLV display PHY internals ville.syrjala
2014-04-25 17:44       ` Daniel Vetter
2014-05-20 14:18         ` Daniel Vetter
2014-05-21  8:31       ` Lee, Chon Ming
2014-05-21  8:49         ` Ville Syrjälä
2014-05-21  9:58           ` Lee, Chon Ming
2014-05-21 10:31             ` Ville Syrjälä
2014-04-25 17:14     ` [PATCH 3/3] drm/i915: Provide DPIO diagrams as docboox tables ville.syrjala
2014-05-21 10:54       ` Damien Lespiau
2014-05-21 10:59       ` Lee, Chon Ming
2014-05-21 12:18         ` Daniel Vetter
2014-05-20 14:13     ` [PATCH 1/3] drm/i915: Drop /** */ comments from i915_reg.h Damien Lespiau

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox