Class FlxFromHostBuffer
Defined in File fromhost_buffer.hpp
Inheritance Relationships
Base Type
public FromHostBuffer(Class FromHostBuffer)
Class Documentation
-
class FlxFromHostBuffer : public FromHostBuffer
FromHost DMA buffer interfaced with an FLX card
Public Functions
-
~FlxFromHostBuffer() override
-
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_circular_trickle_buffer() override
Starts a circular trickle DMA buffer.
The firmware will continuously read the configuration data up to the current write offset. The firmware will not check the write offset pointer as for the normal FromHost buffer, but it is used to tell the firmware the size of the trickle configuration when enabling the buffer
-
virtual void set_oneshot_trickle_buffer() override
Sets a trickle DMA buffer to one-shot.
The firmware reads the configuration data from the buffer once. This function will block until the firmware has finished reading the data, or until a timeout is reached. After the transfer, the write offset is reset to 0 and the buffer disbled.
-
virtual bool can_write_trickle() override
- Returns:
true if the buffer is writable, false otherwise.
-
virtual void dma_start_continuous() override
-
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
-
~FlxFromHostBuffer() override