X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fvirtio%2Fvirtio.h;h=e78b2e429e09b5971f7552a459789dcf9a7b58fe;hb=daa02b5cddbb8e11b31d41e2bf7bb1ae64dcae2f;hp=a7629ad16b24c53eef465f2a9f19d02464a830ab;hpb=6a504290a7838a40223f8da3ab8144ff8f78c731;p=dpdk.git diff --git a/drivers/net/virtio/virtio.h b/drivers/net/virtio/virtio.h index a7629ad16b..e78b2e429e 100644 --- a/drivers/net/virtio/virtio.h +++ b/drivers/net/virtio/virtio.h @@ -98,7 +98,7 @@ * * Note the sizeof(struct vring_desc) is 16 bytes. */ -#define VIRTIO_MAX_INDIRECT ((int)(PAGE_SIZE / 16)) +#define VIRTIO_MAX_INDIRECT ((int)(rte_mem_page_size() / 16)) /* * Maximum number of virtqueues per device. @@ -131,6 +131,9 @@ /* Vector value used to disable MSI for queue. */ #define VIRTIO_MSI_NO_VECTOR 0xFFFF +/* The alignment to use between consumer and producer parts of vring. */ +#define VIRTIO_VRING_ALIGN 4096 + /* * This structure is just a reference to read net device specific * config space; it is just a shadow structure. @@ -164,6 +167,7 @@ struct virtio_hw { uint8_t started; uint8_t weak_barriers; uint8_t vlan_strip; + bool rx_ol_scatter; uint8_t has_tx_offload; uint8_t has_rx_offload; uint8_t use_vec_rx; @@ -177,6 +181,7 @@ struct virtio_hw { uint8_t duplex; uint8_t intr_lsc; uint16_t max_mtu; + size_t max_rx_pkt_len; /* * App management thread and virtio interrupt handler thread * both can change device state, this lock is meant to avoid @@ -187,6 +192,7 @@ struct virtio_hw { uint16_t max_queue_pairs; uint64_t req_guest_features; struct virtnet_ctl *cvq; + bool use_va; }; struct virtio_ops {