diff options
author | Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> | 2017-09-06 17:14:58 -0700 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2017-09-11 16:03:57 +0300 |
commit | 0bb9c2b27f5e503e683ad27a0f0a6286f5b5da34 (patch) | |
tree | 13a0cb3d28a6c0d135fbe52273768c26838b787c /include/drm | |
parent | 8a50b9bd5679d5788f2f7add576fbd8e3ad6fed6 (diff) | |
download | op-kernel-dev-0bb9c2b27f5e503e683ad27a0f0a6286f5b5da34.zip op-kernel-dev-0bb9c2b27f5e503e683ad27a0f0a6286f5b5da34.tar.gz |
drm/dp/mst: Sideband message transaction to power up/down nodes
The POWER_DOWN_PHY and POWER_UP_PHY sideband message transactions allow
the source to reqest any node in a mst path or a whole path to be
powered down or up. This allows drivers to target a specific sink in the
MST topology, an improvement over just power managing the imediate
downstream device. Secondly, since the request-reply protocol waits for an
ACK, we can be sure that a downstream sink has enough time to respond to a
power up/down request.
v2: Fix memory leak (Lyude)
Cc: Lyude <lyude@redhat.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170907001458.9399-1-dhinakaran.pandiyan@intel.com
Reviewed-by: Lyude Paul <lyude@redhat.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Diffstat (limited to 'include/drm')
-rw-r--r-- | include/drm/drm_dp_mst_helper.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/drm/drm_dp_mst_helper.h b/include/drm/drm_dp_mst_helper.h index d55abb7..7f78d26 100644 --- a/include/drm/drm_dp_mst_helper.h +++ b/include/drm/drm_dp_mst_helper.h @@ -631,5 +631,7 @@ int drm_dp_atomic_find_vcpi_slots(struct drm_atomic_state *state, int drm_dp_atomic_release_vcpi_slots(struct drm_atomic_state *state, struct drm_dp_mst_topology_mgr *mgr, int slots); +int drm_dp_send_power_updown_phy(struct drm_dp_mst_topology_mgr *mgr, + struct drm_dp_mst_port *port, bool power_up); #endif |