class IoBufferRing

Defined at line 100 of file ../../src/devices/misc/drivers/virtio-socket/socket.h

Wrapper around a virtio Ring that uses a single contiguous io_buffer to

fill the descriptors.

Public Methods

void Kick ()

Defined at line 111 of file ../../src/devices/misc/drivers/virtio-socket/socket.h

void IoBufferRing (virtio::Device * device, uint16_t count, uint32_t buf_size, bool host_write_only)

Defined at line 616 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc

void ~IoBufferRing ()

Defined at line 620 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc

zx_status_t Init (uint16_t index, const zx::bti & bti)

Initialize the Ring and allocate the io_buffer. index is the virtio ring index

in the device. This must be called prior to using any other members of

this class.

Defined at line 622 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc

void FreeBuffers ()

Frees the resources allocated by this ring.

Defined at line 648 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc

Protected Methods

void * GetRawDesc (uint16_t id, uint32_t len, uint32_t offset)

Defined at line 117 of file ../../src/devices/misc/drivers/virtio-socket/socket.h

Ring & ring ()

Defined at line 123 of file ../../src/devices/misc/drivers/virtio-socket/socket.h

dma_buffer::ContiguousBuffer * io_buffer ()

Defined at line 124 of file ../../src/devices/misc/drivers/virtio-socket/socket.h

uint32_t buf_size ()

Defined at line 125 of file ../../src/devices/misc/drivers/virtio-socket/socket.h