xref: /rk3399_rockchip-uboot/include/video.h (revision b26354cfd5371759f93224b8b69335e160bcc686)
1167c5898Swdenk /*
2167c5898Swdenk ** MPC823 Video Controller
3167c5898Swdenk ** =======================
4167c5898Swdenk ** (C) 2000 by Paolo Scaffardi (arsenio@tin.it)
5167c5898Swdenk ** AIRVENT SAM s.p.a - RIMINI(ITALY)
6167c5898Swdenk **
7167c5898Swdenk */
8167c5898Swdenk 
9167c5898Swdenk #ifndef _VIDEO_H_
10167c5898Swdenk #define _VIDEO_H_
11167c5898Swdenk 
12167c5898Swdenk /* Video functions */
13167c5898Swdenk 
14167c5898Swdenk int	video_init	(void *videobase);
15167c5898Swdenk void	video_putc	(const char c);
16167c5898Swdenk void	video_puts	(const char *s);
17167c5898Swdenk 
18f674f7cfSStefan Reinauer /**
19f674f7cfSStefan Reinauer  * Display a BMP format bitmap on the screen
20f674f7cfSStefan Reinauer  *
21f674f7cfSStefan Reinauer  * @param bmp_image	Address of BMP image
22f674f7cfSStefan Reinauer  * @param x		X position to draw image
23f674f7cfSStefan Reinauer  * @param y		Y position to draw image
24f674f7cfSStefan Reinauer  */
25f674f7cfSStefan Reinauer int video_display_bitmap(ulong bmp_image, int x, int y);
26f674f7cfSStefan Reinauer 
27f674f7cfSStefan Reinauer /**
28f674f7cfSStefan Reinauer  * Get the width of the screen in pixels
29f674f7cfSStefan Reinauer  *
30f674f7cfSStefan Reinauer  * @return width of screen in pixels
31f674f7cfSStefan Reinauer  */
32f674f7cfSStefan Reinauer int video_get_pixel_width(void);
33f674f7cfSStefan Reinauer 
34f674f7cfSStefan Reinauer /**
35f674f7cfSStefan Reinauer  * Get the height of the screen in pixels
36f674f7cfSStefan Reinauer  *
37f674f7cfSStefan Reinauer  * @return height of screen in pixels
38f674f7cfSStefan Reinauer  */
39f674f7cfSStefan Reinauer int video_get_pixel_height(void);
40f674f7cfSStefan Reinauer 
41f674f7cfSStefan Reinauer /**
42f674f7cfSStefan Reinauer  * Get the number of text lines/rows on the screen
43f674f7cfSStefan Reinauer  *
44f674f7cfSStefan Reinauer  * @return number of rows
45f674f7cfSStefan Reinauer  */
46f674f7cfSStefan Reinauer int video_get_screen_rows(void);
47f674f7cfSStefan Reinauer 
48f674f7cfSStefan Reinauer /**
49f674f7cfSStefan Reinauer  * Get the number of text columns on the screen
50f674f7cfSStefan Reinauer  *
51f674f7cfSStefan Reinauer  * @return number of columns
52f674f7cfSStefan Reinauer  */
53f674f7cfSStefan Reinauer int video_get_screen_columns(void);
54f674f7cfSStefan Reinauer 
55f674f7cfSStefan Reinauer /**
56f674f7cfSStefan Reinauer  * Set the position of the text cursor
57f674f7cfSStefan Reinauer  *
58f674f7cfSStefan Reinauer  * @param col	Column to place cursor (0 = left side)
59f674f7cfSStefan Reinauer  * @param row	Row to place cursor (0 = top line)
60f674f7cfSStefan Reinauer  */
61f674f7cfSStefan Reinauer void video_position_cursor(unsigned col, unsigned row);
62f674f7cfSStefan Reinauer 
63f674f7cfSStefan Reinauer /* Clear the display */
64f674f7cfSStefan Reinauer void video_clear(void);
65f674f7cfSStefan Reinauer 
66*b26354cfSHeiko Schocher #if defined(CONFIG_FORMIKE)
67*b26354cfSHeiko Schocher int kwh043st20_f01_spi_startup(unsigned int bus, unsigned int cs,
68*b26354cfSHeiko Schocher 	unsigned int max_hz, unsigned int spi_mode);
69*b26354cfSHeiko Schocher #endif
70167c5898Swdenk #endif
71