class TestCommandBuffer
Defined at line 12 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
Protected Members
unique_ptr address_space_owner_
unique_ptr device_
unique_ptr client_
Public Methods
std::unique_ptr<CommandBuffer> Create (std::shared_ptr<MsdIntelBuffer> command_buffer_descriptor, std::weak_ptr<MsdIntelContext> context, std::vector<std::shared_ptr<MsdIntelBuffer>> buffers, std::vector<std::shared_ptr<magma::PlatformSemaphore>> wait_semaphores, std::vector<std::shared_ptr<magma::PlatformSemaphore>> signal_semaphores)
Defined at line 13 of file ../../src/graphics/drivers/msd-intel-gen/tests/unit_tests/test_command_buffer.h
void SetUp ()
Defined at line 24 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
void Release ()
Defined at line 33 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
bool MapResourcesGpu (CommandBuffer * command_buffer, std::shared_ptr<AddressSpace> address_space, std::vector<std::shared_ptr<GpuMapping>> & mappings)
Defined at line 44 of file ../../src/graphics/drivers/msd-intel-gen/tests/unit_tests/test_command_buffer.h
void UnmapResourcesGpu (CommandBuffer * command_buffer)
Defined at line 50 of file ../../src/graphics/drivers/msd-intel-gen/tests/unit_tests/test_command_buffer.h
uint32_t batch_buffer_resource_index (const CommandBuffer * command_buffer)
Defined at line 54 of file ../../src/graphics/drivers/msd-intel-gen/tests/unit_tests/test_command_buffer.h
std::vector<CommandBuffer::ExecResource> & exec_resources (CommandBuffer * command_buffer)
Defined at line 58 of file ../../src/graphics/drivers/msd-intel-gen/tests/unit_tests/test_command_buffer.h
Protected Methods
void CreateMsdBuffer (uint32_t buffer_size, std::shared_ptr<MsdVsiBuffer> * out_buffer)
Creates a buffer of |buffer_size| and stores it in |out_buffer|.
Defined at line 23 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void CreateAndMapBuffer (std::shared_ptr<MsdVsiContext> context, uint32_t buffer_size, uint32_t map_page_count, uint32_t gpu_addr, std::shared_ptr<MsdVsiBuffer> * out_buffer)
Creates a buffer of |buffer_size| bytes, and maps the buffer to |gpu_addr|.
|map_page_count| may be less bytes than buffer size.
Defined at line 37 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void CreateAndPrepareBatch (std::shared_ptr<MsdVsiContext> context, std::shared_ptr<MsdVsiBuffer> buffer, uint32_t data_size, uint32_t batch_offset, std::shared_ptr<magma::PlatformSemaphore> signal, std::optional<CommandBuffer::ExecResource> context_state_buffer, std::unique_ptr<CommandBuffer> * out_batch)
Creates a new command buffer.
|data_size| is the actual length of the user provided data and may be smaller than
the size of |buffer|.
|signal| is an optional semaphore. If present, it will be signalled after the batch
is submitted via |SubmitBatch| and execution completes.
Defined at line 56 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void CreateAndSubmitBuffer (std::shared_ptr<MsdVsiContext> context, const BufferDesc & buffer_desc, std::shared_ptr<magma::PlatformSemaphore> signal, std::optional<uint32_t> fault_addr, std::optional<CommandBuffer::ExecResource> context_state_buffer, bool validate_batch, std::shared_ptr<MsdVsiBuffer> * out_buffer)
Creates a buffer from |buffer_desc|, writes a test instruction to it and
submits it as a command buffer.
|signal| is an optional semaphore that will be passed as a signal semaphore for the batch.
If |fault_addr| is populated, the submitted buffer will contain faulting instructions.
If |validate_batch| is true, this will check that the batch is correctly mapped and has valid
sized buffers. If |out_buffer| is non-null, it will be populated with the created buffer.
Defined at line 89 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void CreateClient (uint32_t address_space_index, std::unique_ptr<Client> * out_client)
Defined at line 105 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
void CreateAndSubmitBufferWaitCompletion (std::shared_ptr<MsdVsiContext> context, const BufferDesc & buffer_desc, std::optional<CommandBuffer::ExecResource> context_state_buffer, bool validate_batch, std::shared_ptr<MsdVsiBuffer> * out_buffer)
Creates a buffer from |buffer_desc|, writes a test instruction to it and
submits it as a command buffer. This will wait for execution to complete.
If |out_buffer| is non-null, it will be populated with the created buffer.
Defined at line 121 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void WriteWaitCommand (std::shared_ptr<MsdVsiBuffer> buf, uint32_t offset)
Writes a single WAIT command in |buf| at |offset|.
Defined at line 136 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void WriteLinkCommand (std::shared_ptr<MsdVsiBuffer> buffer, uint32_t offset, uint16_t prefetch, uint32_t gpu_addr)
Writes a single LINK command in |buf| at |offset|.
Defined at line 144 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void WriteEventCommand (std::unique_ptr<MsdVsiDevice> & device, std::shared_ptr<MsdVsiContext> context, std::shared_ptr<MsdVsiBuffer> buffer, uint32_t offset, std::unique_ptr<magma::PlatformSemaphore> * out_semaphore)
Writes an EVENT command in |buf| at |offset|. |out_semaphore| will be populated with the
semaphore that will be signalled once the interrupt associated with the event occurs.
Defined at line 153 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.cc
void DropDefaultClient ()
Defined at line 175 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
std::shared_ptr<MsdVsiConnection> default_connection ()
Defined at line 177 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
std::shared_ptr<MsdVsiContext> default_context ()
Defined at line 178 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h
std::shared_ptr<AddressSpace> default_address_space ()
Defined at line 179 of file ../../src/graphics/drivers/msd-vsi-vip/tests/unit_tests/test_command_buffer.h