|
@@ -103,7 +103,9 @@ static void mxsfb_pipe_enable(struct drm_simple_display_pipe *pipe,
|
|
|
struct drm_plane_state *plane_state)
|
|
|
{
|
|
|
struct mxsfb_drm_private *mxsfb = drm_pipe_to_mxsfb_drm_private(pipe);
|
|
|
+ struct drm_device *drm = pipe->plane.dev;
|
|
|
|
|
|
+ pm_runtime_get_sync(drm->dev);
|
|
|
drm_panel_prepare(mxsfb->panel);
|
|
|
mxsfb_crtc_enable(mxsfb);
|
|
|
drm_panel_enable(mxsfb->panel);
|
|
@@ -112,10 +114,12 @@ static void mxsfb_pipe_enable(struct drm_simple_display_pipe *pipe,
|
|
|
static void mxsfb_pipe_disable(struct drm_simple_display_pipe *pipe)
|
|
|
{
|
|
|
struct mxsfb_drm_private *mxsfb = drm_pipe_to_mxsfb_drm_private(pipe);
|
|
|
+ struct drm_device *drm = pipe->plane.dev;
|
|
|
|
|
|
drm_panel_disable(mxsfb->panel);
|
|
|
mxsfb_crtc_disable(mxsfb);
|
|
|
drm_panel_unprepare(mxsfb->panel);
|
|
|
+ pm_runtime_put_sync(drm->dev);
|
|
|
}
|
|
|
|
|
|
static void mxsfb_pipe_update(struct drm_simple_display_pipe *pipe,
|