Message ID | 20240613-dpu-handle-te-signal-v2-0-67a0116b5366@linaro.org (mailing list archive) |
---|---|
Headers | show |
Series | drm/msm/dpu: handle non-default TE source pins | expand |
On Thu, 13 Jun 2024 20:05:03 +0300, Dmitry Baryshkov wrote: > Command-mode DSI panels need to signal the display controlller when > vsync happens, so that the device can start sending the next frame. Some > devices (Google Pixel 3) use a non-default pin, so additional > configuration is required. Add a way to specify this information in DT > and handle it in the DSI and DPU drivers. > > > [...] Applied, thanks! [1/8] dt-bindings: display/msm/dsi: allow specifying TE source https://gitlab.freedesktop.org/lumag/msm/-/commit/e0bc725bdd0f [2/8] drm/msm/dpu: convert vsync source defines to the enum https://gitlab.freedesktop.org/lumag/msm/-/commit/c09b19b79d27 [3/8] drm/msm/dsi: drop unused GPIOs handling https://gitlab.freedesktop.org/lumag/msm/-/commit/149d195638c9 [4/8] drm/msm/dpu: pull the is_cmd_mode out of _dpu_encoder_update_vsync_source() https://gitlab.freedesktop.org/lumag/msm/-/commit/1ed505b60480 [5/8] drm/msm/dpu: rework vsync_source handling https://gitlab.freedesktop.org/lumag/msm/-/commit/cd1592c3e31d [6/8] drm/msm/dsi: parse vsync source from device tree https://gitlab.freedesktop.org/lumag/msm/-/commit/4404dd757c5d [7/8] drm/msm/dpu: support setting the TE source https://gitlab.freedesktop.org/lumag/msm/-/commit/ecfc21292865 [8/8] drm/msm/dpu: rename dpu_hw_setup_vsync_source functions https://gitlab.freedesktop.org/lumag/msm/-/commit/b8caa9e8668b Best regards,
Command-mode DSI panels need to signal the display controlller when vsync happens, so that the device can start sending the next frame. Some devices (Google Pixel 3) use a non-default pin, so additional configuration is required. Add a way to specify this information in DT and handle it in the DSI and DPU drivers. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- Changes in v2: - In DT bindings renamed mdp_gpioN to mdp_vsync_p/_s/_e per pins name (Abhinav) - Extended bindings to include default: mdp_vsync_p (Rob) - Renamed dpu_hw_setup_vsync_source() and dpu_hw_setup_vsync_source_and_vsync_sel() to match the implementation (Abhinav) - Link to v1: https://lore.kernel.org/r/20240520-dpu-handle-te-signal-v1-0-f273b42a089c@linaro.org --- Dmitry Baryshkov (8): dt-bindings: display/msm/dsi: allow specifying TE source drm/msm/dpu: convert vsync source defines to the enum drm/msm/dsi: drop unused GPIOs handling drm/msm/dpu: pull the is_cmd_mode out of _dpu_encoder_update_vsync_source() drm/msm/dpu: rework vsync_source handling drm/msm/dsi: parse vsync source from device tree drm/msm/dpu: support setting the TE source drm/msm/dpu: rename dpu_hw_setup_vsync_source functions .../bindings/display/msm/dsi-controller-main.yaml | 17 ++++++++ drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 11 ++--- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h | 5 +-- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.c | 2 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_intf.h | 2 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h | 26 ++++++------ drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.c | 14 +++---- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_top.h | 2 +- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 44 ++++++++++++++++++++ drivers/gpu/drm/msm/dsi/dsi.h | 1 + drivers/gpu/drm/msm/dsi/dsi_host.c | 48 +++++----------------- drivers/gpu/drm/msm/dsi/dsi_manager.c | 5 +++ drivers/gpu/drm/msm/msm_drv.h | 6 +++ 13 files changed, 114 insertions(+), 69 deletions(-) --- base-commit: 03d44168cbd7fc57d5de56a3730427db758fc7f6 change-id: 20240514-dpu-handle-te-signal-82663c0211bd Best regards,