summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorSean Paul <seanpaul@chromium.org>2014-01-30 16:19:10 -0500
committerChanho Park <chanho61.park@samsung.com>2014-11-18 11:47:33 +0900
commit76a71c358bcfcfcbeedd774a7c4e97e069813c4e (patch)
tree0fcfc70252c18eeed5cc96a5611705d64e6c375e /drivers
parentcce95f2ae86bd9dc9f6c480fcf23aab9a09ec1d7 (diff)
downloadlinux-3.10-76a71c358bcfcfcbeedd774a7c4e97e069813c4e.tar.gz
linux-3.10-76a71c358bcfcfcbeedd774a7c4e97e069813c4e.tar.bz2
linux-3.10-76a71c358bcfcfcbeedd774a7c4e97e069813c4e.zip
drm/exynos: Don't keep dpms state in encoder
This patch removes the dpms state tracking in encoder. This state is at best confusing and at worst incorrect since the display drivers can turn on and off without propagating the value. Signed-off-by: Sean Paul <seanpaul@chromium.org> Reviewed-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Inki Dae <inki.dae@samsung.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_encoder.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_encoder.c b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
index 5bf1e1e2329..a823d537125 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_encoder.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_encoder.c
@@ -28,32 +28,22 @@
* @drm_encoder: encoder object.
* @manager: specific encoder has its own manager to control a hardware
* appropriately and we can access a hardware drawing on this manager.
- * @dpms: store the encoder dpms value.
*/
struct exynos_drm_encoder {
struct drm_crtc *old_crtc;
struct drm_encoder drm_encoder;
struct exynos_drm_manager *manager;
- int dpms;
};
static void exynos_drm_encoder_dpms(struct drm_encoder *encoder, int mode)
{
struct exynos_drm_manager *manager = exynos_drm_get_manager(encoder);
- struct exynos_drm_encoder *exynos_encoder = to_exynos_encoder(encoder);
struct exynos_drm_display_ops *display_ops = manager->display_ops;
DRM_DEBUG_KMS("encoder dpms: %d\n", mode);
- if (exynos_encoder->dpms == mode) {
- DRM_DEBUG_KMS("desired dpms mode is same as previous one.\n");
- return;
- }
-
if (display_ops && display_ops->dpms)
display_ops->dpms(manager->ctx, mode);
-
- exynos_encoder->dpms = mode;
}
static bool
@@ -157,12 +147,6 @@ static void exynos_drm_encoder_commit(struct drm_encoder *encoder)
if (manager_ops && manager_ops->commit)
manager_ops->commit(manager);
-
- /*
- * In case of setcrtc, there is no way to update encoder's dpms
- * so update it here.
- */
- exynos_encoder->dpms = DRM_MODE_DPMS_ON;
}
void exynos_drm_encoder_complete_scanout(struct drm_framebuffer *fb)
@@ -281,7 +265,6 @@ exynos_drm_encoder_create(struct drm_device *dev,
if (!exynos_encoder)
return NULL;
- exynos_encoder->dpms = DRM_MODE_DPMS_OFF;
exynos_encoder->manager = manager;
encoder = &exynos_encoder->drm_encoder;
encoder->possible_crtcs = possible_crtcs;