Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.34-rc4 146 lines 2.8 kB view raw
1/* 2 * linux/drivers/video/sa1100fb.h 3 * -- StrongARM 1100 LCD Controller Frame Buffer Device 4 * 5 * Copyright (C) 1999 Eric A. Thomas 6 * Based on acornfb.c Copyright (C) Russell King. 7 * 8 * This file is subject to the terms and conditions of the GNU General Public 9 * License. See the file COPYING in the main directory of this archive 10 * for more details. 11 */ 12 13/* 14 * These are the bitfields for each 15 * display depth that we support. 16 */ 17struct sa1100fb_rgb { 18 struct fb_bitfield red; 19 struct fb_bitfield green; 20 struct fb_bitfield blue; 21 struct fb_bitfield transp; 22}; 23 24/* 25 * This structure describes the machine which we are running on. 26 */ 27struct sa1100fb_mach_info { 28 u_long pixclock; 29 30 u_short xres; 31 u_short yres; 32 33 u_char bpp; 34 u_char hsync_len; 35 u_char left_margin; 36 u_char right_margin; 37 38 u_char vsync_len; 39 u_char upper_margin; 40 u_char lower_margin; 41 u_char sync; 42 43 u_int cmap_greyscale:1, 44 cmap_inverse:1, 45 cmap_static:1, 46 unused:29; 47 48 u_int lccr0; 49 u_int lccr3; 50}; 51 52/* Shadows for LCD controller registers */ 53struct sa1100fb_lcd_reg { 54 unsigned long lccr0; 55 unsigned long lccr1; 56 unsigned long lccr2; 57 unsigned long lccr3; 58}; 59 60#define RGB_4 (0) 61#define RGB_8 (1) 62#define RGB_16 (2) 63#define NR_RGB 3 64 65struct sa1100fb_info { 66 struct fb_info fb; 67 struct device *dev; 68 struct sa1100fb_rgb *rgb[NR_RGB]; 69 70 u_int max_bpp; 71 u_int max_xres; 72 u_int max_yres; 73 74 /* 75 * These are the addresses we mapped 76 * the framebuffer memory region to. 77 */ 78 dma_addr_t map_dma; 79 u_char * map_cpu; 80 u_int map_size; 81 82 u_char * screen_cpu; 83 dma_addr_t screen_dma; 84 u16 * palette_cpu; 85 dma_addr_t palette_dma; 86 u_int palette_size; 87 88 dma_addr_t dbar1; 89 dma_addr_t dbar2; 90 91 u_int lccr0; 92 u_int lccr3; 93 u_int cmap_inverse:1, 94 cmap_static:1, 95 unused:30; 96 97 u_int reg_lccr0; 98 u_int reg_lccr1; 99 u_int reg_lccr2; 100 u_int reg_lccr3; 101 102 volatile u_char state; 103 volatile u_char task_state; 104 struct mutex ctrlr_lock; 105 wait_queue_head_t ctrlr_wait; 106 struct work_struct task; 107 108#ifdef CONFIG_CPU_FREQ 109 struct notifier_block freq_transition; 110 struct notifier_block freq_policy; 111#endif 112}; 113 114#define TO_INF(ptr,member) container_of(ptr,struct sa1100fb_info,member) 115 116#define SA1100_PALETTE_MODE_VAL(bpp) (((bpp) & 0x018) << 9) 117 118/* 119 * These are the actions for set_ctrlr_state 120 */ 121#define C_DISABLE (0) 122#define C_ENABLE (1) 123#define C_DISABLE_CLKCHANGE (2) 124#define C_ENABLE_CLKCHANGE (3) 125#define C_REENABLE (4) 126#define C_DISABLE_PM (5) 127#define C_ENABLE_PM (6) 128#define C_STARTUP (7) 129 130#define SA1100_NAME "SA1100" 131 132/* 133 * Debug macros 134 */ 135#if DEBUG 136# define DPRINTK(fmt, args...) printk("%s: " fmt, __func__ , ## args) 137#else 138# define DPRINTK(fmt, args...) 139#endif 140 141/* 142 * Minimum X and Y resolutions 143 */ 144#define MIN_XRES 64 145#define MIN_YRES 64 146