diff options
author | Alon Levy <alevy@redhat.com> | 2011-05-22 14:52:11 +0300 |
---|---|---|
committer | Alon Levy <alevy@redhat.com> | 2011-05-22 16:22:59 +0300 |
commit | b623f2d6f8da6babaef40b2c2739f7927e5d7a1a (patch) | |
tree | 1ff106c2aabd76b1ed7de3eadfe01c6bfc8658a2 | |
parent | 5bb6ff4fa6c0a86442decd4bd00813642edf637c (diff) |
add io ports for sleep (S3) support
related RHBZ: 688883
Sleep is supported by the following flow:
(G stands for Guest, D is the device, not the driver)
G: QXL_IO_ABOUT_TO_SLEEP
G: acpi reset
D: qxl_reset_handler (ignored)
G: QXL_IO_RETURNED_FROM_SLEEP
Thereby the spice-server and the driver never reset during sleep.
After an ABOUT there are three options:
RETURNED - normal case
vga io port written to - we already handle this by doing a qxl_soft_reset
QXL_IO_RESET - we call qxl_hard_reset which calls qxl_soft_reset
So to handle the two unmatched cases we just need to make sure qxl_soft_reset
forgets the "ABOUT_TO_SLEEP".
-rw-r--r-- | spice/qxl_dev.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/spice/qxl_dev.h b/spice/qxl_dev.h index e3e0696..36210a0 100644 --- a/spice/qxl_dev.h +++ b/spice/qxl_dev.h @@ -80,6 +80,9 @@ enum { QXL_IO_DESTROY_PRIMARY, QXL_IO_DESTROY_SURFACE_WAIT, QXL_IO_DESTROY_ALL_SURFACES, + /* sleep support */ + QXL_IO_ABOUT_TO_SLEEP, + QXL_IO_RETURNED_FROM_SLEEP, QXL_IO_RANGE_SIZE }; |