forked from Minki/linux
drm/rockchip: Convert to using __drm_atomic_helper_crtc_reset() for reset.
Convert rockchip to using __drm_atomic_helper_crtc_reset(), instead of writing its own version. Instead of open coding destroy_state(), call it directly for freeing the old state. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Sandy Huang <hjc@rock-chips.com> Cc: "Heiko Stübner" <heiko@sntech.de> Cc: linux-rockchip@lists.infradead.org Reviewed-by: Heiko Stuebner <heiko@sntech.de> Link: https://patchwork.freedesktop.org/patch/msgid/20190301125627.7285-14-maarten.lankhorst@linux.intel.com
This commit is contained in:
parent
9a6a19c0ff
commit
01e2eaf40c
@ -1210,17 +1210,6 @@ static void vop_crtc_destroy(struct drm_crtc *crtc)
|
||||
drm_crtc_cleanup(crtc);
|
||||
}
|
||||
|
||||
static void vop_crtc_reset(struct drm_crtc *crtc)
|
||||
{
|
||||
if (crtc->state)
|
||||
__drm_atomic_helper_crtc_destroy_state(crtc->state);
|
||||
kfree(crtc->state);
|
||||
|
||||
crtc->state = kzalloc(sizeof(struct rockchip_crtc_state), GFP_KERNEL);
|
||||
if (crtc->state)
|
||||
crtc->state->crtc = crtc;
|
||||
}
|
||||
|
||||
static struct drm_crtc_state *vop_crtc_duplicate_state(struct drm_crtc *crtc)
|
||||
{
|
||||
struct rockchip_crtc_state *rockchip_state;
|
||||
@ -1242,6 +1231,17 @@ static void vop_crtc_destroy_state(struct drm_crtc *crtc,
|
||||
kfree(s);
|
||||
}
|
||||
|
||||
static void vop_crtc_reset(struct drm_crtc *crtc)
|
||||
{
|
||||
struct rockchip_crtc_state *crtc_state =
|
||||
kzalloc(sizeof(*crtc_state), GFP_KERNEL);
|
||||
|
||||
if (crtc->state)
|
||||
vop_crtc_destroy_state(crtc, crtc->state);
|
||||
|
||||
__drm_atomic_helper_crtc_reset(crtc, &crtc_state->base);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_DRM_ANALOGIX_DP
|
||||
static struct drm_connector *vop_get_edp_connector(struct vop *vop)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user