19e6720fbSRussell King /* 29e6720fbSRussell King * StrongARM 1100 LCD Controller Frame Buffer Device 39e6720fbSRussell King * 49e6720fbSRussell King * Copyright (C) 1999 Eric A. Thomas 59e6720fbSRussell King * Based on acornfb.c Copyright (C) Russell King. 69e6720fbSRussell King * 79e6720fbSRussell King * This file is subject to the terms and conditions of the GNU General Public 89e6720fbSRussell King * License. See the file COPYING in the main directory of this archive 99e6720fbSRussell King * for more details. 109e6720fbSRussell King */ 119e6720fbSRussell King #ifndef _VIDEO_SA1100FB_H 129e6720fbSRussell King #define _VIDEO_SA1100FB_H 139e6720fbSRussell King 149e6720fbSRussell King #include <linux/fb.h> 159e6720fbSRussell King #include <linux/types.h> 169e6720fbSRussell King 179e6720fbSRussell King #define RGB_4 0 189e6720fbSRussell King #define RGB_8 1 199e6720fbSRussell King #define RGB_16 2 209e6720fbSRussell King #define NR_RGB 3 219e6720fbSRussell King 229e6720fbSRussell King /* These are the bitfields for each display depth that we support. */ 239e6720fbSRussell King struct sa1100fb_rgb { 249e6720fbSRussell King struct fb_bitfield red; 259e6720fbSRussell King struct fb_bitfield green; 269e6720fbSRussell King struct fb_bitfield blue; 279e6720fbSRussell King struct fb_bitfield transp; 289e6720fbSRussell King }; 299e6720fbSRussell King 309e6720fbSRussell King /* This structure describes the machine which we are running on. */ 319e6720fbSRussell King struct sa1100fb_mach_info { 329e6720fbSRussell King u_long pixclock; 339e6720fbSRussell King 349e6720fbSRussell King u_short xres; 359e6720fbSRussell King u_short yres; 369e6720fbSRussell King 379e6720fbSRussell King u_char bpp; 389e6720fbSRussell King u_char hsync_len; 399e6720fbSRussell King u_char left_margin; 409e6720fbSRussell King u_char right_margin; 419e6720fbSRussell King 429e6720fbSRussell King u_char vsync_len; 439e6720fbSRussell King u_char upper_margin; 449e6720fbSRussell King u_char lower_margin; 459e6720fbSRussell King u_char sync; 469e6720fbSRussell King 479e6720fbSRussell King u_int cmap_greyscale:1, 489e6720fbSRussell King cmap_inverse:1, 499e6720fbSRussell King cmap_static:1, 509e6720fbSRussell King unused:29; 519e6720fbSRussell King 529e6720fbSRussell King u_int lccr0; 539e6720fbSRussell King u_int lccr3; 549e6720fbSRussell King 559e6720fbSRussell King /* Overrides for the default RGB maps */ 569e6720fbSRussell King const struct sa1100fb_rgb *rgb[NR_RGB]; 57*086ada54SRussell King 58*086ada54SRussell King void (*backlight_power)(int); 59*086ada54SRussell King void (*lcd_power)(int); 60*086ada54SRussell King void (*set_visual)(u32); 619e6720fbSRussell King }; 629e6720fbSRussell King 639e6720fbSRussell King #endif 64