diff options
Diffstat (limited to 'msm/sde/sde_encoder_phys.h')
-rw-r--r-- | msm/sde/sde_encoder_phys.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/msm/sde/sde_encoder_phys.h b/msm/sde/sde_encoder_phys.h index 8f35a8fa..22355dc9 100644 --- a/msm/sde/sde_encoder_phys.h +++ b/msm/sde/sde_encoder_phys.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* - * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #ifndef __SDE_ENCODER_PHYS_H__ @@ -82,7 +82,7 @@ struct sde_encoder_virt_ops { void (*handle_frame_done)(struct drm_encoder *parent, struct sde_encoder_phys *phys, u32 event); void (*get_qsync_fps)(struct drm_encoder *parent, - u32 *qsync_fps); + u32 *qsync_fps, u32 vrr_fps); }; /** @@ -611,6 +611,26 @@ static inline enum sde_3d_blend_mode sde_encoder_helper_get_3d_blend_mode( } /** + * sde_encoder_phys_is_cwb_disabling - Check if CWB encoder attached to this + * CRTC and it is in SDE_ENC_DISABLING state. + * @phys_enc: Pointer to physical encoder structure + * @crtc: drm crtc + * @Return: true if cwb encoder is in disabling state + */ +static inline bool sde_encoder_phys_is_cwb_disabling( + struct sde_encoder_phys *phys, struct drm_crtc *crtc) +{ + struct sde_encoder_phys_wb *wb_enc; + + if (!phys || !phys->in_clone_mode || + phys->enable_state != SDE_ENC_DISABLING) + return false; + + wb_enc = container_of(phys, struct sde_encoder_phys_wb, base); + return (wb_enc->crtc == crtc) ? true : false; +} + +/** * sde_encoder_helper_split_config - split display configuration helper function * This helper function may be used by physical encoders to configure * the split display related registers. |