1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Copyright (c) 2011 The Chromium OS Authors. 4 */ 5 6#include <common.h> 7#include <api_public.h> 8#include <lcd.h> 9#include <log.h> 10#include <video_font.h> /* Get font width and height */ 11 12/* lcd.h needs BMP_LOGO_HEIGHT to calculate CONSOLE_ROWS */ 13#if defined(CONFIG_LCD_LOGO) && !defined(CONFIG_LCD_INFO_BELOW_LOGO) 14#include <bmp_logo.h> 15#endif 16 17/* TODO(clchiou): add support of video device */ 18 19int display_get_info(int type, struct display_info *di) 20{ 21 if (!di) 22 return API_EINVAL; 23 24 switch (type) { 25 default: 26 debug("%s: unsupport display device type: %d\n", 27 __FILE__, type); 28 return API_ENODEV; 29#ifdef CONFIG_LCD 30 case DISPLAY_TYPE_LCD: 31 di->pixel_width = panel_info.vl_col; 32 di->pixel_height = panel_info.vl_row; 33 di->screen_rows = lcd_get_screen_rows(); 34 di->screen_cols = lcd_get_screen_columns(); 35 break; 36#endif 37 } 38 39 di->type = type; 40 return 0; 41} 42 43int display_draw_bitmap(ulong bitmap, int x, int y) 44{ 45 if (!bitmap) 46 return API_EINVAL; 47#ifdef CONFIG_LCD 48 return lcd_display_bitmap(bitmap, x, y); 49#else 50 return API_ENODEV; 51#endif 52} 53 54void display_clear(void) 55{ 56#ifdef CONFIG_LCD 57 lcd_clear(); 58#endif 59} 60