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