OSDN Git Service

staging: sm7xxfb: clean fb_fix_screeninfo and fb_var_screeninfo initialization
authorJavier M. Mellid <jmunhoz@igalia.com>
Mon, 17 Sep 2012 14:12:47 +0000 (16:12 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 17 Sep 2012 21:57:52 +0000 (14:57 -0700)
Part of fb_fix_screeninfo and fb_var_screeninfo initialization happens
in smtc_alloc_fb_info. It duplicates code while hiding the real
functionality of smtc_alloc_fb_info. This patch groups initialization
together.

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/sm7xxfb/sm7xxfb.c

index d935c23..b809e2c 100644 (file)
@@ -72,6 +72,8 @@ static struct fb_var_screeninfo smtcfb_var = {
        .height         = -1,
        .width          = -1,
        .vmode          = FB_VMODE_NONINTERLACED,
+       .nonstd         = 0,
+       .accel_flags    = FB_ACCELF_TEXT,
 };
 
 static struct fb_fix_screeninfo smtcfb_fix = {
@@ -80,6 +82,10 @@ static struct fb_fix_screeninfo smtcfb_fix = {
        .visual         = FB_VISUAL_TRUECOLOR,
        .line_length    = 800 * 3,
        .accel          = FB_ACCEL_SMI_LYNX,
+       .type_aux       = 0,
+       .xpanstep       = 0,
+       .ypanstep       = 0,
+       .ywrapstep      = 0,
 };
 
 struct vesa_mode {
@@ -694,20 +700,7 @@ static struct smtcfb_info *smtc_alloc_fb_info(struct pci_dev *pdev, char *name)
        sfb->fb.fix = smtcfb_fix;
        strcpy(sfb->fb.fix.id, name);
 
-       sfb->fb.fix.type        = FB_TYPE_PACKED_PIXELS;
-       sfb->fb.fix.type_aux    = 0;
-       sfb->fb.fix.xpanstep    = 0;
-       sfb->fb.fix.ypanstep    = 0;
-       sfb->fb.fix.ywrapstep   = 0;
-       sfb->fb.fix.accel       = FB_ACCEL_SMI_LYNX;
-
-       sfb->fb.var             = smtcfb_var;
-       sfb->fb.var.nonstd      = 0;
-       sfb->fb.var.activate    = FB_ACTIVATE_NOW;
-       sfb->fb.var.height      = -1;
-       sfb->fb.var.width       = -1;
-       sfb->fb.var.accel_flags = FB_ACCELF_TEXT;
-       sfb->fb.var.vmode       = FB_VMODE_NONINTERLACED;
+       sfb->fb.var = smtcfb_var;
 
        sfb->fb.pseudo_palette  = sfb->colreg;