Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * StrongARM 1100 LCD Controller Frame Buffer Device
0003  *
0004  * Copyright (C) 1999 Eric A. Thomas
0005  *  Based on acornfb.c Copyright (C) Russell King.
0006  *  
0007  * This file is subject to the terms and conditions of the GNU General Public
0008  * License.  See the file COPYING in the main directory of this archive
0009  * for more details.
0010  */
0011 #ifndef _VIDEO_SA1100FB_H
0012 #define _VIDEO_SA1100FB_H
0013 
0014 #include <linux/fb.h>
0015 #include <linux/types.h>
0016 
0017 #define RGB_4   0
0018 #define RGB_8   1
0019 #define RGB_16  2
0020 #define NR_RGB  3
0021 
0022 /* These are the bitfields for each display depth that we support. */
0023 struct sa1100fb_rgb {
0024     struct fb_bitfield  red;
0025     struct fb_bitfield  green;
0026     struct fb_bitfield  blue;
0027     struct fb_bitfield  transp;
0028 };
0029 
0030 /* This structure describes the machine which we are running on. */
0031 struct sa1100fb_mach_info {
0032     u_long      pixclock;
0033 
0034     u_short     xres;
0035     u_short     yres;
0036 
0037     u_char      bpp;
0038     u_char      hsync_len;
0039     u_char      left_margin;
0040     u_char      right_margin;
0041 
0042     u_char      vsync_len;
0043     u_char      upper_margin;
0044     u_char      lower_margin;
0045     u_char      sync;
0046 
0047     u_int       cmap_greyscale:1,
0048             cmap_inverse:1,
0049             cmap_static:1,
0050             unused:29;
0051 
0052     u_int       lccr0;
0053     u_int       lccr3;
0054 
0055     /* Overrides for the default RGB maps */
0056     const struct sa1100fb_rgb *rgb[NR_RGB];
0057 
0058     void (*backlight_power)(int);
0059     void (*lcd_power)(int);
0060     void (*set_visual)(u32);
0061 };
0062 
0063 #endif