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