xref: /openbmc/u-boot/include/video_fb.h (revision 83d290c56fab2d38cd1ab4c4cc7099559c1d5046)
1  /* SPDX-License-Identifier: GPL-2.0+ */
2  /*
3   * (C) Copyright 1997-2002 ELTEC Elektronik AG
4   * Frank Gottschling <fgottschling@eltec.de>
5   */
6  
7  /*
8   * smiLynxEM.h
9   * Silicon Motion graphic interface for sm810/sm710/sm712 accelerator
10   *
11   *
12   *  modification history
13   *  --------------------
14   *  04-18-2002 Rewritten for U-Boot <fgottschling@eltec.de>.
15   */
16  
17  #ifndef _VIDEO_FB_H_
18  #define _VIDEO_FB_H_
19  
20  /*
21   * Graphic Data Format (GDF) bits for VIDEO_DATA_FORMAT
22   */
23  #define GDF__8BIT_INDEX         0
24  #define GDF_15BIT_555RGB        1
25  #define GDF_16BIT_565RGB        2
26  #define GDF_32BIT_X888RGB       3
27  #define GDF_24BIT_888RGB        4
28  #define GDF__8BIT_332RGB        5
29  
30  /******************************************************************************/
31  /* Export Graphic Driver Control                                              */
32  /******************************************************************************/
33  
34  typedef struct graphic_device {
35      unsigned int isaBase;
36      unsigned int pciBase;
37      unsigned int dprBase;
38      unsigned int vprBase;
39      unsigned int cprBase;
40      unsigned int frameAdrs;
41      unsigned int memSize;
42      unsigned int mode;
43      unsigned int gdfIndex;
44      unsigned int gdfBytesPP;
45      unsigned int fg;
46      unsigned int bg;
47      unsigned int plnSizeX;
48      unsigned int plnSizeY;
49      unsigned int winSizeX;
50      unsigned int winSizeY;
51      char modeIdent[80];
52  } GraphicDevice;
53  
54  
55  /******************************************************************************/
56  /* Export Graphic Functions                                                   */
57  /******************************************************************************/
58  
59  void *video_hw_init (void);       /* returns GraphicDevice struct or NULL */
60  
61  #ifdef VIDEO_HW_BITBLT
62  void video_hw_bitblt (
63      unsigned int bpp,             /* bytes per pixel */
64      unsigned int src_x,           /* source pos x */
65      unsigned int src_y,           /* source pos y */
66      unsigned int dst_x,           /* dest pos x */
67      unsigned int dst_y,           /* dest pos y */
68      unsigned int dim_x,           /* frame width */
69      unsigned int dim_y            /* frame height */
70      );
71  #endif
72  
73  #ifdef VIDEO_HW_RECTFILL
74  void video_hw_rectfill (
75      unsigned int bpp,             /* bytes per pixel */
76      unsigned int dst_x,           /* dest pos x */
77      unsigned int dst_y,           /* dest pos y */
78      unsigned int dim_x,           /* frame width */
79      unsigned int dim_y,           /* frame height */
80      unsigned int color            /* fill color */
81       );
82  #endif
83  
84  void video_set_lut (
85      unsigned int index,           /* color number */
86      unsigned char r,              /* red */
87      unsigned char g,              /* green */
88      unsigned char b               /* blue */
89      );
90  
91  #endif /*_VIDEO_FB_H_ */
92