aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2011-09-26 12:16:59 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2011-09-30 09:17:32 -0400
commit212b0d50e2eb7fc60f7bea1e90e5867b5fc0647d (patch)
tree071b1950e9d9f7ecc041f66ef962c95ee2e29adb /drivers/video
parent162874d5f5fa8aac7ff406825f152abb22d3c6c2 (diff)
OMAPDSS: remove vaddr from overlay info
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>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/omapfb/omapfb-main.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c
index c84cc2964154..70aa47de7146 100644
--- a/drivers/video/omap2/omapfb/omapfb-main.c
+++ b/drivers/video/omap2/omapfb/omapfb-main.c
@@ -808,19 +808,15 @@ static unsigned calc_rotation_offset_vrfb(const struct fb_var_screeninfo *var,
808static void omapfb_calc_addr(const struct omapfb_info *ofbi, 808static void omapfb_calc_addr(const struct omapfb_info *ofbi,
809 const struct fb_var_screeninfo *var, 809 const struct fb_var_screeninfo *var,
810 const struct fb_fix_screeninfo *fix, 810 const struct fb_fix_screeninfo *fix,
811 int rotation, u32 *paddr, void __iomem **vaddr) 811 int rotation, u32 *paddr)
812{ 812{
813 u32 data_start_p; 813 u32 data_start_p;
814 void __iomem *data_start_v;
815 int offset; 814 int offset;
816 815
817 if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB) { 816 if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB)
818 data_start_p = omapfb_get_region_rot_paddr(ofbi, rotation); 817 data_start_p = omapfb_get_region_rot_paddr(ofbi, rotation);
819 data_start_v = NULL; 818 else
820 } else {
821 data_start_p = omapfb_get_region_paddr(ofbi); 819 data_start_p = omapfb_get_region_paddr(ofbi);
822 data_start_v = omapfb_get_region_vaddr(ofbi);
823 }
824 820
825 if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB) 821 if (ofbi->rotation_type == OMAP_DSS_ROT_VRFB)
826 offset = calc_rotation_offset_vrfb(var, fix, rotation); 822 offset = calc_rotation_offset_vrfb(var, fix, rotation);
@@ -828,16 +824,14 @@ static void omapfb_calc_addr(const struct omapfb_info *ofbi,
828 offset = calc_rotation_offset_dma(var, fix, rotation); 824 offset = calc_rotation_offset_dma(var, fix, rotation);
829 825
830 data_start_p += offset; 826 data_start_p += offset;
831 data_start_v += offset;
832 827
833 if (offset) 828 if (offset)
834 DBG("offset %d, %d = %d\n", 829 DBG("offset %d, %d = %d\n",
835 var->xoffset, var->yoffset, offset); 830 var->xoffset, var->yoffset, offset);
836 831
837 DBG("paddr %x, vaddr %p\n", data_start_p, data_start_v); 832 DBG("paddr %x\n", data_start_p);
838 833
839 *paddr = data_start_p; 834 *paddr = data_start_p;
840 *vaddr = data_start_v;
841} 835}
842 836
843/* setup overlay according to the fb */ 837/* setup overlay according to the fb */
@@ -850,7 +844,6 @@ int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
850 struct fb_fix_screeninfo *fix = &fbi->fix; 844 struct fb_fix_screeninfo *fix = &fbi->fix;
851 enum omap_color_mode mode = 0; 845 enum omap_color_mode mode = 0;
852 u32 data_start_p = 0; 846 u32 data_start_p = 0;
853 void __iomem *data_start_v = NULL;
854 struct omap_overlay_info info; 847 struct omap_overlay_info info;
855 int xres, yres; 848 int xres, yres;
856 int screen_width; 849 int screen_width;
@@ -880,8 +873,7 @@ int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
880 } 873 }
881 874
882 if (ofbi->region->size) 875 if (ofbi->region->size)
883 omapfb_calc_addr(ofbi, var, fix, rotation, 876 omapfb_calc_addr(ofbi, var, fix, rotation, &data_start_p);
884 &data_start_p, &data_start_v);
885 877
886 r = fb_mode_to_dss_mode(var, &mode); 878 r = fb_mode_to_dss_mode(var, &mode);
887 if (r) { 879 if (r) {
@@ -910,7 +902,6 @@ int omapfb_setup_overlay(struct fb_info *fbi, struct omap_overlay *ovl,
910 mirror = ofbi->mirror; 902 mirror = ofbi->mirror;
911 903
912 info.paddr = data_start_p; 904 info.paddr = data_start_p;
913 info.vaddr = data_start_v;
914 info.screen_width = screen_width; 905 info.screen_width = screen_width;
915 info.width = xres; 906 info.width = xres;
916 info.height = yres; 907 info.height = yres;