1 /**
2  * @file lv_pxp_utils.h
3  *
4  */
5 
6 /**
7  * Copyright 2023-2024 NXP
8  *
9  * SPDX-License-Identifier: MIT
10  */
11 
12 #ifndef LV_PXP_UTILS_H
13 #define LV_PXP_UTILS_H
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 /*********************
20  *      INCLUDES
21  *********************/
22 #include "../../../lv_conf_internal.h"
23 
24 #if LV_USE_PXP
25 #if LV_USE_DRAW_PXP || LV_USE_ROTATE_PXP
26 #include "fsl_pxp.h"
27 #include "../../../misc/lv_color.h"
28 
29 /*********************
30  *      DEFINES
31  *********************/
32 
33 #if LV_USE_PXP_ASSERT
34 #define PXP_ASSERT(expr) LV_ASSERT(expr)
35 #else
36 #define PXP_ASSERT(expr)
37 #endif
38 
39 #define PXP_ASSERT_MSG(expr, msg)                                    \
40     do {                                                             \
41         if(!(expr)) {                                                \
42             LV_LOG_ERROR(msg);                                       \
43             PXP_ASSERT(false);                                       \
44         }                                                            \
45     } while(0)
46 
47 /**********************
48  *      TYPEDEFS
49  **********************/
50 
51 /**********************
52  *  STATIC PROTOTYPES
53  **********************/
54 
55 /**********************
56  * GLOBAL PROTOTYPES
57  **********************/
58 
59 pxp_output_pixel_format_t pxp_get_out_px_format(lv_color_format_t cf);
60 
61 pxp_as_pixel_format_t pxp_get_as_px_format(lv_color_format_t cf);
62 
63 #if LV_USE_DRAW_PXP
64 pxp_ps_pixel_format_t pxp_get_ps_px_format(lv_color_format_t cf);
65 
66 bool pxp_buf_aligned(const void * buf, uint32_t stride);
67 
68 /**********************
69  *      MACROS
70  **********************/
71 
72 /**********************
73  *   STATIC FUNCTIONS
74  **********************/
75 
76 #endif /*LV_USE_DRAW_PXP*/
77 #endif /*LV_USE_DRAW_PXP || LV_USE_ROTATE_PXP*/
78 #endif /*LV_USE_PXP*/
79 
80 #ifdef __cplusplus
81 } /*extern "C"*/
82 #endif
83 
84 #endif /*LV_PXP_UTILS_H*/
85