All of lore.kernel.org
 help / color / mirror / Atom feed
From: <mikita.lipski-5C7GfCeVMHo@public.gmane.org>
To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Cc: harry.wentland-5C7GfCeVMHo@public.gmane.org,
	Mikita Lipski <mikita.lipski-5C7GfCeVMHo@public.gmane.org>,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Subject: [PATCH v7 13/17] drm/dp_mst: Add helper to trigger modeset on affected DSC MST CRTCs
Date: Sat, 16 Nov 2019 17:01:24 -0500	[thread overview]
Message-ID: <20191116220128.16598-14-mikita.lipski@amd.com> (raw)
In-Reply-To: <20191116220128.16598-1-mikita.lipski-5C7GfCeVMHo@public.gmane.org>

From: Mikita Lipski <mikita.lipski@amd.com>

[why]
Whenever a connector on an MST network is changed or
undergoes a modeset, the DSC configs for each stream on that
topology will be recalculated. This can change their required
bandwidth, requiring a full reprogramming, as though a modeset
was performed, even if that stream did not change timing.

[how]
Adding helper to trigger modesets on MST DSC connectors
by setting mode_changed flag on CRTCs in the same topology
as affected connector

Signed-off-by: Mikita Lipski <mikita.lipski@amd.com>
---
 drivers/gpu/drm/drm_dp_mst_topology.c | 90 +++++++++++++++++++++++++++
 include/drm/drm_dp_mst_helper.h       |  2 +
 2 files changed, 92 insertions(+)

diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
index 5072c1e3dcfe..4d9089fe84c1 100644
--- a/drivers/gpu/drm/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/drm_dp_mst_topology.c
@@ -73,6 +73,7 @@ static bool drm_dp_validate_guid(struct drm_dp_mst_topology_mgr *mgr,
 static int drm_dp_mst_register_i2c_bus(struct drm_dp_aux *aux);
 static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_aux *aux);
 static void drm_dp_mst_kick_tx(struct drm_dp_mst_topology_mgr *mgr);
+static bool drm_dp_mst_is_dsc_supported(struct drm_dp_mst_port *port);
 
 #define DP_STR(x) [DP_ ## x] = #x
 
@@ -3936,6 +3937,66 @@ drm_dp_mst_atomic_check_topology_state(struct drm_dp_mst_topology_mgr *mgr,
 	return 0;
 }
 
+/**
+ * drm_dp_mst_add_affected_dsc_crtcs
+ * @state: Pointer to the new &struct drm_dp_mst_topology_state
+ * @port: Pointer tothe port of connector with new state
+ *
+ * Whenever there is a change in mst topology
+ * DSC configuration would have to be recalculated
+ * therefore we need to trigger modeset on all affected
+ * CRTCs in that topology
+ *
+ * See also:
+ * drm_dp_mst_atomic_enable_dsc()
+ */
+int drm_dp_mst_add_affected_dsc_crtcs(struct drm_atomic_state *state, struct drm_dp_mst_port *port)
+{
+	struct drm_dp_mst_topology_state *mst_state;
+	struct drm_dp_vcpi_allocation *pos;
+	struct drm_connector *connector;
+	struct drm_connector_state *conn_state;
+	struct drm_crtc *crtc;
+	struct drm_crtc_state *crtc_state;
+
+	if (!port)
+		return -EINVAL;
+
+	mst_state = drm_atomic_get_mst_topology_state(state, port->mgr);
+
+	list_for_each_entry(pos, &mst_state->vcpis, next) {
+
+		connector = pos->port->connector;
+
+		if (!connector)
+			return -EINVAL;
+
+		conn_state = drm_atomic_get_connector_state(state, connector);
+
+		if (IS_ERR(conn_state))
+			return PTR_ERR(conn_state);
+
+		crtc = conn_state->crtc;
+
+		if (!crtc)
+			return -EINVAL;
+
+		if (!drm_dp_mst_is_dsc_supported(pos->port))
+			continue;
+
+		crtc_state = drm_atomic_get_crtc_state(mst_state->base.state, crtc);
+
+		if (IS_ERR(crtc_state))
+			return PTR_ERR(crtc_state);
+
+		DRM_DEBUG_ATOMIC("[MST PORT:%p] Setting mode_changed flag on CRTC %p\n", port, crtc);
+
+		crtc_state->mode_changed = true;
+	}
+	return 0;
+}
+EXPORT_SYMBOL(drm_dp_mst_add_affected_dsc_crtcs);
+
 /**
  * drm_dp_mst_atomic_enable_dsc - Set DSC Enable Flag to On/Off
  * @state: Pointer to the new drm_atomic_state 
@@ -4433,3 +4494,32 @@ struct drm_dp_aux *drm_dp_mst_dsc_aux_for_port(struct drm_dp_mst_port *port)
 	return NULL;
 }
 EXPORT_SYMBOL(drm_dp_mst_dsc_aux_for_port);
+
+/**
+ * drm_dp_mst_is_dsc_supported() - Verify DSC support on connector
+ * @port: The port to check. A leaf of the MST tree with an attached display.
+ *
+ * Acquiring correct aux from drm_dp_mst_dsc_aux_for_port
+ * and verifying DPCD flag that the aux is DSC capable
+ *
+ * Returns:
+ * True / False - if DSC is supported
+ */
+static bool drm_dp_mst_is_dsc_supported(struct drm_dp_mst_port *port)
+{
+	struct drm_dp_aux *dsc_aux;
+	u8 endpoint_dsc;
+
+	dsc_aux = drm_dp_mst_dsc_aux_for_port(port);
+
+	if (!dsc_aux)
+		return false;
+
+	if (drm_dp_dpcd_read(&port->aux, DP_DSC_SUPPORT, &endpoint_dsc, 1) < 0)
+		return false;
+
+	if (endpoint_dsc & DP_DSC_DECOMPRESSION_IS_SUPPORTED)
+		return true;
+
+	return false;
+}
diff --git a/include/drm/drm_dp_mst_helper.h b/include/drm/drm_dp_mst_helper.h
index 5a119a40ed5a..7d1e5e42c9ac 100644
--- a/include/drm/drm_dp_mst_helper.h
+++ b/include/drm/drm_dp_mst_helper.h
@@ -669,6 +669,8 @@ int drm_dp_mst_atomic_enable_dsc(struct drm_atomic_state *state,
 				 struct drm_dp_mst_port *port,
 				 int pbn, int pbn_div,
 				 bool enable);
+int drm_dp_mst_add_affected_dsc_crtcs(struct drm_atomic_state *state,
+				      struct drm_dp_mst_port *port);
 int __must_check
 drm_dp_atomic_release_vcpi_slots(struct drm_atomic_state *state,
 				 struct drm_dp_mst_topology_mgr *mgr,
-- 
2.17.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

WARNING: multiple messages have this Message-ID (diff)
From: <mikita.lipski@amd.com>
To: <amd-gfx@lists.freedesktop.org>
Cc: Mikita Lipski <mikita.lipski@amd.com>, dri-devel@lists.freedesktop.org
Subject: [PATCH v7 13/17] drm/dp_mst: Add helper to trigger modeset on affected DSC MST CRTCs
Date: Sat, 16 Nov 2019 17:01:24 -0500	[thread overview]
Message-ID: <20191116220128.16598-14-mikita.lipski@amd.com> (raw)
Message-ID: <20191116220124.0Fr2Zx3jXTSlXXoMvzJ7rKvcs1IVIPqAXmkC7a_k8Qc@z> (raw)
In-Reply-To: <20191116220128.16598-1-mikita.lipski@amd.com>

From: Mikita Lipski <mikita.lipski@amd.com>

[why]
Whenever a connector on an MST network is changed or
undergoes a modeset, the DSC configs for each stream on that
topology will be recalculated. This can change their required
bandwidth, requiring a full reprogramming, as though a modeset
was performed, even if that stream did not change timing.

[how]
Adding helper to trigger modesets on MST DSC connectors
by setting mode_changed flag on CRTCs in the same topology
as affected connector

Signed-off-by: Mikita Lipski <mikita.lipski@amd.com>
---
 drivers/gpu/drm/drm_dp_mst_topology.c | 90 +++++++++++++++++++++++++++
 include/drm/drm_dp_mst_helper.h       |  2 +
 2 files changed, 92 insertions(+)

diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
index 5072c1e3dcfe..4d9089fe84c1 100644
--- a/drivers/gpu/drm/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/drm_dp_mst_topology.c
@@ -73,6 +73,7 @@ static bool drm_dp_validate_guid(struct drm_dp_mst_topology_mgr *mgr,
 static int drm_dp_mst_register_i2c_bus(struct drm_dp_aux *aux);
 static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_aux *aux);
 static void drm_dp_mst_kick_tx(struct drm_dp_mst_topology_mgr *mgr);
+static bool drm_dp_mst_is_dsc_supported(struct drm_dp_mst_port *port);
 
 #define DP_STR(x) [DP_ ## x] = #x
 
@@ -3936,6 +3937,66 @@ drm_dp_mst_atomic_check_topology_state(struct drm_dp_mst_topology_mgr *mgr,
 	return 0;
 }
 
+/**
+ * drm_dp_mst_add_affected_dsc_crtcs
+ * @state: Pointer to the new &struct drm_dp_mst_topology_state
+ * @port: Pointer tothe port of connector with new state
+ *
+ * Whenever there is a change in mst topology
+ * DSC configuration would have to be recalculated
+ * therefore we need to trigger modeset on all affected
+ * CRTCs in that topology
+ *
+ * See also:
+ * drm_dp_mst_atomic_enable_dsc()
+ */
+int drm_dp_mst_add_affected_dsc_crtcs(struct drm_atomic_state *state, struct drm_dp_mst_port *port)
+{
+	struct drm_dp_mst_topology_state *mst_state;
+	struct drm_dp_vcpi_allocation *pos;
+	struct drm_connector *connector;
+	struct drm_connector_state *conn_state;
+	struct drm_crtc *crtc;
+	struct drm_crtc_state *crtc_state;
+
+	if (!port)
+		return -EINVAL;
+
+	mst_state = drm_atomic_get_mst_topology_state(state, port->mgr);
+
+	list_for_each_entry(pos, &mst_state->vcpis, next) {
+
+		connector = pos->port->connector;
+
+		if (!connector)
+			return -EINVAL;
+
+		conn_state = drm_atomic_get_connector_state(state, connector);
+
+		if (IS_ERR(conn_state))
+			return PTR_ERR(conn_state);
+
+		crtc = conn_state->crtc;
+
+		if (!crtc)
+			return -EINVAL;
+
+		if (!drm_dp_mst_is_dsc_supported(pos->port))
+			continue;
+
+		crtc_state = drm_atomic_get_crtc_state(mst_state->base.state, crtc);
+
+		if (IS_ERR(crtc_state))
+			return PTR_ERR(crtc_state);
+
+		DRM_DEBUG_ATOMIC("[MST PORT:%p] Setting mode_changed flag on CRTC %p\n", port, crtc);
+
+		crtc_state->mode_changed = true;
+	}
+	return 0;
+}
+EXPORT_SYMBOL(drm_dp_mst_add_affected_dsc_crtcs);
+
 /**
  * drm_dp_mst_atomic_enable_dsc - Set DSC Enable Flag to On/Off
  * @state: Pointer to the new drm_atomic_state 
@@ -4433,3 +4494,32 @@ struct drm_dp_aux *drm_dp_mst_dsc_aux_for_port(struct drm_dp_mst_port *port)
 	return NULL;
 }
 EXPORT_SYMBOL(drm_dp_mst_dsc_aux_for_port);
+
+/**
+ * drm_dp_mst_is_dsc_supported() - Verify DSC support on connector
+ * @port: The port to check. A leaf of the MST tree with an attached display.
+ *
+ * Acquiring correct aux from drm_dp_mst_dsc_aux_for_port
+ * and verifying DPCD flag that the aux is DSC capable
+ *
+ * Returns:
+ * True / False - if DSC is supported
+ */
+static bool drm_dp_mst_is_dsc_supported(struct drm_dp_mst_port *port)
+{
+	struct drm_dp_aux *dsc_aux;
+	u8 endpoint_dsc;
+
+	dsc_aux = drm_dp_mst_dsc_aux_for_port(port);
+
+	if (!dsc_aux)
+		return false;
+
+	if (drm_dp_dpcd_read(&port->aux, DP_DSC_SUPPORT, &endpoint_dsc, 1) < 0)
+		return false;
+
+	if (endpoint_dsc & DP_DSC_DECOMPRESSION_IS_SUPPORTED)
+		return true;
+
+	return false;
+}
diff --git a/include/drm/drm_dp_mst_helper.h b/include/drm/drm_dp_mst_helper.h
index 5a119a40ed5a..7d1e5e42c9ac 100644
--- a/include/drm/drm_dp_mst_helper.h
+++ b/include/drm/drm_dp_mst_helper.h
@@ -669,6 +669,8 @@ int drm_dp_mst_atomic_enable_dsc(struct drm_atomic_state *state,
 				 struct drm_dp_mst_port *port,
 				 int pbn, int pbn_div,
 				 bool enable);
+int drm_dp_mst_add_affected_dsc_crtcs(struct drm_atomic_state *state,
+				      struct drm_dp_mst_port *port);
 int __must_check
 drm_dp_atomic_release_vcpi_slots(struct drm_atomic_state *state,
 				 struct drm_dp_mst_topology_mgr *mgr,
-- 
2.17.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: <mikita.lipski@amd.com>
To: <amd-gfx@lists.freedesktop.org>
Cc: harry.wentland@amd.com, Mikita Lipski <mikita.lipski@amd.com>,
	dri-devel@lists.freedesktop.org
Subject: [PATCH v7 13/17] drm/dp_mst: Add helper to trigger modeset on affected DSC MST CRTCs
Date: Sat, 16 Nov 2019 17:01:24 -0500	[thread overview]
Message-ID: <20191116220128.16598-14-mikita.lipski@amd.com> (raw)
Message-ID: <20191116220124.9eAsOa86NEH-TL-yYcs4LdyLfMjZqeoLvjEYvJEYMU8@z> (raw)
In-Reply-To: <20191116220128.16598-1-mikita.lipski@amd.com>

From: Mikita Lipski <mikita.lipski@amd.com>

[why]
Whenever a connector on an MST network is changed or
undergoes a modeset, the DSC configs for each stream on that
topology will be recalculated. This can change their required
bandwidth, requiring a full reprogramming, as though a modeset
was performed, even if that stream did not change timing.

[how]
Adding helper to trigger modesets on MST DSC connectors
by setting mode_changed flag on CRTCs in the same topology
as affected connector

Signed-off-by: Mikita Lipski <mikita.lipski@amd.com>
---
 drivers/gpu/drm/drm_dp_mst_topology.c | 90 +++++++++++++++++++++++++++
 include/drm/drm_dp_mst_helper.h       |  2 +
 2 files changed, 92 insertions(+)

diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c
index 5072c1e3dcfe..4d9089fe84c1 100644
--- a/drivers/gpu/drm/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/drm_dp_mst_topology.c
@@ -73,6 +73,7 @@ static bool drm_dp_validate_guid(struct drm_dp_mst_topology_mgr *mgr,
 static int drm_dp_mst_register_i2c_bus(struct drm_dp_aux *aux);
 static void drm_dp_mst_unregister_i2c_bus(struct drm_dp_aux *aux);
 static void drm_dp_mst_kick_tx(struct drm_dp_mst_topology_mgr *mgr);
+static bool drm_dp_mst_is_dsc_supported(struct drm_dp_mst_port *port);
 
 #define DP_STR(x) [DP_ ## x] = #x
 
@@ -3936,6 +3937,66 @@ drm_dp_mst_atomic_check_topology_state(struct drm_dp_mst_topology_mgr *mgr,
 	return 0;
 }
 
+/**
+ * drm_dp_mst_add_affected_dsc_crtcs
+ * @state: Pointer to the new &struct drm_dp_mst_topology_state
+ * @port: Pointer tothe port of connector with new state
+ *
+ * Whenever there is a change in mst topology
+ * DSC configuration would have to be recalculated
+ * therefore we need to trigger modeset on all affected
+ * CRTCs in that topology
+ *
+ * See also:
+ * drm_dp_mst_atomic_enable_dsc()
+ */
+int drm_dp_mst_add_affected_dsc_crtcs(struct drm_atomic_state *state, struct drm_dp_mst_port *port)
+{
+	struct drm_dp_mst_topology_state *mst_state;
+	struct drm_dp_vcpi_allocation *pos;
+	struct drm_connector *connector;
+	struct drm_connector_state *conn_state;
+	struct drm_crtc *crtc;
+	struct drm_crtc_state *crtc_state;
+
+	if (!port)
+		return -EINVAL;
+
+	mst_state = drm_atomic_get_mst_topology_state(state, port->mgr);
+
+	list_for_each_entry(pos, &mst_state->vcpis, next) {
+
+		connector = pos->port->connector;
+
+		if (!connector)
+			return -EINVAL;
+
+		conn_state = drm_atomic_get_connector_state(state, connector);
+
+		if (IS_ERR(conn_state))
+			return PTR_ERR(conn_state);
+
+		crtc = conn_state->crtc;
+
+		if (!crtc)
+			return -EINVAL;
+
+		if (!drm_dp_mst_is_dsc_supported(pos->port))
+			continue;
+
+		crtc_state = drm_atomic_get_crtc_state(mst_state->base.state, crtc);
+
+		if (IS_ERR(crtc_state))
+			return PTR_ERR(crtc_state);
+
+		DRM_DEBUG_ATOMIC("[MST PORT:%p] Setting mode_changed flag on CRTC %p\n", port, crtc);
+
+		crtc_state->mode_changed = true;
+	}
+	return 0;
+}
+EXPORT_SYMBOL(drm_dp_mst_add_affected_dsc_crtcs);
+
 /**
  * drm_dp_mst_atomic_enable_dsc - Set DSC Enable Flag to On/Off
  * @state: Pointer to the new drm_atomic_state 
@@ -4433,3 +4494,32 @@ struct drm_dp_aux *drm_dp_mst_dsc_aux_for_port(struct drm_dp_mst_port *port)
 	return NULL;
 }
 EXPORT_SYMBOL(drm_dp_mst_dsc_aux_for_port);
+
+/**
+ * drm_dp_mst_is_dsc_supported() - Verify DSC support on connector
+ * @port: The port to check. A leaf of the MST tree with an attached display.
+ *
+ * Acquiring correct aux from drm_dp_mst_dsc_aux_for_port
+ * and verifying DPCD flag that the aux is DSC capable
+ *
+ * Returns:
+ * True / False - if DSC is supported
+ */
+static bool drm_dp_mst_is_dsc_supported(struct drm_dp_mst_port *port)
+{
+	struct drm_dp_aux *dsc_aux;
+	u8 endpoint_dsc;
+
+	dsc_aux = drm_dp_mst_dsc_aux_for_port(port);
+
+	if (!dsc_aux)
+		return false;
+
+	if (drm_dp_dpcd_read(&port->aux, DP_DSC_SUPPORT, &endpoint_dsc, 1) < 0)
+		return false;
+
+	if (endpoint_dsc & DP_DSC_DECOMPRESSION_IS_SUPPORTED)
+		return true;
+
+	return false;
+}
diff --git a/include/drm/drm_dp_mst_helper.h b/include/drm/drm_dp_mst_helper.h
index 5a119a40ed5a..7d1e5e42c9ac 100644
--- a/include/drm/drm_dp_mst_helper.h
+++ b/include/drm/drm_dp_mst_helper.h
@@ -669,6 +669,8 @@ int drm_dp_mst_atomic_enable_dsc(struct drm_atomic_state *state,
 				 struct drm_dp_mst_port *port,
 				 int pbn, int pbn_div,
 				 bool enable);
+int drm_dp_mst_add_affected_dsc_crtcs(struct drm_atomic_state *state,
+				      struct drm_dp_mst_port *port);
 int __must_check
 drm_dp_atomic_release_vcpi_slots(struct drm_atomic_state *state,
 				 struct drm_dp_mst_topology_mgr *mgr,
-- 
2.17.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

  parent reply	other threads:[~2019-11-16 22:01 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-16 22:01 [PATCH v7 00/17] DSC MST support for DRM and AMDGPU mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01 ` mikita.lipski
2019-11-16 22:01 ` mikita.lipski
2019-11-16 22:01 ` [PATCH v7 01/17] drm/dp_mst: Add PBN calculation for DSC modes mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01 ` [PATCH v7 05/17] drm/dp_mst: Add helpers for MST DSC and virtual DPCD aux mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01   ` mikita.lipski
     [not found] ` <20191116220128.16598-1-mikita.lipski-5C7GfCeVMHo@public.gmane.org>
2019-11-16 22:01   ` [PATCH v7 02/17] drm/dp_mst: Parse FEC capability on MST ports mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 03/17] drm/dp_mst: Add MST support to DP DPCD R/W functions mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 04/17] drm/dp_mst: Fill branch->num_ports mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 06/17] drm/dp_mst: Add new quirk for Synaptics MST hubs mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 07/17] drm/amd/display: Initialize DSC PPS variables to 0 mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 08/17] drm/amd/display: Validate DSC caps on MST endpoints mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 09/17] drm/amd/display: Write DSC enable to MST DPCD mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 10/17] drm/dp_mst: Manually overwrite PBN divider for calculating timeslots mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
     [not found]     ` <20191116220128.16598-11-mikita.lipski-5C7GfCeVMHo@public.gmane.org>
2019-11-26 15:06       ` Leo
2019-11-26 15:06         ` Leo
2019-11-16 22:01   ` [PATCH v7 11/17] drm/dp_mst: Add DSC enablement helpers to DRM mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
     [not found]     ` <20191116220128.16598-12-mikita.lipski-5C7GfCeVMHo@public.gmane.org>
2019-11-26 15:24       ` Leo
2019-11-26 15:24         ` Leo
     [not found]         ` <fe56a601-777d-f8db-c229-f155a162f100-5C7GfCeVMHo@public.gmane.org>
2019-11-26 15:27           ` Leo
2019-11-26 15:27             ` Leo
2019-11-26 15:32           ` Mikita Lipski
2019-11-26 15:32             ` Mikita Lipski
2019-11-16 22:01   ` [PATCH v7 12/17] drm/dp_mst: Add branch bandwidth validation to MST atomic check mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
     [not found]     ` <20191116220128.16598-13-mikita.lipski-5C7GfCeVMHo@public.gmane.org>
2019-11-26 19:55       ` Leo
2019-11-26 19:55         ` Leo
2019-11-26 19:55         ` Leo
2019-11-16 22:01   ` mikita.lipski-5C7GfCeVMHo [this message]
2019-11-16 22:01     ` [PATCH v7 13/17] drm/dp_mst: Add helper to trigger modeset on affected DSC MST CRTCs mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01   ` [PATCH v7 14/17] drm/amd/display: Add PBN per slot calculation for DSC mikita.lipski-5C7GfCeVMHo
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01     ` mikita.lipski
2019-11-16 22:01 ` [PATCH v7 15/17] drm/amd/display: MST DSC compute fair share mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01 ` [PATCH v7 16/17] drm/amd/display: Recalculate VCPI slots for new DSC connectors mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01 ` [PATCH v7 17/17] drm/amd/display: Trigger modesets on MST " mikita.lipski
2019-11-16 22:01   ` mikita.lipski
2019-11-16 22:01   ` mikita.lipski

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=20191116220128.16598-14-mikita.lipski@amd.com \
    --to=mikita.lipski-5c7gfcevmho@public.gmane.org \
    --cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=harry.wentland-5C7GfCeVMHo@public.gmane.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.