6#ifndef LV_GPU_STM32_DMA2D_H
7#define LV_GPU_STM32_DMA2D_H
17#if LV_USE_GPU_STM32_DMA2D
22#include LV_GPU_DMA2D_CMSIS_INCLUDE
27#if defined(LV_STM32_DMA2D_TEST)
29#define LV_STM32_DMA2D_STATIC
31#define LV_STM32_DMA2D_STATIC static
37enum dma2d_color_format {
46typedef enum dma2d_color_format dma2d_color_format_t;
53void lv_draw_stm32_dma2d_init(
void);
57static void lv_draw_stm32_dma2d_buffer_copy(
lv_draw_ctx_t * draw_ctx,
58 void * dest_buf, lv_coord_t dest_stride,
const lv_area_t * dest_area,
59 void * src_buf, lv_coord_t src_stride,
const lv_area_t * src_area);
61 const lv_area_t * src_area,
const void * src);
62static void lv_gpu_stm32_dma2d_wait_cb(
lv_draw_ctx_t * draw_ctx);
64 const lv_area_t * coords,
const uint8_t * src_buf, lv_img_cf_t color_format);
65static dma2d_color_format_t lv_color_format_to_dma2d_color_format(lv_img_cf_t color_format);
71LV_STM32_DMA2D_STATIC
void _lv_draw_stm32_dma2d_blend_fill(
const lv_color_t * dst_buf, lv_coord_t dst_stride,
72 const lv_area_t * draw_area, lv_color_t color, lv_opa_t opa);
73LV_STM32_DMA2D_STATIC
void _lv_draw_stm32_dma2d_blend_map(
const lv_color_t * dest_buf, lv_coord_t dest_stride,
74 const lv_area_t * draw_area,
const void * src_buf, lv_coord_t src_stride,
const lv_point_t * src_offset, lv_opa_t opa,
75 dma2d_color_format_t src_color_format,
bool ignore_src_alpha);
76LV_STM32_DMA2D_STATIC
void _lv_draw_stm32_dma2d_blend_paint(
const lv_color_t * dst_buf, lv_coord_t dst_stride,
77 const lv_area_t * draw_area,
const lv_opa_t * mask_buf, lv_coord_t mask_stride,
const lv_point_t * mask_offset,
78 lv_color_t color, lv_opa_t opa);
79LV_STM32_DMA2D_STATIC
void _lv_draw_stm32_dma2d_copy_buffer(
const lv_color_t * dest_buf, lv_coord_t dest_stride,
80 const lv_area_t * draw_area,
const lv_color_t * src_buf, lv_coord_t src_stride,
const lv_point_t * src_offset);
81LV_STM32_DMA2D_STATIC
void _lv_gpu_stm32_dma2d_await_dma_transfer_finish(
lv_disp_drv_t * disp_drv);
82LV_STM32_DMA2D_STATIC
void _lv_gpu_stm32_dma2d_start_dma_transfer(
void);
83LV_STM32_DMA2D_STATIC
void _lv_gpu_stm32_dma2d_invalidate_cache(uint32_t address, lv_coord_t offset,
84 lv_coord_t width, lv_coord_t height, uint8_t pixel_size);
85LV_STM32_DMA2D_STATIC
void _lv_gpu_stm32_dma2d_clean_cache(uint32_t address, lv_coord_t offset, lv_coord_t width,
86 lv_coord_t height, uint8_t pixel_size);
87LV_STM32_DMA2D_STATIC
bool _lv_gpu_stm32_dwt_init(
void);
88LV_STM32_DMA2D_STATIC
void _lv_gpu_stm32_dwt_reset(
void);
89LV_STM32_DMA2D_STATIC uint32_t _lv_gpu_stm32_dwt_get_us(
void);
Definition lv_hal_disp.h:77
Definition lv_draw_img.h:32
Definition lv_draw_sw_blend.h:29
Definition lv_draw_sw.h:32