Lines Matching refs:vring_packed

1909 static void vring_free_packed(struct vring_virtqueue_packed *vring_packed,  in vring_free_packed()  argument
1913 if (vring_packed->vring.desc) in vring_free_packed()
1914 vring_free_queue(vdev, vring_packed->ring_size_in_bytes, in vring_free_packed()
1915 vring_packed->vring.desc, in vring_free_packed()
1916 vring_packed->ring_dma_addr, in vring_free_packed()
1919 if (vring_packed->vring.driver) in vring_free_packed()
1920 vring_free_queue(vdev, vring_packed->event_size_in_bytes, in vring_free_packed()
1921 vring_packed->vring.driver, in vring_free_packed()
1922 vring_packed->driver_event_dma_addr, in vring_free_packed()
1925 if (vring_packed->vring.device) in vring_free_packed()
1926 vring_free_queue(vdev, vring_packed->event_size_in_bytes, in vring_free_packed()
1927 vring_packed->vring.device, in vring_free_packed()
1928 vring_packed->device_event_dma_addr, in vring_free_packed()
1931 kfree(vring_packed->desc_state); in vring_free_packed()
1932 kfree(vring_packed->desc_extra); in vring_free_packed()
1935 static int vring_alloc_queue_packed(struct vring_virtqueue_packed *vring_packed, in vring_alloc_queue_packed() argument
1953 vring_packed->vring.desc = ring; in vring_alloc_queue_packed()
1954 vring_packed->ring_dma_addr = ring_dma_addr; in vring_alloc_queue_packed()
1955 vring_packed->ring_size_in_bytes = ring_size_in_bytes; in vring_alloc_queue_packed()
1966 vring_packed->vring.driver = driver; in vring_alloc_queue_packed()
1967 vring_packed->event_size_in_bytes = event_size_in_bytes; in vring_alloc_queue_packed()
1968 vring_packed->driver_event_dma_addr = driver_event_dma_addr; in vring_alloc_queue_packed()
1977 vring_packed->vring.device = device; in vring_alloc_queue_packed()
1978 vring_packed->device_event_dma_addr = device_event_dma_addr; in vring_alloc_queue_packed()
1980 vring_packed->vring.num = num; in vring_alloc_queue_packed()
1985 vring_free_packed(vring_packed, vdev, dma_dev); in vring_alloc_queue_packed()
1989 static int vring_alloc_state_extra_packed(struct vring_virtqueue_packed *vring_packed) in vring_alloc_state_extra_packed() argument
1993 u32 num = vring_packed->vring.num; in vring_alloc_state_extra_packed()
2005 vring_packed->desc_state = state; in vring_alloc_state_extra_packed()
2006 vring_packed->desc_extra = extra; in vring_alloc_state_extra_packed()
2016 static void virtqueue_vring_init_packed(struct vring_virtqueue_packed *vring_packed, in virtqueue_vring_init_packed() argument
2019 vring_packed->next_avail_idx = 0; in virtqueue_vring_init_packed()
2020 vring_packed->avail_wrap_counter = 1; in virtqueue_vring_init_packed()
2021 vring_packed->event_flags_shadow = 0; in virtqueue_vring_init_packed()
2022 vring_packed->avail_used_flags = 1 << VRING_PACKED_DESC_F_AVAIL; in virtqueue_vring_init_packed()
2026 vring_packed->event_flags_shadow = VRING_PACKED_EVENT_FLAG_DISABLE; in virtqueue_vring_init_packed()
2027 vring_packed->vring.driver->flags = in virtqueue_vring_init_packed()
2028 cpu_to_le16(vring_packed->event_flags_shadow); in virtqueue_vring_init_packed()
2033 struct vring_virtqueue_packed *vring_packed) in virtqueue_vring_attach_packed() argument
2035 vq->packed = *vring_packed; in virtqueue_vring_attach_packed()
2066 struct vring_virtqueue_packed vring_packed = {}; in vring_create_virtqueue_packed() local
2070 if (vring_alloc_queue_packed(&vring_packed, vdev, num, dma_dev)) in vring_create_virtqueue_packed()
2103 err = vring_alloc_state_extra_packed(&vring_packed); in vring_create_virtqueue_packed()
2107 virtqueue_vring_init_packed(&vring_packed, !!callback); in vring_create_virtqueue_packed()
2110 virtqueue_vring_attach_packed(vq, &vring_packed); in vring_create_virtqueue_packed()
2120 vring_free_packed(&vring_packed, vdev, dma_dev); in vring_create_virtqueue_packed()
2127 struct vring_virtqueue_packed vring_packed = {}; in virtqueue_resize_packed() local
2132 if (vring_alloc_queue_packed(&vring_packed, vdev, num, vring_dma_dev(vq))) in virtqueue_resize_packed()
2135 err = vring_alloc_state_extra_packed(&vring_packed); in virtqueue_resize_packed()
2141 virtqueue_vring_init_packed(&vring_packed, !!vq->vq.callback); in virtqueue_resize_packed()
2143 virtqueue_init(vq, vring_packed.vring.num); in virtqueue_resize_packed()
2144 virtqueue_vring_attach_packed(vq, &vring_packed); in virtqueue_resize_packed()
2149 vring_free_packed(&vring_packed, vdev, vring_dma_dev(vq)); in virtqueue_resize_packed()