Linux 2.6.22-rc3
[linux-2.6/next.git] / drivers / video / imxfb.h
blobe837a8b48eb833477fb38984bc2b1dfb75596059
1 /*
2 * linux/drivers/video/imxfb.h
4 * Freescale i.MX Frame Buffer device driver
6 * Copyright (C) 2004 S.Hauer, Pengutronix
8 * Copyright (C) 1999 Eric A. Thomas
9 * Based on acornfb.c Copyright (C) Russell King.
11 * This file is subject to the terms and conditions of the GNU General Public
12 * License. See the file COPYING in the main directory of this archive
13 * for more details.
17 * These are the bitfields for each
18 * display depth that we support.
20 struct imxfb_rgb {
21 struct fb_bitfield red;
22 struct fb_bitfield green;
23 struct fb_bitfield blue;
24 struct fb_bitfield transp;
27 #define RGB_16 (0)
28 #define RGB_8 (1)
29 #define NR_RGB 2
31 struct imxfb_info {
32 struct device *dev;
33 struct imxfb_rgb *rgb[NR_RGB];
35 u_int max_bpp;
36 u_int max_xres;
37 u_int max_yres;
40 * These are the addresses we mapped
41 * the framebuffer memory region to.
43 dma_addr_t map_dma;
44 u_char * map_cpu;
45 u_int map_size;
47 u_char * screen_cpu;
48 dma_addr_t screen_dma;
49 u_int palette_size;
51 dma_addr_t dbar1;
52 dma_addr_t dbar2;
54 u_int pcr;
55 u_int pwmr;
56 u_int lscr1;
57 u_int dmacr;
58 u_int cmap_inverse:1,
59 cmap_static:1,
60 unused:30;
62 void (*lcd_power)(int);
63 void (*backlight_power)(int);
66 #define IMX_NAME "IMX"
69 * Minimum X and Y resolutions
71 #define MIN_XRES 64
72 #define MIN_YRES 64