OMAPDSS: remove vaddr from overlay info
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 26 Sep 2011 16:16:59 +0000 (19:16 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 30 Sep 2011 13:17:32 +0000 (16:17 +0300)
overlay_info struct, used to configure overlays, currently includes both
physical and virtual addresses for the pixels. The vaddr was added to
support more exotic configurations where CPU would be used to update a
display, but it is not currently used and there has been no interest in
the feature. Using CPU to update a screen is also less interesting now
that OMAP4 has two LCD outputs.

This patch removes the vaddr field, and modifies the users of omapdss
accordingly. This makes the use of omapdss a bit simpler, as the user
doesn't need to think if it needs to give the vaddr.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/media/video/omap/omap_vout.c
drivers/video/omap2/omapfb/omapfb-main.c
include/video/omapdss.h

index b5ef36222440bab59f14d8978b099b0cbe0ca8d5..e2f4780c00a06d928a222ae0d326ade0f1bb31d2 100644 (file)
@@ -400,7 +400,6 @@ static int omapvid_setup_overlay(struct omap_vout_device *vout,
 
        ovl->get_overlay_info(ovl, &info);
        info.paddr = addr;
-       info.vaddr = NULL;
        info.width = cropwidth;
        info.height = cropheight;
        info.color_mode = vout->dss_mode;
index c84cc2964154f787c784046ffe10eb713cac141b..70aa47de7146fdc881dff6e9060976c005b1cf77 100644 (file)
@@ -808,19 +808,15 @@ static unsigned calc_rotation_offset_vrfb(const struct fb_var_screeninfo *var,
 static void omapfb_calc_addr(const struct omapfb_info *ofbi,
                             const struct fb_var_screeninfo *var,
                             const struct fb_fix_screeninfo *fix,
-                            int rotation, u32 *paddr, void __iomem **vaddr)
+                            int rotation, u32 *paddr)
 {
        u32 data_start_p;
-       void __iomem *data_start_v;
        int offset;
 
-       if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB) {
+       if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB)
                data_start_p = omapfb_get_region_rot_paddr(ofbi, rotation);
-               data_start_v = NULL;
-       } else {
+       else
                data_start_p = omapfb_get_region_paddr(ofbi);
-               data_start_v = omapfb_get_region_vaddr(ofbi);
-       }
 
        if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB)
                offset = calc_rotation_offset_vrfb(var, fix, rotation);
@@ -828,16 +824,14 @@ static void omapfb_calc_addr(const struct omapfb_info *ofbi,
                offset = calc_rotation_offset_dma(var, fix, rotation);
 
        data_start_p += offset;
-       data_start_v += offset;
 
        if (offset)
                DBG("offset %d, %d = %d\n",
                    var->xoffset, var->yoffset, offset);
 
-       DBG("paddr %x, vaddr %p\n", data_start_p, data_start_v);
+       DBG("paddr %x\n", data_start_p);
 
        *paddr = data_start_p;
-       *vaddr = data_start_v;
 }
 
 /* setup overlay according to the fb */
@@ -850,7 +844,6 @@ int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
        struct fb_fix_screeninfo *fix = &fbi->fix;
        enum omap_color_mode mode = 0;
        u32 data_start_p = 0;
-       void __iomem *data_start_v = NULL;
        struct omap_overlay_info info;
        int xres, yres;
        int screen_width;
@@ -880,8 +873,7 @@ int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
        }
 
        if (ofbi->region->size)
-               omapfb_calc_addr(ofbi, var, fix, rotation,
-                                &data_start_p, &data_start_v);
+               omapfb_calc_addr(ofbi, var, fix, rotation, &data_start_p);
 
        r = fb_mode_to_dss_mode(var, &mode);
        if (r) {
@@ -910,7 +902,6 @@ int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
                mirror = ofbi->mirror;
 
        info.paddr = data_start_p;
-       info.vaddr = data_start_v;
        info.screen_width = screen_width;
        info.width = xres;
        info.height = yres;
index a927eea8e9b9da062b102e8a9ce27a6399ee5f3f..2123fb2d51cbe9533fa5dc087d6e01c5d113ad2b 100644 (file)
@@ -358,7 +358,6 @@ struct omap_overlay_info {
        bool enabled;
 
        u32 paddr;
-       void __iomem *vaddr;
        u32 p_uv_addr;  /* for NV12 format */
        u16 screen_width;
        u16 width;