Lines Matching refs:drv
26 static void send_cmd(lv_lcd_generic_mipi_driver_t * drv, uint8_t cmd, uint8_t * param, size_t param…
27 static void send_color(lv_lcd_generic_mipi_driver_t * drv, uint8_t cmd, uint8_t * param, size_t par…
28 static void init(lv_lcd_generic_mipi_driver_t * drv, lv_lcd_flag_t flags);
29 static void set_mirror(lv_lcd_generic_mipi_driver_t * drv, bool mirror_x, bool mirror_y);
30 static void set_swap_xy(lv_lcd_generic_mipi_driver_t * drv, bool swap);
31 static void set_rotation(lv_lcd_generic_mipi_driver_t * drv, lv_display_rotation_t rot);
56 …lv_lcd_generic_mipi_driver_t * drv = (lv_lcd_generic_mipi_driver_t *)lv_malloc(sizeof(lv_lcd_gener… in lv_lcd_generic_mipi_create() local
57 if(drv == NULL) { in lv_lcd_generic_mipi_create()
63 drv->disp = disp; in lv_lcd_generic_mipi_create()
64 drv->send_cmd = send_cmd_cb; in lv_lcd_generic_mipi_create()
65 drv->send_color = send_color_cb; in lv_lcd_generic_mipi_create()
66 lv_display_set_driver_data(disp, (void *)drv); in lv_lcd_generic_mipi_create()
69 init(drv, flags); in lv_lcd_generic_mipi_create()
82 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in lv_lcd_generic_mipi_set_gap() local
83 drv->x_gap = x; in lv_lcd_generic_mipi_set_gap()
84 drv->y_gap = y; in lv_lcd_generic_mipi_set_gap()
89 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in lv_lcd_generic_mipi_set_invert() local
90 send_cmd(drv, invert ? LV_LCD_CMD_ENTER_INVERT_MODE : LV_LCD_CMD_EXIT_INVERT_MODE, NULL, 0); in lv_lcd_generic_mipi_set_invert()
95 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in lv_lcd_generic_mipi_set_address_mode() local
96 uint8_t mad = drv->madctl_reg & ~(LV_LCD_MASK_RGB_ORDER); in lv_lcd_generic_mipi_set_address_mode()
100 drv->madctl_reg = mad; in lv_lcd_generic_mipi_set_address_mode()
101 drv->mirror_x = mirror_x; in lv_lcd_generic_mipi_set_address_mode()
102 drv->mirror_y = mirror_y; in lv_lcd_generic_mipi_set_address_mode()
103 drv->swap_xy = swap_xy; in lv_lcd_generic_mipi_set_address_mode()
104 set_rotation(drv, lv_display_get_rotation(disp)); /* update screen */ in lv_lcd_generic_mipi_set_address_mode()
109 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in lv_lcd_generic_mipi_set_gamma_curve() local
110 send_cmd(drv, LV_LCD_CMD_SET_GAMMA_CURVE, (uint8_t[]) { in lv_lcd_generic_mipi_set_gamma_curve()
117 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in lv_lcd_generic_mipi_send_cmd_list() local
129 drv->send_cmd(drv->disp, &cmd, 1, cmd_list, num); in lv_lcd_generic_mipi_send_cmd_list()
146 static void send_cmd(lv_lcd_generic_mipi_driver_t * drv, uint8_t cmd, uint8_t * param, size_t param… in send_cmd() argument
149 drv->send_cmd(drv->disp, &cmdbuf, 1, param, param_size); in send_cmd()
159 static void send_color(lv_lcd_generic_mipi_driver_t * drv, uint8_t cmd, uint8_t * param, size_t par… in send_color() argument
162 drv->send_color(drv->disp, &cmdbuf, 1, param, param_size); in send_color()
169 static void init(lv_lcd_generic_mipi_driver_t * drv, lv_lcd_flag_t flags) in init() argument
171 drv->x_gap = 0; in init()
172 drv->y_gap = 0; in init()
175 … drv->madctl_reg = flags & LV_LCD_FLAG_BGR ? LV_LCD_BIT_RGB_ORDER__BGR : LV_LCD_BIT_RGB_ORDER__RGB; in init()
176 …drv->colmod_reg = flags & LV_LCD_FLAG_RGB666 ? LV_LCD_PIXEL_FORMAT_RGB666 : LV_LCD_PIXEL_FORMAT_RG… in init()
179 drv->mirror_x = flags & LV_LCD_FLAG_MIRROR_X; in init()
180 drv->mirror_y = flags & LV_LCD_FLAG_MIRROR_Y; in init()
181 drv->swap_xy = false; in init()
183 set_swap_xy(drv, drv->swap_xy); in init()
184 set_mirror(drv, drv->mirror_x, drv->mirror_y); in init()
187 send_cmd(drv, LV_LCD_CMD_ENTER_SLEEP_MODE, NULL, 0); in init()
191 send_cmd(drv, LV_LCD_CMD_SOFT_RESET, NULL, 0); in init()
195 send_cmd(drv, LV_LCD_CMD_EXIT_SLEEP_MODE, NULL, 0); in init()
198 send_cmd(drv, LV_LCD_CMD_ENTER_NORMAL_MODE, NULL, 0); in init()
200 send_cmd(drv, LV_LCD_CMD_SET_ADDRESS_MODE, (uint8_t[]) { in init()
201 drv->madctl_reg, in init()
203 send_cmd(drv, LV_LCD_CMD_SET_PIXEL_FORMAT, (uint8_t[]) { in init()
204 drv->colmod_reg, in init()
206 send_cmd(drv, LV_LCD_CMD_SET_DISPLAY_ON, NULL, 0); in init()
215 static void set_mirror(lv_lcd_generic_mipi_driver_t * drv, bool mirror_x, bool mirror_y) in set_mirror() argument
217 …uint8_t mad = drv->madctl_reg & ~(LV_LCD_MASK_COLUMN_ADDRESS_ORDER | LV_LCD_MASK_PAGE_ADDRESS_ORDE… in set_mirror()
224 drv->madctl_reg = mad; in set_mirror()
232 static void set_swap_xy(lv_lcd_generic_mipi_driver_t * drv, bool swap) in set_swap_xy() argument
234 uint8_t mad = drv->madctl_reg & ~(LV_LCD_MASK_PAGE_COLUMN_ORDER); in set_swap_xy()
238 drv->madctl_reg = mad; in set_swap_xy()
252 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in flush_cb() local
261 x_start += drv->x_gap; in flush_cb()
262 x_end += drv->x_gap; in flush_cb()
263 y_start += drv->y_gap; in flush_cb()
264 y_end += drv->y_gap; in flush_cb()
267 send_cmd(drv, LV_LCD_CMD_SET_COLUMN_ADDRESS, (uint8_t[]) { in flush_cb()
273 send_cmd(drv, LV_LCD_CMD_SET_PAGE_ADDRESS, (uint8_t[]) { in flush_cb()
281 send_color(drv, LV_LCD_CMD_WRITE_MEMORY_START, px_map, len); in flush_cb()
289 static void set_rotation(lv_lcd_generic_mipi_driver_t * drv, lv_display_rotation_t rot) in set_rotation() argument
293 set_swap_xy(drv, drv->swap_xy); in set_rotation()
294 set_mirror(drv, drv->mirror_x, drv->mirror_y); in set_rotation()
297 set_swap_xy(drv, !drv->swap_xy); in set_rotation()
298 set_mirror(drv, drv->mirror_x, !drv->mirror_y); in set_rotation()
301 set_swap_xy(drv, drv->swap_xy); in set_rotation()
302 set_mirror(drv, !drv->mirror_x, !drv->mirror_y); in set_rotation()
305 set_swap_xy(drv, !drv->swap_xy); in set_rotation()
306 set_mirror(drv, !drv->mirror_x, drv->mirror_y); in set_rotation()
309 send_cmd(drv, LV_LCD_CMD_SET_ADDRESS_MODE, (uint8_t[]) { in set_rotation()
310 drv->madctl_reg in set_rotation()
321 lv_lcd_generic_mipi_driver_t * drv = get_driver(disp); in res_chg_event_cb() local
332 set_rotation(drv, rot); in res_chg_event_cb()