|
Zephyr Project API 4.4.99
A Scalable Open Source RTOS
|
Main header file for Virtio driver API. More...
Go to the source code of this file.
Data Structures | |
| struct | virtio_driver_api |
| @driver_ops{VIRTIO} More... | |
Typedefs | |
| typedef uint16_t(* | virtio_enumerate_queues) (uint16_t queue_idx, uint16_t max_queue_size, void *opaque) |
| Callback used during virtqueue enumeration. | |
| typedef struct virtq *(* | virtio_api_get_virtqueue) (const struct device *dev, uint16_t queue_idx) |
| @def_driverbackendgroup{VIRTIO,virtio_interface} | |
| typedef void(* | virtio_api_notify_virtqueue) (const struct device *dev, uint16_t queue_idx) |
| Type definition of VIRTIO API function for notifying a virtqueue. | |
| typedef void *(* | virtio_api_get_device_specific_config) (const struct device *dev) |
| Type definition of VIRTIO API function for getting the device specific config. | |
| typedef bool(* | virtio_api_read_device_feature_bit) (const struct device *dev, int bit) |
| Type definition of VIRTIO API function for reading a device feature bit. | |
| typedef int(* | virtio_api_write_driver_feature_bit) (const struct device *dev, int bit, bool value) |
| Type definition of VIRTIO API function for writing a driver feature bit. | |
| typedef int(* | virtio_api_commit_feature_bits) (const struct device *dev) |
| Type definition of VIRTIO API function for committing the feature bits. | |
| typedef int(* | virtio_api_init_virtqueues) (const struct device *dev, uint16_t num_queues, virtio_enumerate_queues cb, void *opaque) |
| Type definition of VIRTIO API function for initializing the virtqueues. | |
| typedef void(* | virtio_api_finalize_init) (const struct device *dev) |
| Type definition of VIRTIO API function for finalizing the initialization. | |
Functions | |
| static struct virtq * | virtio_get_virtqueue (const struct device *dev, uint16_t queue_idx) |
| Returns virtqueue at given idx. | |
| static void | virtio_notify_virtqueue (const struct device *dev, uint16_t queue_idx) |
| Notifies virtqueue. | |
| static void * | virtio_get_device_specific_config (const struct device *dev) |
| Returns device specific config. | |
| static bool | virtio_read_device_feature_bit (const struct device *dev, int bit) |
| Returns feature bit offered by virtio device. | |
| static int | virtio_write_driver_feature_bit (const struct device *dev, int bit, bool value) |
| Sets feature bit. | |
| static int | virtio_commit_feature_bits (const struct device *dev) |
| Commits feature bits. | |
| static int | virtio_init_virtqueues (const struct device *dev, uint16_t num_queues, virtio_enumerate_queues cb, void *opaque) |
| Initializes virtqueues. | |
| static void | virtio_finalize_init (const struct device *dev) |
| Finalizes initialization of the virtio device. | |
Main header file for Virtio driver API.