From cad82ab88047a230b86d2615fc32b718fe05a697 Mon Sep 17 00:00:00 2001 From: Daniel Kurtz Date: Mon, 10 Dec 2012 15:34:24 +0800 Subject: [PATCH] CHROMIUM: drm/exynos: fbdev: Offset is always zero MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit A freshly filled fb_info will always have .xoffset and .yoffset = 0. So, computing an offset during during fbdev_update is not necessary, since it is only called in the fbdev_probe/fbdev_create path. Signed-off-by: Daniel Kurtz BUG=chromium-os:37097 TEST=compile test; manual check fbdev created and shows chromeball at boot Change-Id: I648e16200cf3840a69e59a8f8d4dea69541c9cf7 Reviewed-on: https://gerrit.chromium.org/gerrit/39479 Reviewed-by: Stéphane Marchesin Commit-Ready: Daniel Kurtz Reviewed-by: Daniel Kurtz Tested-by: Daniel Kurtz --- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c index af58e986e0f9..e3c4826396bd 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c +++ b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c @@ -81,7 +81,6 @@ static int exynos_drm_fbdev_update(struct drm_fb_helper *helper, struct exynos_drm_fb *exynos_fb = to_exynos_fb(fb); struct exynos_drm_gem_buf *buffer; unsigned int size = fb->width * fb->height * (fb->bits_per_pixel >> 3); - unsigned long offset; DRM_DEBUG_KMS("%s\n", __FILE__); @@ -95,12 +94,9 @@ static int exynos_drm_fbdev_update(struct drm_fb_helper *helper, return -EFAULT; } - offset = fbi->var.xoffset * (fb->bits_per_pixel >> 3); - offset += fbi->var.yoffset * fb->pitches[0]; - dev->mode_config.fb_base = (resource_size_t)buffer->dma_addr; - fbi->screen_base = buffer->kvaddr + offset; - fbi->fix.smem_start = (unsigned long)(buffer->dma_addr + offset); + fbi->screen_base = buffer->kvaddr; + fbi->fix.smem_start = (unsigned long)(buffer->dma_addr); fbi->screen_size = size; fbi->fix.smem_len = size; -- 2.20.1