diff options
Diffstat (limited to 'include/linux/virtio_config.h')
| -rw-r--r-- | include/linux/virtio_config.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/linux/virtio_config.h b/include/linux/virtio_config.h index e8f8f71e843c..7f4ef66873ef 100644 --- a/include/linux/virtio_config.h +++ b/include/linux/virtio_config.h | |||
| @@ -109,6 +109,23 @@ struct virtqueue *virtio_find_single_vq(struct virtio_device *vdev, | |||
| 109 | return vq; | 109 | return vq; |
| 110 | } | 110 | } |
| 111 | 111 | ||
| 112 | /** | ||
| 113 | * virtio_device_ready - enable vq use in probe function | ||
| 114 | * @vdev: the device | ||
| 115 | * | ||
| 116 | * Driver must call this to use vqs in the probe function. | ||
| 117 | * | ||
| 118 | * Note: vqs are enabled automatically after probe returns. | ||
| 119 | */ | ||
| 120 | static inline | ||
| 121 | void virtio_device_ready(struct virtio_device *dev) | ||
| 122 | { | ||
| 123 | unsigned status = dev->config->get_status(dev); | ||
| 124 | |||
| 125 | BUG_ON(status & VIRTIO_CONFIG_S_DRIVER_OK); | ||
| 126 | dev->config->set_status(dev, status | VIRTIO_CONFIG_S_DRIVER_OK); | ||
| 127 | } | ||
| 128 | |||
| 112 | static inline | 129 | static inline |
| 113 | const char *virtio_bus_name(struct virtio_device *vdev) | 130 | const char *virtio_bus_name(struct virtio_device *vdev) |
| 114 | { | 131 | { |
