mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-24 15:56:49 +00:00
57 lines
2.2 KiB
Diff
57 lines
2.2 KiB
Diff
|
From d62184f6b06627b4fe922b08132e38c181d389a0 Mon Sep 17 00:00:00 2001
|
|||
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|||
|
Date: Tue, 28 Mar 2023 22:37:52 +0530
|
|||
|
Subject: [PATCH 1270/1350] drm/bridge: Document bridge init order with
|
|||
|
pre_enable_prev_first
|
|||
|
MIME-Version: 1.0
|
|||
|
Content-Type: text/plain; charset=UTF-8
|
|||
|
Content-Transfer-Encoding: 8bit
|
|||
|
|
|||
|
Upstream commit 113cc3ad8566e06d6c8ef4fc0075a938dedefab5
|
|||
|
|
|||
|
In order to satisfy the MIPI DSI initialization sequence the bridge
|
|||
|
init order has been altered with the help of pre_enable_prev_first
|
|||
|
in pre_enable and post_disable bridge operations.
|
|||
|
|
|||
|
Document the affected bridge init order with an example on the
|
|||
|
bridge operations helpers.
|
|||
|
|
|||
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|||
|
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
|
|||
|
Signed-off-by: Robert Foss <rfoss@kernel.org>
|
|||
|
Link: https://patchwork.freedesktop.org/patch/msgid/20230328170752.1102347-2-jagan@amarulasolutions.com
|
|||
|
---
|
|||
|
drivers/gpu/drm/drm_bridge.c | 14 ++++++++++++++
|
|||
|
1 file changed, 14 insertions(+)
|
|||
|
|
|||
|
--- a/drivers/gpu/drm/drm_bridge.c
|
|||
|
+++ b/drivers/gpu/drm/drm_bridge.c
|
|||
|
@@ -657,6 +657,13 @@ static void drm_atomic_bridge_call_post_
|
|||
|
* bridge will be called before the previous one to reverse the @pre_enable
|
|||
|
* calling direction.
|
|||
|
*
|
|||
|
+ * Example:
|
|||
|
+ * Bridge A ---> Bridge B ---> Bridge C ---> Bridge D ---> Bridge E
|
|||
|
+ *
|
|||
|
+ * With pre_enable_prev_first flag enable in Bridge B, D, E then the resulting
|
|||
|
+ * @post_disable order would be,
|
|||
|
+ * Bridge B, Bridge A, Bridge E, Bridge D, Bridge C.
|
|||
|
+ *
|
|||
|
* Note: the bridge passed should be the one closest to the encoder
|
|||
|
*/
|
|||
|
void drm_atomic_bridge_chain_post_disable(struct drm_bridge *bridge,
|
|||
|
@@ -753,6 +760,13 @@ static void drm_atomic_bridge_call_pre_e
|
|||
|
* If a bridge sets @pre_enable_prev_first, then the pre_enable for the
|
|||
|
* prev bridge will be called before pre_enable of this bridge.
|
|||
|
*
|
|||
|
+ * Example:
|
|||
|
+ * Bridge A ---> Bridge B ---> Bridge C ---> Bridge D ---> Bridge E
|
|||
|
+ *
|
|||
|
+ * With pre_enable_prev_first flag enable in Bridge B, D, E then the resulting
|
|||
|
+ * @pre_enable order would be,
|
|||
|
+ * Bridge C, Bridge D, Bridge E, Bridge A, Bridge B.
|
|||
|
+ *
|
|||
|
* Note: the bridge passed should be the one closest to the encoder
|
|||
|
*/
|
|||
|
void drm_atomic_bridge_chain_pre_enable(struct drm_bridge *bridge,
|