virtio-pci: move freeze/restore to virtio core
This is in preparation to extending config changed event handling in core. Wrapping these in an API also seems to make for a cleaner code. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
016c98c6fe
commit
c6716bae52
3 changed files with 62 additions and 52 deletions
|
@ -78,6 +78,7 @@ bool virtqueue_is_broken(struct virtqueue *vq);
|
|||
/**
|
||||
* virtio_device - representation of a device using virtio
|
||||
* @index: unique position on the virtio bus
|
||||
* @failed: saved value for CONFIG_S_FAILED bit (for restore)
|
||||
* @dev: underlying device.
|
||||
* @id: the device type identification (used to match it with a driver).
|
||||
* @config: the configuration ops for this device.
|
||||
|
@ -88,6 +89,7 @@ bool virtqueue_is_broken(struct virtqueue *vq);
|
|||
*/
|
||||
struct virtio_device {
|
||||
int index;
|
||||
bool failed;
|
||||
struct device dev;
|
||||
struct virtio_device_id id;
|
||||
const struct virtio_config_ops *config;
|
||||
|
@ -109,6 +111,10 @@ void unregister_virtio_device(struct virtio_device *dev);
|
|||
void virtio_break_device(struct virtio_device *dev);
|
||||
|
||||
void virtio_config_changed(struct virtio_device *dev);
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
int virtio_device_freeze(struct virtio_device *dev);
|
||||
int virtio_device_restore(struct virtio_device *dev);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* virtio_driver - operations for a virtio I/O driver
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue