From: Durgadoss R <durgadoss.r@intel.com>
To: intel-gfx@lists.freedesktop.org
Subject: [PATCH 0/7] Add USB typeC based DP support for BXT platform
Date: Fri, 11 Dec 2015 15:09:21 +0530 [thread overview]
Message-ID: <1449826768-19415-1-git-send-email-durgadoss.r@intel.com> (raw)
This patch series adds upfront link training support to enable
USB type C based DP on BXT platform.
To support USB type C alternate DP mode, the display driver needs to
know the number of lanes required by the DP panel as well as number
of lanes that can be supported by the type-C cable. Sometimes, the
type-C cable may limit the bandwidth even if Panel can support
more lanes.
The goal is to find out the number of lanes which can be supported
using a particular cable so that we can cap 'max_available_lanes'
to that number during modeset.
Patches 1-4/7 :Refactoring/exporting DDI functions required
to do upfront link train
Patch 5/7 :Exports a common function to update DPCD
Patch 6/7 :Moves finding unused crtc to a common function
Patch 7/7 :Upfront implementation for DDI platforms, that is
for now, tested on BXT A1.
Changes from RFCv2:
* Rebased on top of atomic and latest-nightly
* Re-used code in load_detect to find unused crtc as per Ander's comment
* Moved DPCD update to common function which can be used by upfront
link train code for other platforms also.
* intel_crtc_control() does not exist in atomic world; so implemented
the required dpms_off/on calls through get/release_load_detect()
functions which take care of locking semantics.
The other option I tried was using intel_crtc_disable_noatomic()
But this does not have a corresponding _enable part (and hence
needed a connector->func->dpms_on() anyway). Hence re-using the
load_detect functions makes the implementation cleaner.
* Replaced all unnecessary local variables in upfront link train
code with the corresponding ones in intel_dp struct.
* RFCv2 link: https://patchwork.freedesktop.org/patch/61776/
As per Daniel's suggestion on RFCv1:
* Added the last patch 6/6 that has implementation for CHV
* Made intel_dp_upfront_link_train as common for all platforms
and added a intel_ddi_upfront_* for all DDI platforms.
Currently, have restricted it to only for SKL/BXT.
* Moved the upfront code for DDI platforms into intel_ddi.c
from display.c, since that aligned better with other
ddi* functions.
* Kept the CHV implementation in display.c as of now
since we are using some pll functions defined in display.c
We can discuss and finalize an appropriate place for this
and then refactor/export required functions.
Durgadoss R (7):
drm/i915/dp: Reuse encoder if it is already available
drm/i915/dp: Reuse shared DPLL if it exists already
drm/i915/dp: Abstract all get_ddi_pll methods
drm/i915/dp: Export enable/disable_shared_dpll methods
drm/i915/dp: Add methods to update link train params
drm/i915: Make finding unused crtc as a generic function
drm/i915/dp: Enable Upfront link training for typeC DP support on BXT
drivers/gpu/drm/i915/intel_ddi.c | 160 ++++++++++++++++++++++++++++-------
drivers/gpu/drm/i915/intel_display.c | 61 ++++++++-----
drivers/gpu/drm/i915/intel_dp.c | 111 +++++++++++++++++++++++-
drivers/gpu/drm/i915/intel_drv.h | 12 ++-
4 files changed, 287 insertions(+), 57 deletions(-)
--
1.9.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
next reply other threads:[~2015-12-11 9:09 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-11 9:39 Durgadoss R [this message]
2015-12-11 9:39 ` [PATCH 1/7] drm/i915/dp: Reuse encoder if it is already available Durgadoss R
2015-12-11 9:39 ` [PATCH 2/7] drm/i915/dp: Reuse shared DPLL if it exists already Durgadoss R
2015-12-11 9:39 ` [PATCH 3/7] drm/i915/dp: Abstract all get_ddi_pll methods Durgadoss R
2015-12-11 9:39 ` [PATCH 4/7] drm/i915/dp: Export enable/disable_shared_dpll methods Durgadoss R
2015-12-11 9:39 ` [PATCH 5/7] drm/i915/dp: Add methods to update link train params Durgadoss R
2016-01-11 14:36 ` Ander Conselvan De Oliveira
2016-01-12 6:35 ` R, Durgadoss
2015-12-11 9:39 ` [PATCH 6/7] drm/i915: Make finding unused crtc as a generic function Durgadoss R
2015-12-11 9:39 ` [PATCH 7/7] drm/i915/dp: Enable Upfront link training for typeC DP support on BXT Durgadoss R
2015-12-29 17:22 ` Ander Conselvan De Oliveira
2015-12-29 18:50 ` R, Durgadoss
2016-01-11 14:10 ` Ander Conselvan De Oliveira
2016-01-11 17:51 ` R, Durgadoss
2015-12-29 23:48 ` Dave Airlie
2016-01-04 18:39 ` Jim Bride
2016-01-11 15:15 ` Ander Conselvan De Oliveira
2016-01-11 17:53 ` R, Durgadoss
2016-01-12 9:37 ` Ander Conselvan De Oliveira
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1449826768-19415-1-git-send-email-durgadoss.r@intel.com \
--to=durgadoss.r@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.