class IoBufferRing

Defined at line 102 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 113 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 642 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc

void ~IoBufferRing ()

Defined at line 646 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 648 of file ../../src/devices/misc/drivers/virtio-socket/socket.cc

void FreeBuffers ()

Frees the resources allocated by this ring.

Defined at line 672 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 119 of file ../../src/devices/misc/drivers/virtio-socket/socket.h

Ring & ring ()

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

io_buffer_t & io_buffer ()

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

uint32_t buf_size ()

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