Class FlxFromHostBuffer

Inheritance Relationships

Base Type

Class Documentation

class FlxFromHostBuffer : public FromHostBuffer

FromHost DMA buffer interfaced with an FLX card

Public Functions

explicit FlxFromHostBuffer(std::shared_ptr<Device> d)
~FlxFromHostBuffer()
virtual void allocate_buffer(size_t size, const std::string &name, bool vmem, bool free_previous_cmem = true) override
Parameters:
  • size -- of the FromHost DMA buffer.

  • name -- of the buffer passed to the CMEM driver.

  • vmem -- allocate the buffer without using the CMEM driver.

  • free_previous_cmem -- claim an unlocked/orphaned CMEM buffer with the same name.

virtual void dma_start_continuous() override
virtual void dma_start_circular_trickle_buffer() override
virtual void set_oneshot_trickle_buffer(size_t config_size) override
virtual size_t dma_free_bytes() override
Returns:

free space in the FromHost buffer in bytes.

virtual bool dma_is_full() override
virtual uint64_t dma_get_read_offset() override
virtual uint64_t dma_get_write_offset() override
virtual uint64_t dma_get_write_ptr() override
virtual void dma_set_write_offset(uint64_t addr) override
virtual void dma_advance_write_ptr(size_t bytes) override