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....@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.p...@samsung.com>
---
 drivers/gpu/drm/exynos/exynos_drm_crtc.c  |    6 ++++++
 drivers/gpu/drm/exynos/exynos_drm_drv.h   |    2 --
 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 0587b52..8cd9d8e 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, are 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 002f292..63c1422 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 4366dc5..1f4b3d1 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;
-- 
1.7.4.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to