disp: msm: make kms a DRM client for lastclose logic

Since some APIs previously used during lastclose are no longer
exposed to drivers (__drm_atomic_helper_disable_plane, and
__drm_atomic_helper_set_config), make kms a DRM client and use
the drm_client_modeset_commit_force API to do lastclose cleanup.

Change-Id: I543392fe79558a3996e326a0f222793c56d71e4f
Signed-off-by: Steve Cohen <cohens@codeaurora.org>
This commit is contained in:
Steve Cohen
2019-11-19 13:55:37 -05:00
والد d1d9ae8b19
کامیت ff5365a1e0
3فایلهای تغییر یافته به همراه59 افزوده شده و 138 حذف شده

مشاهده پرونده

@@ -95,8 +95,7 @@ struct msm_kms_funcs {
void (*postopen)(struct msm_kms *kms, struct drm_file *file);
void (*preclose)(struct msm_kms *kms, struct drm_file *file);
void (*postclose)(struct msm_kms *kms, struct drm_file *file);
void (*lastclose)(struct msm_kms *kms,
struct drm_modeset_acquire_ctx *ctx);
void (*lastclose)(struct msm_kms *kms);
int (*register_events)(struct msm_kms *kms,
struct drm_mode_object *obj, u32 event, bool en);
void (*set_encoder_mode)(struct msm_kms *kms,
@@ -136,6 +135,9 @@ struct msm_kms {
/* mapper-id used to request GEM buffer mapped for scanout: */
struct msm_gem_address_space *aspace;
/* DRM client used for lastclose cleanup */
struct drm_client_dev client;
};
/**