diff options
author | Marijn Suijten <marijn.suijten@somainline.org> | 2023-04-27 00:37:27 +0200 |
---|---|---|
committer | Dmitry Baryshkov <dmitry.baryshkov@linaro.org> | 2023-05-22 10:14:17 +0300 |
commit | 4a7c38ec7d8efe96c4d8b4d5fc0efb5b06db58e9 (patch) | |
tree | 61fc50ca78b3f5dd871fd803d502f0929187d250 /drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | |
parent | a2623e72c52b2cf258b34675a8ff38c66e7d26fb (diff) | |
download | linux-stable-4a7c38ec7d8efe96c4d8b4d5fc0efb5b06db58e9.tar.gz linux-stable-4a7c38ec7d8efe96c4d8b4d5fc0efb5b06db58e9.tar.bz2 linux-stable-4a7c38ec7d8efe96c4d8b4d5fc0efb5b06db58e9.zip |
drm/msm/dpu: Move autorefresh disable from CMD encoder to pingpong
This autorefresh disable logic in the physical command-mode encoder
consumes three callbacks to the pingpong block, and will explode in
unnecessary complexity when the same callbacks need to be called on the
interface block instead to accommodate INTF TE support. To clean this
up, move the logic into the pingpong block under a disable_autorefresh
callback, replacing the aforementioned three get_autorefresh,
setup_autorefresh and get_vsync_info callbacks.
The same logic will have to be replicated to the interface block when it
receives INTF TE support, but it is less complex than constantly
switching on a "has_intf_te" boolean to choose a callback.
Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Marijn Suijten <marijn.suijten@somainline.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/534230/
Link: https://lore.kernel.org/r/20230411-dpu-intf-te-v4-13-27ce1a5ab5c6@somainline.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Diffstat (limited to 'drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h')
-rw-r--r-- | drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h index 15111e433f21..cd6287524557 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h @@ -118,6 +118,10 @@ struct vsync_info { u32 line_count; }; +#define DPU_ENC_WR_PTR_START_TIMEOUT_US 20000 + +#define DPU_ENC_MAX_POLL_TIMEOUT_US 2000 + #define to_dpu_kms(x) container_of(x, struct dpu_kms, base) #define to_dpu_global_state(x) container_of(x, struct dpu_global_state, base) |