@@ -43,7 +43,8 @@ __subsystem struct virtio_driver_api {
43
43
bool (* read_driver_feature_bit )(const struct device * dev , int bit );
44
44
int (* write_driver_feature_bit )(const struct device * dev , int bit , bool value );
45
45
int (* commit_feature_bits )(const struct device * dev );
46
- int (* init_virtqueues )(const struct device * dev , virtio_enumerate_queues cb , void * opaque );
46
+ int (* init_virtqueues )(const struct device * dev , uint16_t num_queues ,
47
+ virtio_enumerate_queues cb , void * opaque );
47
48
void (* finalize_init )(const struct device * dev );
48
49
};
49
50
@@ -147,16 +148,18 @@ static inline int virtio_commit_feature_bits(const struct device *dev)
147
148
* Initializes virtqueues
148
149
*
149
150
* @param dev virtio device it operates on
151
+ * @param num_queues number of queues to initialize
150
152
* @param cb callback called for each available virtqueue
151
153
* @param opaque pointer to user provided data that will be passed to the callback
152
154
* @return 0 on success or negative error code on failure
153
155
*/
154
156
static inline int virtio_init_virtqueues (
155
- const struct device * dev , virtio_enumerate_queues cb , void * opaque )
157
+ const struct device * dev , uint16_t num_queues ,
158
+ virtio_enumerate_queues cb , void * opaque )
156
159
{
157
160
const struct virtio_driver_api * api = dev -> api ;
158
161
159
- return api -> init_virtqueues (dev , cb , opaque );
162
+ return api -> init_virtqueues (dev , num_queues , cb , opaque );
160
163
}
161
164
162
165
/**
0 commit comments