FD.io VPP  v20.09-rc2-28-g3c5414029
Vector Packet Processing
virtio_pci_modern.c File Reference
+ Include dependency graph for virtio_pci_modern.c:

Go to the source code of this file.

Functions

static u64 virtio_pci_modern_get_device_features (vlib_main_t *vm, virtio_if_t *vif)
 
static u64 virtio_pci_modern_get_driver_features (vlib_main_t *vm, virtio_if_t *vif)
 
static void virtio_pci_modern_set_driver_features (vlib_main_t *vm, virtio_if_t *vif, u64 features)
 
static u16 virtio_pci_modern_get_msix_config (virtio_if_t *vif)
 
static u16 virtio_pci_modern_set_msix_config (vlib_main_t *vm, virtio_if_t *vif, u16 msix_config)
 
static u16 virtio_pci_modern_get_num_queues (virtio_if_t *vif)
 
static u8 virtio_pci_modern_get_status (vlib_main_t *vm, virtio_if_t *vif)
 
static void virtio_pci_modern_set_status (vlib_main_t *vm, virtio_if_t *vif, u8 status)
 
static u8 virtio_pci_modern_reset (vlib_main_t *vm, virtio_if_t *vif)
 
static u8 virtio_pci_modern_get_config_generation (virtio_if_t *vif)
 
static void virtio_pci_modern_set_queue_select (virtio_if_t *vif, u16 queue_select)
 
static u16 virtio_pci_modern_get_queue_size (vlib_main_t *vm, virtio_if_t *vif, u16 queue_id)
 
static void virtio_pci_modern_set_queue_size (vlib_main_t *vm, virtio_if_t *vif, u16 queue_id, u16 queue_size)
 
static u16 virtio_pci_modern_get_queue_msix_vector (virtio_if_t *vif)
 
static u16 virtio_pci_modern_set_queue_msix_vector (vlib_main_t *vm, virtio_if_t *vif, u16 queue_msix_vector, u16 queue_id)
 
static u16 virtio_pci_modern_get_queue_enable (virtio_if_t *vif, u16 queue_id)
 
static void virtio_pci_modern_set_queue_enable (virtio_if_t *vif, u16 queue_id, u16 queue_enable)
 
static u16 virtio_pci_modern_get_queue_notify_off (vlib_main_t *vm, virtio_if_t *vif, u16 queue_id)
 
static u64 virtio_pci_modern_get_queue_desc (virtio_if_t *vif)
 
static void virtio_pci_modern_set_queue_desc (virtio_if_t *vif, u64 queue_desc)
 
static u64 virtio_pci_modern_get_queue_driver (virtio_if_t *vif)
 
static void virtio_pci_modern_set_queue_driver (virtio_if_t *vif, u64 queue_driver)
 
static u64 virtio_pci_modern_get_queue_device (virtio_if_t *vif)
 
static void virtio_pci_modern_set_queue_device (virtio_if_t *vif, u64 queue_device)
 
static u8 virtio_pci_modern_setup_queue (vlib_main_t *vm, virtio_if_t *vif, u16 queue_id, void *p)
 
static void virtio_pci_modern_del_queue (vlib_main_t *vm, virtio_if_t *vif, u16 queue_id)
 
static void virtio_pci_modern_get_device_mac (vlib_main_t *vm, virtio_if_t *vif)
 
static void virtio_pci_modern_set_device_mac (vlib_main_t *vm, virtio_if_t *vif)
 
static u16 virtio_pci_modern_get_device_status (vlib_main_t *vm, virtio_if_t *vif)
 
static u16 virtio_pci_modern_get_max_virtqueue_pairs (vlib_main_t *vm, virtio_if_t *vif)
 
static u16 virtio_pci_modern_get_device_mtu (vlib_main_t *vm, virtio_if_t *vif)
 
static void virtio_pci_modern_read_config (vlib_main_t *vm, virtio_if_t *vif, void *dst, int len, u32 addr)
 
static void virtio_pci_modern_write_config (vlib_main_t *vm, virtio_if_t *vif, void *src, int len, u32 addr)
 
static u8 virtio_pci_modern_get_isr (vlib_main_t *vm, virtio_if_t *vif)
 
void virtio_pci_modern_notify_queue (vlib_main_t *vm, virtio_if_t *vif, u16 queue_id, u16 queue_notify_off)
 
static void virtio_pci_modern_device_debug_config_space (vlib_main_t *vm, virtio_if_t *vif)
 

Variables

const virtio_pci_func_t virtio_pci_modern_func
 

Function Documentation

◆ virtio_pci_modern_del_queue()

static void virtio_pci_modern_del_queue ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_id 
)
static

Definition at line 302 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_device_debug_config_space()

static void virtio_pci_modern_device_debug_config_space ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 399 of file virtio_pci_modern.c.

◆ virtio_pci_modern_get_config_generation()

static u8 virtio_pci_modern_get_config_generation ( virtio_if_t vif)
static

Definition at line 133 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_device_features()

static u64 virtio_pci_modern_get_device_features ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 31 of file virtio_pci_modern.c.

◆ virtio_pci_modern_get_device_mac()

static void virtio_pci_modern_get_device_mac ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 313 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_device_mtu()

static u16 virtio_pci_modern_get_device_mtu ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 350 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_device_status()

static u16 virtio_pci_modern_get_device_status ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 329 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_driver_features()

static u64 virtio_pci_modern_get_driver_features ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 47 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_isr()

static u8 virtio_pci_modern_get_isr ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 384 of file virtio_pci_modern.c.

◆ virtio_pci_modern_get_max_virtqueue_pairs()

static u16 virtio_pci_modern_get_max_virtqueue_pairs ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 337 of file virtio_pci_modern.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_msix_config()

static u16 virtio_pci_modern_get_msix_config ( virtio_if_t vif)
static

Definition at line 84 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_num_queues()

static u16 virtio_pci_modern_get_num_queues ( virtio_if_t vif)
static

Definition at line 102 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_queue_desc()

static u64 virtio_pci_modern_get_queue_desc ( virtio_if_t vif)
static

Definition at line 222 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_queue_device()

static u64 virtio_pci_modern_get_queue_device ( virtio_if_t vif)
static

Definition at line 252 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_queue_driver()

static u64 virtio_pci_modern_get_queue_driver ( virtio_if_t vif)
static

Definition at line 236 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_queue_enable()

static u16 virtio_pci_modern_get_queue_enable ( virtio_if_t vif,
u16  queue_id 
)
static

Definition at line 192 of file virtio_pci_modern.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_queue_msix_vector()

static u16 virtio_pci_modern_get_queue_msix_vector ( virtio_if_t vif)
static

Definition at line 173 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_queue_notify_off()

static u16 virtio_pci_modern_get_queue_notify_off ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_id 
)
static

Definition at line 211 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_get_queue_size()

static u16 virtio_pci_modern_get_queue_size ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_id 
)
static

Definition at line 149 of file virtio_pci_modern.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ virtio_pci_modern_get_status()

static u8 virtio_pci_modern_get_status ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 110 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_notify_queue()

void virtio_pci_modern_notify_queue ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_id,
u16  queue_notify_off 
)
inline

Definition at line 390 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_read_config()

static void virtio_pci_modern_read_config ( vlib_main_t vm,
virtio_if_t vif,
void *  dst,
int  len,
u32  addr 
)
static

Definition at line 358 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_reset()

static u8 virtio_pci_modern_reset ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 126 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_set_device_mac()

static void virtio_pci_modern_set_device_mac ( vlib_main_t vm,
virtio_if_t vif 
)
static

Definition at line 321 of file virtio_pci_modern.c.

◆ virtio_pci_modern_set_driver_features()

static void virtio_pci_modern_set_driver_features ( vlib_main_t vm,
virtio_if_t vif,
u64  features 
)
static

Definition at line 64 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_set_msix_config()

static u16 virtio_pci_modern_set_msix_config ( vlib_main_t vm,
virtio_if_t vif,
u16  msix_config 
)
static

Definition at line 93 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_set_queue_desc()

static void virtio_pci_modern_set_queue_desc ( virtio_if_t vif,
u64  queue_desc 
)
static

Definition at line 230 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_set_queue_device()

static void virtio_pci_modern_set_queue_device ( virtio_if_t vif,
u64  queue_device 
)
static

Definition at line 261 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_set_queue_driver()

static void virtio_pci_modern_set_queue_driver ( virtio_if_t vif,
u64  queue_driver 
)
static

Definition at line 245 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_set_queue_enable()

static void virtio_pci_modern_set_queue_enable ( virtio_if_t vif,
u16  queue_id,
u16  queue_enable 
)
static

Definition at line 202 of file virtio_pci_modern.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ virtio_pci_modern_set_queue_msix_vector()

static u16 virtio_pci_modern_set_queue_msix_vector ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_msix_vector,
u16  queue_id 
)
static

Definition at line 182 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_set_queue_select()

static void virtio_pci_modern_set_queue_select ( virtio_if_t vif,
u16  queue_select 
)
static

Definition at line 142 of file virtio_pci_modern.c.

+ Here is the caller graph for this function:

◆ virtio_pci_modern_set_queue_size()

static void virtio_pci_modern_set_queue_size ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_id,
u16  queue_size 
)
static

Definition at line 159 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_set_status()

static void virtio_pci_modern_set_status ( vlib_main_t vm,
virtio_if_t vif,
u8  status 
)
static

Definition at line 118 of file virtio_pci_modern.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ virtio_pci_modern_setup_queue()

static u8 virtio_pci_modern_setup_queue ( vlib_main_t vm,
virtio_if_t vif,
u16  queue_id,
void *  p 
)
static

Definition at line 268 of file virtio_pci_modern.c.

+ Here is the call graph for this function:

◆ virtio_pci_modern_write_config()

static void virtio_pci_modern_write_config ( vlib_main_t vm,
virtio_if_t vif,
void *  src,
int  len,
u32  addr 
)
static

Definition at line 377 of file virtio_pci_modern.c.

Variable Documentation

◆ virtio_pci_modern_func

const virtio_pci_func_t virtio_pci_modern_func
Initial value:
= {
.get_device_features = virtio_pci_modern_get_device_features,
.get_driver_features = virtio_pci_modern_get_driver_features,
.set_driver_features = virtio_pci_modern_set_driver_features,
.device_reset = virtio_pci_modern_reset,
.get_queue_notify_off = virtio_pci_modern_get_queue_notify_off,
.device_debug_config_space = virtio_pci_modern_device_debug_config_space,
}
static u16 virtio_pci_modern_get_max_virtqueue_pairs(vlib_main_t *vm, virtio_if_t *vif)
static void virtio_pci_modern_read_config(vlib_main_t *vm, virtio_if_t *vif, void *dst, int len, u32 addr)
void virtio_pci_modern_notify_queue(vlib_main_t *vm, virtio_if_t *vif, u16 queue_id, u16 queue_notify_off)
static u8 virtio_pci_modern_reset(vlib_main_t *vm, virtio_if_t *vif)
static void virtio_pci_modern_set_driver_features(vlib_main_t *vm, virtio_if_t *vif, u64 features)
static u8 virtio_pci_modern_get_status(vlib_main_t *vm, virtio_if_t *vif)
static u16 virtio_pci_modern_get_queue_size(vlib_main_t *vm, virtio_if_t *vif, u16 queue_id)
static u16 virtio_pci_modern_set_queue_msix_vector(vlib_main_t *vm, virtio_if_t *vif, u16 queue_msix_vector, u16 queue_id)
static void virtio_pci_modern_set_status(vlib_main_t *vm, virtio_if_t *vif, u8 status)
static u16 virtio_pci_modern_get_device_mtu(vlib_main_t *vm, virtio_if_t *vif)
static u8 virtio_pci_modern_setup_queue(vlib_main_t *vm, virtio_if_t *vif, u16 queue_id, void *p)
static u64 virtio_pci_modern_get_device_features(vlib_main_t *vm, virtio_if_t *vif)
static void virtio_pci_modern_set_queue_size(vlib_main_t *vm, virtio_if_t *vif, u16 queue_id, u16 queue_size)
static u64 virtio_pci_modern_get_driver_features(vlib_main_t *vm, virtio_if_t *vif)
static u8 virtio_pci_modern_get_isr(vlib_main_t *vm, virtio_if_t *vif)
static void virtio_pci_modern_device_debug_config_space(vlib_main_t *vm, virtio_if_t *vif)
static u16 virtio_pci_modern_get_device_status(vlib_main_t *vm, virtio_if_t *vif)
static void virtio_pci_modern_del_queue(vlib_main_t *vm, virtio_if_t *vif, u16 queue_id)
static void virtio_pci_modern_write_config(vlib_main_t *vm, virtio_if_t *vif, void *src, int len, u32 addr)
static u16 virtio_pci_modern_set_msix_config(vlib_main_t *vm, virtio_if_t *vif, u16 msix_config)
static void virtio_pci_modern_get_device_mac(vlib_main_t *vm, virtio_if_t *vif)
static void virtio_pci_modern_set_device_mac(vlib_main_t *vm, virtio_if_t *vif)
static u16 virtio_pci_modern_get_queue_notify_off(vlib_main_t *vm, virtio_if_t *vif, u16 queue_id)

Definition at line 405 of file virtio_pci_modern.c.