1 From: Mans Rullgard <mans@mansr.com>
2 Date: Fri, 29 Aug 2008 01:18:48 +0000 (+0100)
3 Subject: OMAP: Fix omapfb display panning
4 X-Git-Url: http://git.mansr.com/?p=linux-omap;a=commitdiff_plain;h=2ea46e9f28ff57a32d87bc380457a584c913fe78
6 OMAP: Fix omapfb display panning
8 This makes the FBIOPAN_DISPLAY ioctl work with omapfb.
10 Signed-off-by: Mans Rullgard <mans@mansr.com>
13 diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c
14 index ce4c4de..64bf333 100644
15 --- a/drivers/video/omap/dispc.c
16 +++ b/drivers/video/omap/dispc.c
17 @@ -436,6 +436,8 @@ static inline int _setup_plane(int plane, int channel_out,
19 dispc_write_reg(ri_reg[plane], (screen_width - width) * bpp / 8 + 1);
21 + MOD_REG_FLD(DISPC_CONTROL, 1<<5, 1<<5);
23 return height * screen_width * bpp / 8;
26 diff --git a/drivers/video/omap/omapfb_main.c b/drivers/video/omap/omapfb_main.c
27 index e7f3462..e9ffb92 100644
28 --- a/drivers/video/omap/omapfb_main.c
29 +++ b/drivers/video/omap/omapfb_main.c
30 @@ -207,8 +207,8 @@ static int ctrl_change_mode(struct fb_info *fbi)
31 struct omapfb_device *fbdev = plane->fbdev;
32 struct fb_var_screeninfo *var = &fbi->var;
34 - offset = var->yoffset * fbi->fix.line_length +
35 - var->xoffset * var->bits_per_pixel / 8;
36 + offset = (var->yoffset * var->xres_virtual + var->xoffset) *
37 + var->bits_per_pixel / 8;
39 if (fbdev->ctrl->sync)
41 @@ -426,6 +426,8 @@ static void set_fb_fix(struct fb_info *fbi)
43 fix->accel = FB_ACCEL_OMAP1610;
44 fix->line_length = var->xres_virtual * bpp / 8;
49 static int set_color_mode(struct omapfb_plane_struct *plane,