[PATCH] ARM: pxafb: Use the passed fb_var_screeninfo struct in pxafb_pan_display()
Daniel Mack
daniel at caiaq.de
Tue Oct 27 20:18:05 EDT 2009
Any idea what to do with this one?
Daniel
On Thu, Oct 22, 2009 at 08:34:34AM +0200, Daniel Mack wrote:
> Hi Eric,
>
> this one has been living in our kernel tree for quite some time now but
> it seems it hasn't been merged yet. It's needed to make the pxafb driver
> work with DirectFB applications properly.
>
> Thanks,
> Daniel
>
>
> From 42e8a4226777b6cc82988061c80167813f403ec8 Mon Sep 17 00:00:00 2001
> From: Sven Neumann <s.neumann at raumfeld.com>
> Date: Wed, 6 May 2009 16:22:50 +0200
> Subject: [PATCH] ARM: pxafb: Use the passed fb_var_screeninfo struct in pxafb_pan_display()
>
> pxafb_pan_display() used to ignore the fb_var_screeninfo parameter. Now
> pass it to setup_base_frame() instead of pulling default values out of
> fb_info.
>
> Signed-off-by: Sven Neumann <s.neumann at raumfeld.com>
> Signed-off-by: Daniel Mack <daniel at caiaq.de>
> Cc: Eric Miao <eric.y.miao at gmail.com>
> ---
> drivers/video/pxafb.c | 12 +++++++-----
> 1 files changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/video/pxafb.c b/drivers/video/pxafb.c
> index 1820c4a..a20a7d4 100644
> --- a/drivers/video/pxafb.c
> +++ b/drivers/video/pxafb.c
> @@ -80,7 +80,8 @@
> static int pxafb_activate_var(struct fb_var_screeninfo *var,
> struct pxafb_info *);
> static void set_ctrlr_state(struct pxafb_info *fbi, u_int state);
> -static void setup_base_frame(struct pxafb_info *fbi, int branch);
> +static void setup_base_frame(struct pxafb_info *fbi,
> + struct fb_var_screeninfo *var, int branch);
> static int setup_frame_dma(struct pxafb_info *fbi, int dma, int pal,
> unsigned long offset, size_t size);
>
> @@ -536,7 +537,7 @@ static int pxafb_pan_display(struct fb_var_screeninfo *var,
> if (fbi->state != C_ENABLE)
> return 0;
>
> - setup_base_frame(fbi, 1);
> + setup_base_frame(fbi, var, 1);
>
> if (fbi->lccr0 & LCCR0_SDS)
> lcd_writel(fbi, FBR1, fbi->fdadr[dma + 1] | 0x1);
> @@ -1052,9 +1053,10 @@ static int setup_frame_dma(struct pxafb_info *fbi, int dma, int pal,
> return 0;
> }
>
> -static void setup_base_frame(struct pxafb_info *fbi, int branch)
> +static void setup_base_frame(struct pxafb_info *fbi,
> + struct fb_var_screeninfo *var,
> + int branch)
> {
> - struct fb_var_screeninfo *var = &fbi->fb.var;
> struct fb_fix_screeninfo *fix = &fbi->fb.fix;
> int nbytes, dma, pal, bpp = var->bits_per_pixel;
> unsigned long offset;
> @@ -1332,7 +1334,7 @@ static int pxafb_activate_var(struct fb_var_screeninfo *var,
> #endif
> setup_parallel_timing(fbi, var);
>
> - setup_base_frame(fbi, 0);
> + setup_base_frame(fbi, var, 0);
>
> fbi->reg_lccr0 = fbi->lccr0 |
> (LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | LCCR0_EFM |
> --
> 1.6.5
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
More information about the linux-arm-kernel
mailing list