msm/drm: use drm ioctl to set panel feature

msm/drm:
Use drm ioctl to set panel feature, avoid panel features
are not set instantly.

Change-Id: I6779c3b665f4b887a00cf41bb818ae03917755ac
Signed-off-by: wangyq13 <wangyq13@lenovo.com>
Reviewed-on: https://gerrit.mot.com/2270744
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Dezhen Hou <houdz1@motorola.com>
Submit-Approved: Jira Key
This commit is contained in:
wangyq13 2022-05-17 11:15:25 +08:00 • committed by tongkun1
commit 5b8a3db8a2
4 changed files with 80 additions and 0 deletions

View file

@ -690,6 +690,27 @@ struct drm_msm_display_hint {
#define DRM_IOCTL_MSM_DISPLAY_HINT DRM_IOW((DRM_COMMAND_BASE + \
DRM_MSM_DISPLAY_HINT), struct drm_msm_display_hint)
/* panel feature */
typedef enum {
PARAM_HBM = 0,
PARAM_CABC,
PARAM_ACL,
PARAM_DC,
POWER_MODE_MAX_NUM,
PARAM_COLOR = POWER_MODE_MAX_NUM,
PARAM_MAX_NUM
} paramId_t;
struct panel_param_info {
paramId_t param_idx;
__u32 value;
};
#define DRM_SET_PANEL_FEATURE (DRM_COMMAND_END -1)
#define DRM_IOCTL_SET_PANEL_FEATURE DRM_IOWR(DRM_SET_PANEL_FEATURE, struct panel_param_info)
#define DRM_GET_PANEL_FEATURE (DRM_COMMAND_END-2)
#define DRM_IOCTL_GET_PANEL_FEATURE DRM_IOWR(DRM_GET_PANEL_FEATURE, struct panel_param_info)
#if defined(__cplusplus)
}
#endif