diff options
author | Inki Dae <inki.dae@samsung.com> | 2011-10-14 13:29:50 +0900 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-10-18 10:01:18 +0100 |
commit | f6b98252946496de86bd4e89a8b7ef12ec48d97c (patch) | |
tree | 8d844012052b7aee0293779b0ec5723b81c4a923 /drivers/gpu/drm/exynos | |
parent | 601b44e3db833d28af66d4d6eaf5d353430914d0 (diff) | |
download | talos-op-linux-f6b98252946496de86bd4e89a8b7ef12ec48d97c.tar.gz talos-op-linux-f6b98252946496de86bd4e89a8b7ef12ec48d97c.zip |
drm/exynos: added comments and code clean.
this patch adds the following comments and code clean.
- add comment of exynos_drm_crtc_apply() call at page flip time.
- add comment that when exynos_drm_fbdev_reinit() is called,
why num_connector is 0 and also the framebuffers should be destroyed.
- remove buf_off member from struct exynos_drm_overlay because this member
isn't used anymore.
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/exynos')
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_crtc.c | 6 | ||||
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_drv.h | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 6 |
3 files changed, 11 insertions, 3 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c index 0587b52a18bf..8cd9d8eec46e 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c @@ -279,6 +279,12 @@ static int exynos_drm_crtc_page_flip(struct drm_crtc *crtc, goto out; } + /* + * the values related to a buffer of the drm framebuffer + * to be applied should be set at here. because these values + * first, is set to shadow registers and then to + * real registers at vsync front porch period. + */ exynos_drm_crtc_apply(crtc); dev_priv->pageflip_event = true; diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.h b/drivers/gpu/drm/exynos/exynos_drm_drv.h index 002f2925106a..63c1422403d8 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_drv.h +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.h @@ -82,7 +82,6 @@ struct exynos_drm_overlay_ops { * @paddr: bus(accessed by dma) physical memory address to this overlay * and this is physically continuous. * @vaddr: virtual memory addresss to this overlay. - * @buf_off: start offset of framebuffer to be displayed. * @default_win: a window to be enabled. * @color_key: color key on or off. * @index_color: if using color key feature then this value would be used @@ -111,7 +110,6 @@ struct exynos_drm_overlay { unsigned int pitch; dma_addr_t paddr; void __iomem *vaddr; - unsigned int buf_off; bool default_win; bool color_key; diff --git a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c index 4366dc5032ef..1f4b3d1a7713 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_fbdev.c +++ b/drivers/gpu/drm/exynos/exynos_drm_fbdev.c @@ -393,6 +393,10 @@ int exynos_drm_fbdev_reinit(struct drm_device *dev) if (!private) return -EINVAL; + /* + * if all sub drivers were unloaded then num_connector is 0 + * so at this time, the framebuffers also should be destroyed. + */ if (!dev->mode_config.num_connector) { exynos_drm_fbdev_fini(dev); return 0; @@ -429,7 +433,7 @@ int exynos_drm_fbdev_reinit(struct drm_device *dev) * re-configure the fb helper. it means that this function * has been called by the specific drivers. */ - return exynos_drm_fbdev_init(dev); + ret = exynos_drm_fbdev_init(dev); } return ret; |