lvgl_riot_conf.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2021 Inria
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef LVGL_RIOT_CONF_H
20 #define LVGL_RIOT_CONF_H
21 
22 #include "kernel_defines.h"
23 #include "board.h"
24 #if IS_USED(MODULE_LV_DRIVERS_SDL)
25 #include "lv_drv_conf.h"
26 #endif
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
33 #ifndef LV_HOR_RES_MAX
34 #ifdef LCD_SCREEN_WIDTH
35 #define LV_HOR_RES_MAX (LCD_SCREEN_WIDTH)
36 #else
37 #define LV_HOR_RES_MAX (320)
38 #endif
39 #endif
40 
42 #ifndef LV_VER_RES_MAX
43 #ifdef LCD_SCREEN_HEIGHT
44 #define LV_VER_RES_MAX (LCD_SCREEN_HEIGHT)
45 #else
46 #define LV_VER_RES_MAX (240)
47 #endif
48 #endif
49 
52 #define LV_ATTRIBUTE_MEM_ALIGN __attribute__((aligned(4)))
53 
54 /* Type of coordinates. Should be `int16_t` (or `int32_t` for extreme cases) */
55 typedef int16_t lv_coord_t;
56 
57 #define LV_TICK_CUSTOM 1
58 #define LV_TICK_CUSTOM_INCLUDE "ztimer.h" /*Header for the sys time function*/
59 #define LV_TICK_CUSTOM_SYS_TIME_EXPR (ztimer_now(ZTIMER_MSEC)) /*Expression evaluating to current systime in ms*/
60 
61 #ifdef __cplusplus
62 }
63 #endif
64 
65 #endif /* LVGL_RIOT_CONF_H */
Common macros and compiler attributes/pragmas configuration.