X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=drivers%2Fvideo%2Fsavage%2Fsavagefb_driver.c;h=4afa30522fdbb4c375b37057a77b3a04d1bf3097;hb=9791d763de8cca82b42a7a579e031db78e8011ff;hp=78883cf66a4d8876b6aa6754de16d588e696aee3;hpb=f28e71617ddaf2483e3e5c5237103484a303743f;p=powerpc.git diff --git a/drivers/video/savage/savagefb_driver.c b/drivers/video/savage/savagefb_driver.c index 78883cf66a..4afa30522f 100644 --- a/drivers/video/savage/savagefb_driver.c +++ b/drivers/video/savage/savagefb_driver.c @@ -41,13 +41,11 @@ * */ -#include #include #include #include #include #include -#include #include #include #include @@ -835,7 +833,8 @@ static void savage_set_default_par(struct savagefb_par *par, vga_out8(0x3d5, cr66, par); } -static void savage_update_var(struct fb_var_screeninfo *var, struct fb_videomode *modedb) +static void savage_update_var(struct fb_var_screeninfo *var, + const struct fb_videomode *modedb) { var->xres = var->xres_virtual = modedb->xres; var->yres = modedb->yres; @@ -904,7 +903,7 @@ static int savagefb_check_var(struct fb_var_screeninfo *var, } if (!mode_valid) { - struct fb_videomode *mode; + const struct fb_videomode *mode; mode = fb_find_best_mode(var, &info->modelist); if (mode) { @@ -2208,11 +2207,10 @@ static int __devinit savagefb_probe(struct pci_dev* dev, info->monspecs.modedb, info->monspecs.modedb_len, NULL, 8); } else if (info->monspecs.modedb != NULL) { - struct fb_videomode *modedb; + const struct fb_videomode *mode; - modedb = fb_find_best_display(&info->monspecs, - &info->modelist); - savage_update_var(&info->var, modedb); + mode = fb_find_best_display(&info->monspecs, &info->modelist); + savage_update_var(&info->var, mode); } /* maximize virtual vertical length */ @@ -2325,24 +2323,24 @@ static void __devexit savagefb_remove(struct pci_dev *dev) } } -static int savagefb_suspend(struct pci_dev* dev, pm_message_t state) +static int savagefb_suspend(struct pci_dev *dev, pm_message_t mesg) { struct fb_info *info = pci_get_drvdata(dev); struct savagefb_par *par = info->par; DBG("savagefb_suspend"); - - par->pm_state = state.event; + if (mesg.event == PM_EVENT_PRETHAW) + mesg.event = PM_EVENT_FREEZE; + par->pm_state = mesg.event; + dev->dev.power.power_state = mesg; /* * For PM_EVENT_FREEZE, do not power down so the console * can remain active. */ - if (state.event == PM_EVENT_FREEZE) { - dev->dev.power.power_state = state; + if (mesg.event == PM_EVENT_FREEZE) return 0; - } acquire_console_sem(); fb_set_suspend(info, 1); @@ -2355,7 +2353,7 @@ static int savagefb_suspend(struct pci_dev* dev, pm_message_t state) savage_disable_mmio(par); pci_save_state(dev); pci_disable_device(dev); - pci_set_power_state(dev, pci_choose_state(dev, state)); + pci_set_power_state(dev, pci_choose_state(dev, mesg)); release_console_sem(); return 0;