git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git]
/
drivers
/
video
/
i810
/
i810_main.c
diff --git
a/drivers/video/i810/i810_main.c
b/drivers/video/i810/i810_main.c
index
a6ca02f
..
b55a12d
100644
(file)
--- a/
drivers/video/i810/i810_main.c
+++ b/
drivers/video/i810/i810_main.c
@@
-1554,15
+1554,17
@@
static struct fb_ops i810fb_ops __devinitdata = {
/***********************************************************************
* Power Management *
***********************************************************************/
/***********************************************************************
* Power Management *
***********************************************************************/
-static int i810fb_suspend(struct pci_dev *dev, pm_message_t
state
)
+static int i810fb_suspend(struct pci_dev *dev, pm_message_t
mesg
)
{
struct fb_info *info = pci_get_drvdata(dev);
struct i810fb_par *par = info->par;
{
struct fb_info *info = pci_get_drvdata(dev);
struct i810fb_par *par = info->par;
- par->cur_state =
state
.event;
+ par->cur_state =
mesg
.event;
- if (state.event == PM_EVENT_FREEZE) {
- dev->dev.power.power_state = state;
+ switch (mesg.event) {
+ case PM_EVENT_FREEZE:
+ case PM_EVENT_PRETHAW:
+ dev->dev.power.power_state = mesg;
return 0;
}
return 0;
}
@@
-1578,7
+1580,7
@@
static int i810fb_suspend(struct pci_dev *dev, pm_message_t state)
pci_save_state(dev);
pci_disable_device(dev);
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;
release_console_sem();
return 0;
@@
-1600,7
+1602,10
@@
static int i810fb_resume(struct pci_dev *dev)
acquire_console_sem();
pci_set_power_state(dev, PCI_D0);
pci_restore_state(dev);
acquire_console_sem();
pci_set_power_state(dev, PCI_D0);
pci_restore_state(dev);
- pci_enable_device(dev);
+
+ if (pci_enable_device(dev))
+ goto fail;
+
pci_set_master(dev);
agp_bind_memory(par->i810_gtt.i810_fb_memory,
par->fb.offset);
pci_set_master(dev);
agp_bind_memory(par->i810_gtt.i810_fb_memory,
par->fb.offset);
@@
-1609,6
+1614,7
@@
static int i810fb_resume(struct pci_dev *dev)
i810fb_set_par(info);
fb_set_suspend (info, 0);
info->fbops->fb_blank(VESA_NO_BLANKING, info);
i810fb_set_par(info);
fb_set_suspend (info, 0);
info->fbops->fb_blank(VESA_NO_BLANKING, info);
+fail:
release_console_sem();
return 0;
}
release_console_sem();
return 0;
}