Halide 19.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
HalideRuntimeHexagonDma.h File Reference

Routines specific to the Halide Hexagon DMA host-side runtime. More...

Go to the source code of this file.

Enumerations

enum  halide_hexagon_image_fmt_t {
  halide_hexagon_fmt_RawData , halide_hexagon_fmt_NV12 , halide_hexagon_fmt_NV12_Y , halide_hexagon_fmt_NV12_UV ,
  halide_hexagon_fmt_P010 , halide_hexagon_fmt_P010_Y , halide_hexagon_fmt_P010_UV , halide_hexagon_fmt_TP10 ,
  halide_hexagon_fmt_TP10_Y , halide_hexagon_fmt_TP10_UV , halide_hexagon_fmt_NV124R , halide_hexagon_fmt_NV124R_Y ,
  halide_hexagon_fmt_NV124R_UV
}
 Image Formats to prepare the application for DMA Transfer. More...
 

Functions

const struct halide_device_interface_thalide_hexagon_dma_device_interface ()
 
int halide_hexagon_dma_device_wrap_native (void *user_context, struct halide_buffer_t *buf, uint64_t mem)
 This API is used to set up the DMA device interface to be used for DMA transfer.
 
int halide_hexagon_dma_device_detach_native (void *user_context, struct halide_buffer_t *buf)
 Detach the Input/Output Buffer from DMA device handle and deallocate the DMA device handle buffer allocation This API also frees up the DMA device and makes it available for another usage.
 
int halide_hexagon_dma_allocate_engine (void *user_context, void **dma_engine)
 This API will allocate a DMA Engine needed for DMA read/write.
 
int halide_hexagon_dma_deallocate_engine (void *user_context, void *dma_engine)
 This API free up the allocated DMA engine.
 
int halide_hexagon_dma_prepare_for_copy_to_host (void *user_context, struct halide_buffer_t *buf, void *dma_engine, bool is_ubwc, halide_hexagon_image_fmt_t fmt)
 This API Prepares a buffer for DMA Read Operation.
 
int halide_hexagon_dma_prepare_for_copy_to_device (void *user_context, struct halide_buffer_t *buf, void *dma_engine, bool is_ubwc, halide_hexagon_image_fmt_t fmt)
 This API Prepares a buffer for DMA Write Operation.
 
int halide_hexagon_dma_unprepare (void *user_context, struct halide_buffer_t *buf)
 This API is used to frees up the DMA Resources associated with the buffer.
 
int halide_hexagon_dma_power_mode_voting (void *user_context, halide_hexagon_power_mode_t cornercase)
 This API is used to setup the hexagon Operation modes.
 

Detailed Description

Routines specific to the Halide Hexagon DMA host-side runtime.

Definition in file HalideRuntimeHexagonDma.h.