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