LSPCON is essentially a dp++->hdmi adapter with dual mode of operation. These modes are: - Level Shifter mode: In LS mode, this device works as a type2 dp->hdmi passive dongle, which steps up DP++ output to appropriate HDMI 1.4 signal. This mode doesn't do any conversion at the protocol level. - Protocol Converter mode: In PCON mode, this device acts as an active DP++->HDMI 2.0 dongle, which converts the DP++ output to compatible HDMI 2.0 output. In PCON mode, lspcon can support 4k@60 outputs, using DP HBR2 mode. Many of Intel GEN9 devices come with in-built lspcon card in motherboartd down mode. This patch series adds support for lspcon devices in I915 driver. While unit-testing this code, I was able to see a 4k@60 modeset with: - BXT-T board - Single HDMI 4k@60 display (ACER S) - Ubuntu 14.04 desktop V2: Worked on review comments from Ville - In general, Ville suggested not to use the dual personality of DDI to drive lspcon, so this patch set drives it just as DP++ display. There is no separate detection for lspcon (hpd_pulse is good enough), and its being driven as a DP display with special initialization and EDID read sequence. To be able to do this, we driving lspcon in PCON mode only, where it can serve both HDMI1.3/HDMI1.4 sinks as well as 4k@60 capable HDMI 2.0 sinks. So compared to previous series, there is one patch less, as we have dropped lspcon detection patch. V3: Addressed review comments from Rodrigo Details available with respective patch. V4: Addressed review comments from Ville Details available with respective patch. V5: Rebase, added a new patch for suspend/resume V6: Rebase, addressed review comments from Imre Shashank Sharma (5): drm: Helper for lspcon in drm_dp_dual_mode drm/i915: Add lspcon support for I915 driver drm/i915: Parse VBT data for lspcon drm/i915: Enable lspcon initialization drm/i915: Add lspcon resume function drivers/gpu/drm/drm_dp_dual_mode_helper.c | 103 ++++++++++++++++++++++ drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/i915_drv.h | 5 ++ drivers/gpu/drm/i915/intel_bios.c | 49 +++++++++++ drivers/gpu/drm/i915/intel_ddi.c | 29 ++++++- drivers/gpu/drm/i915/intel_dp.c | 7 +- drivers/gpu/drm/i915/intel_drv.h | 10 +++ drivers/gpu/drm/i915/intel_lspcon.c | 136 ++++++++++++++++++++++++++++++ include/drm/drm_dp_dual_mode_helper.h | 26 ++++++ 9 files changed, 364 insertions(+), 2 deletions(-) create mode 100644 drivers/gpu/drm/i915/intel_lspcon.c -- 1.9.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx