From: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>,
dri-devel@lists.freedesktop.org,
Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>,
Alex Deucher <alexander.deucher@amd.com>,
Harry Wentland <harry.wentland@amd.com>,
Maarten Lankhorst <maarten.lankhorst@intel.com>,
Ben Skeggs <bskeggs@redhat.com>
Subject: [PATCH v3 0/8] Adding driver-private objects to atomic state
Date: Wed, 8 Feb 2017 22:38:03 -0800 [thread overview]
Message-ID: <1486622291-3524-1-git-send-email-dhinakaran.pandiyan@intel.com> (raw)
Link bandwidth is a shared resource between multiple displays in DP MST
configurations. For atomic modesetting drivers, checking if there is
sufficient link bandwidth for a mode needs to be done during the
atomic_check phase to avoid failed modesets when multiple CRTC's and
connectors are involved.
Managing shared resources like DP MST link bandwidth in the driver's
subclassed atomic_state will result in duplicating the code in each atomic
modesetting driver. But adding objects like DP MST link bandwidth to the
DRM core's drm_atomic_state would mean that an object that is not a core
modesetting object like connector, CRTC or a plane will be modified by the
helper functions for swapping and clearing state. So, this series
introduces void * type driver-private objects in drm_atomic_state and adds
helper functions that operate on these private objects. Drivers can then
implement object-specific functions to swap and clear states.
The advantage of having void * for these objects in drm_atomic_state is
that objects of different types can be managed in the same state array.
This version
1) splits and squashes patches
2) adds documentation
3) fixes vcpi slot accounting logic for suspend-resume and
connector switching
Dhinakaran Pandiyan (8):
drm/dp: Kill total_pbn and total_slots in struct
drm_dp_mst_topology_mgr
drm/dp: Kill unused MST vcpi slot availability tracking
drm/dp: Split drm_dp_mst_allocate_vcpi
drm: Add driver-private objects to atomic state
drm/dp: Introduce MST topology state to track available link bandwidth
drm/dp: Add DP MST helpers to atomically find and release vcpi slots
drm: Connector helper function to release resources
drm/dp: Track MST link bandwidth
drivers/gpu/drm/drm_atomic.c | 68 ++++++++++++
drivers/gpu/drm/drm_atomic_helper.c | 24 ++++
drivers/gpu/drm/drm_dp_mst_topology.c | 181 ++++++++++++++++++++++++++++---
drivers/gpu/drm/i915/intel_dp_mst.c | 42 +++++--
drivers/gpu/drm/nouveau/nv50_display.c | 3 +-
drivers/gpu/drm/radeon/radeon_dp_mst.c | 4 +-
include/drm/drm_atomic.h | 91 ++++++++++++++++
include/drm/drm_dp_mst_helper.h | 33 ++++--
include/drm/drm_modeset_helper_vtables.h | 13 +++
9 files changed, 421 insertions(+), 38 deletions(-)
--
2.7.4
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next reply other threads:[~2017-02-09 6:38 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-09 6:38 Dhinakaran Pandiyan [this message]
2017-02-09 6:38 ` [PATCH v3 1/8] drm/dp: Kill total_pbn and total_slots in struct drm_dp_mst_topology_mgr Dhinakaran Pandiyan
2017-02-09 6:38 ` [PATCH v3 2/8] drm/dp: Kill unused MST vcpi slot availability tracking Dhinakaran Pandiyan
2017-02-09 6:38 ` [PATCH v3 3/8] drm/dp: Split drm_dp_mst_allocate_vcpi Dhinakaran Pandiyan
2017-02-09 6:38 ` [PATCH v3 4/8] drm: Add driver-private objects to atomic state Dhinakaran Pandiyan
2017-02-09 8:08 ` Chris Wilson
2017-02-09 18:57 ` Pandiyan, Dhinakaran
2017-02-15 11:23 ` Archit Taneja
2017-02-16 0:13 ` Pandiyan, Dhinakaran
2017-02-17 10:07 ` Archit Taneja
2017-02-22 0:01 ` Pandiyan, Dhinakaran
2017-02-22 4:29 ` Archit Taneja
2017-02-22 21:10 ` Pandiyan, Dhinakaran
2017-02-26 19:57 ` Daniel Vetter
2017-02-27 18:51 ` Pandiyan, Dhinakaran
2017-03-02 22:31 ` Pandiyan, Dhinakaran
2017-02-09 6:38 ` [PATCH v3 5/8] drm/dp: Introduce MST topology state to track available link bandwidth Dhinakaran Pandiyan
2017-02-09 6:38 ` [PATCH v3 6/8] drm/dp: Add DP MST helpers to atomically find and release vcpi slots Dhinakaran Pandiyan
2017-02-09 6:38 ` [PATCH v3 7/8] drm: Connector helper function to release resources Dhinakaran Pandiyan
2017-02-09 9:01 ` Lankhorst, Maarten
2017-02-09 18:55 ` Pandiyan, Dhinakaran
2017-02-13 9:05 ` Lankhorst, Maarten
2017-02-13 21:26 ` Pandiyan, Dhinakaran
2017-02-13 22:48 ` Pandiyan, Dhinakaran
2017-02-20 9:40 ` Lankhorst, Maarten
2017-02-14 19:51 ` Daniel Vetter
2017-02-14 22:29 ` Pandiyan, Dhinakaran
2017-02-16 9:09 ` Lankhorst, Maarten
2017-02-24 0:52 ` Pandiyan, Dhinakaran
2017-02-26 20:00 ` [Intel-gfx] " Daniel Vetter
2017-02-27 7:42 ` Lankhorst, Maarten
2017-02-09 6:38 ` [PATCH v3 8/8] drm/dp: Track MST link bandwidth Dhinakaran Pandiyan
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=1486622291-3524-1-git-send-email-dhinakaran.pandiyan@intel.com \
--to=dhinakaran.pandiyan@intel.com \
--cc=alexander.deucher@amd.com \
--cc=bskeggs@redhat.com \
--cc=daniel.vetter@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=harry.wentland@amd.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=maarten.lankhorst@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).