mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From f0f8bab8cb7c50cd1fbcb36854fe138c384f0495 Mon Sep 17 00:00:00 2001
 | 
						|
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
 | 
						|
Date: Wed, 23 Feb 2022 15:36:56 +0000
 | 
						|
Subject: [PATCH 035/726] drm/panel: Add prepare_upstream_first flag to
 | 
						|
 drm_panel
 | 
						|
 | 
						|
Mapping to the drm_bridge flag pre_enable_upstream_first,
 | 
						|
add a new flag prepare_upstream_first to drm_panel to allow
 | 
						|
the panel driver to request that the upstream bridge should
 | 
						|
be pre_enabled before the panel prepare.
 | 
						|
 | 
						|
Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
 | 
						|
---
 | 
						|
 drivers/gpu/drm/bridge/panel.c |  3 +++
 | 
						|
 include/drm/drm_panel.h        | 10 ++++++++++
 | 
						|
 2 files changed, 13 insertions(+)
 | 
						|
 | 
						|
diff --git a/drivers/gpu/drm/bridge/panel.c b/drivers/gpu/drm/bridge/panel.c
 | 
						|
index 94ecad089cba..0c1dcf85ed13 100644
 | 
						|
--- a/drivers/gpu/drm/bridge/panel.c
 | 
						|
+++ b/drivers/gpu/drm/bridge/panel.c
 | 
						|
@@ -258,6 +258,9 @@ struct drm_bridge *drm_panel_bridge_add_typed(struct drm_panel *panel,
 | 
						|
 	panel_bridge->bridge.ops = DRM_BRIDGE_OP_MODES;
 | 
						|
 	panel_bridge->bridge.type = connector_type;
 | 
						|
 
 | 
						|
+	panel_bridge->bridge.pre_enable_upstream_first =
 | 
						|
+						panel->prepare_upstream_first;
 | 
						|
+
 | 
						|
 	drm_bridge_add(&panel_bridge->bridge);
 | 
						|
 
 | 
						|
 	return &panel_bridge->bridge;
 | 
						|
diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
 | 
						|
index 8ea3885cd93f..81ea5e5b272e 100644
 | 
						|
--- a/include/drm/drm_panel.h
 | 
						|
+++ b/include/drm/drm_panel.h
 | 
						|
@@ -196,6 +196,16 @@ struct drm_panel {
 | 
						|
 	 * Panel entry in registry.
 | 
						|
 	 */
 | 
						|
 	struct list_head list;
 | 
						|
+
 | 
						|
+	/**
 | 
						|
+	 * @prepare_upstream_first:
 | 
						|
+	 *
 | 
						|
+	 * The upstream controller should be prepared first, before the prepare
 | 
						|
+	 * for the panel is called. This is largely required for DSI panels
 | 
						|
+	 * where the DSI host controller should be initialised to LP-11 before
 | 
						|
+	 * the panel is powered up.
 | 
						|
+	 */
 | 
						|
+	bool prepare_upstream_first;
 | 
						|
 };
 | 
						|
 
 | 
						|
 void drm_panel_init(struct drm_panel *panel, struct device *dev,
 | 
						|
-- 
 | 
						|
2.33.1
 | 
						|
 |