Commit 5ee1ef96 authored by Antonino A. Daplas's avatar Antonino A. Daplas Committed by Linus Torvalds
Browse files

[PATCH] fbdev: Convert a few drivers to use the fb_find_best_display helper



Convert i810fb, nvidiafb and savagefb to use the fb_find_best_display helper
when searching for the initial video mode.
Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 003cfc0c
...@@ -1871,27 +1871,18 @@ static void __devinit i810fb_find_init_mode(struct fb_info *info) ...@@ -1871,27 +1871,18 @@ static void __devinit i810fb_find_init_mode(struct fb_info *info)
fb_videomode_to_modelist(specs->modedb, specs->modedb_len, fb_videomode_to_modelist(specs->modedb, specs->modedb_len,
&info->modelist); &info->modelist);
if (specs->modedb != NULL) { if (specs->modedb != NULL) {
if (xres && yres) {
struct fb_videomode *m; struct fb_videomode *m;
if (xres && yres) {
if ((m = fb_find_best_mode(&var, &info->modelist))) { if ((m = fb_find_best_mode(&var, &info->modelist))) {
mode = *m; mode = *m;
found = 1; found = 1;
} }
} }
if (!found && specs->misc & FB_MISC_1ST_DETAIL) {
for (i = 0; i < specs->modedb_len; i++) {
if (specs->modedb[i].flag & FB_MODE_IS_FIRST) {
mode = specs->modedb[i];
found = 1;
break;
}
}
}
if (!found) { if (!found) {
mode = specs->modedb[0]; m = fb_find_best_display(&info->monspecs, &info->modelist);
mode = *m;
found = 1; found = 1;
} }
......
...@@ -1383,22 +1383,10 @@ static int __devinit nvidia_set_fbinfo(struct fb_info *info) ...@@ -1383,22 +1383,10 @@ static int __devinit nvidia_set_fbinfo(struct fb_info *info)
fb_var_to_videomode(&modedb, &nvidiafb_default_var); fb_var_to_videomode(&modedb, &nvidiafb_default_var);
if (specs->modedb != NULL) { if (specs->modedb != NULL) {
/* get preferred timing */ struct fb_videomode *modedb;
if (specs->misc & FB_MISC_1ST_DETAIL) {
int i;
for (i = 0; i < specs->modedb_len; i++) {
if (specs->modedb[i].flag & FB_MODE_IS_FIRST) {
modedb = specs->modedb[i];
break;
}
}
} else {
/* otherwise, get first mode in database */
modedb = specs->modedb[0];
}
fb_videomode_to_var(&nvidiafb_default_var, &modedb); modedb = fb_find_best_display(specs, &info->modelist);
fb_videomode_to_var(&nvidiafb_default_var, modedb);
nvidiafb_default_var.bits_per_pixel = 8; nvidiafb_default_var.bits_per_pixel = 8;
} else if (par->fpWidth && par->fpHeight) { } else if (par->fpWidth && par->fpHeight) {
char buf[16]; char buf[16];
......
...@@ -2052,24 +2052,11 @@ static int __devinit savagefb_probe (struct pci_dev* dev, ...@@ -2052,24 +2052,11 @@ static int __devinit savagefb_probe (struct pci_dev* dev,
info->monspecs.modedb, info->monspecs.modedb_len, info->monspecs.modedb, info->monspecs.modedb_len,
NULL, 8); NULL, 8);
} else if (info->monspecs.modedb != NULL) { } else if (info->monspecs.modedb != NULL) {
struct fb_monspecs *specs = &info->monspecs; struct fb_videomode *modedb;
struct fb_videomode modedb;
if (info->monspecs.misc & FB_MISC_1ST_DETAIL) { modedb = fb_find_best_display(&info->monspecs,
int i; &info->modelist);
savage_update_var(&info->var, modedb);
for (i = 0; i < specs->modedb_len; i++) {
if (specs->modedb[i].flag & FB_MODE_IS_FIRST) {
modedb = specs->modedb[i];
break;
}
}
} else {
/* otherwise, get first mode in database */
modedb = specs->modedb[0];
}
savage_update_var(&info->var, &modedb);
} }
/* maximize virtual vertical length */ /* maximize virtual vertical length */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment