drm/panel: boe-tv101wum-nl6: make use of prepare_prev_first

Message ID 20240216123111.1.I71c103720909790e1ec5a3f5bd96b18ab7b596fa@changeid
State New
Headers
Series drm/panel: boe-tv101wum-nl6: make use of prepare_prev_first |

Commit Message

Doug Anderson Feb. 16, 2024, 8:31 p.m. UTC
  The panel on sc7180-trogdor-wormdingler and
sc7180-trogdor-quackingstick hasn't been coming up since commit
9e15123eca79 ("drm/msm/dsi: Stop unconditionally powering up DSI hosts
at modeset"). Let's add "prepare_prev_first" as has been done for many
other DSI panels.

Fixes: 9e15123eca79 ("drm/msm/dsi: Stop unconditionally powering up DSI hosts at modeset")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
---
This of course gets into debates about getting a nicer solution that
doesn't involve adding "prepare_prev_first" to every DSI panel out
there, maybe building on Dmitry's work [1]. While it would be nice if
we could get there, getting this landed is easy to backport to stable
trees and gets the panel working again.

[1] https://lore.kernel.org/r/20231016165355.1327217-4-dmitry.baryshkov@linaro.org

 drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

Jessica Zhang Feb. 16, 2024, 9:21 p.m. UTC | #1
On 2/16/2024 12:31 PM, Douglas Anderson wrote:
> The panel on sc7180-trogdor-wormdingler and
> sc7180-trogdor-quackingstick hasn't been coming up since commit
> 9e15123eca79 ("drm/msm/dsi: Stop unconditionally powering up DSI hosts
> at modeset"). Let's add "prepare_prev_first" as has been done for many
> other DSI panels.
> 
> Fixes: 9e15123eca79 ("drm/msm/dsi: Stop unconditionally powering up DSI hosts at modeset")
> Signed-off-by: Douglas Anderson <dianders@chromium.org>

Hi Doug,

Reviewed-by: Jessica Zhang <quic_jesszhan@quicinc.com>

Thanks,

Jessica Zhang

> ---
> This of course gets into debates about getting a nicer solution that
> doesn't involve adding "prepare_prev_first" to every DSI panel out
> there, maybe building on Dmitry's work [1]. While it would be nice if
> we could get there, getting this landed is easy to backport to stable
> trees and gets the panel working again.
> 
> [1] https://lore.kernel.org/r/20231016165355.1327217-4-dmitry.baryshkov@linaro.org
> 
>   drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c b/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c
> index c4c0f08e9202..bc08814954f9 100644
> --- a/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c
> +++ b/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c
> @@ -1871,6 +1871,8 @@ static int boe_panel_add(struct boe_panel *boe)
>   
>   	gpiod_set_value(boe->enable_gpio, 0);
>   
> +	boe->base.prepare_prev_first = true;
> +
>   	drm_panel_init(&boe->base, dev, &boe_panel_funcs,
>   		       DRM_MODE_CONNECTOR_DSI);
>   	err = of_drm_get_panel_orientation(dev->of_node, &boe->orientation);
> -- 
> 2.44.0.rc0.258.g7320e95886-goog
>
  
Neil Armstrong Feb. 19, 2024, 9:11 a.m. UTC | #2
Hi,

On Fri, 16 Feb 2024 12:31:12 -0800, Douglas Anderson wrote:
> The panel on sc7180-trogdor-wormdingler and
> sc7180-trogdor-quackingstick hasn't been coming up since commit
> 9e15123eca79 ("drm/msm/dsi: Stop unconditionally powering up DSI hosts
> at modeset"). Let's add "prepare_prev_first" as has been done for many
> other DSI panels.
> 
> 
> [...]

Thanks, Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next)

[1/1] drm/panel: boe-tv101wum-nl6: make use of prepare_prev_first
      https://cgit.freedesktop.org/drm/drm-misc/commit/?id=42a7a16bedc991190310a02dd202e29cfac52525
  

Patch

diff --git a/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c b/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c
index c4c0f08e9202..bc08814954f9 100644
--- a/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c
+++ b/drivers/gpu/drm/panel/panel-boe-tv101wum-nl6.c
@@ -1871,6 +1871,8 @@  static int boe_panel_add(struct boe_panel *boe)
 
 	gpiod_set_value(boe->enable_gpio, 0);
 
+	boe->base.prepare_prev_first = true;
+
 	drm_panel_init(&boe->base, dev, &boe_panel_funcs,
 		       DRM_MODE_CONNECTOR_DSI);
 	err = of_drm_get_panel_orientation(dev->of_node, &boe->orientation);