From: James S. <jsi...@us...> - 2001-11-06 21:56:08
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video In directory usw-pr-cvs1:/tmp/cvs-serv8141/drivers/video Modified Files: sa1100fb.c sa1100fb.h Log Message: Serial updates. Better locking. Index: sa1100fb.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/sa1100fb.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- sa1100fb.c 2001/10/29 00:11:00 1.17 +++ sa1100fb.c 2001/11/06 21:56:05 1.18 @@ -1,79 +1,99 @@ /* - * linux/drivers/video/sa1100fb.c -- StrongARM 1100 LCD Controller Frame Buffer Device + * linux/drivers/video/sa1100fb.c * * Copyright (C) 1999 Eric A. Thomas * Based on acornfb.c Copyright (C) Russell King. - * + * * This file is subject to the terms and conditions of the GNU General Public - * License. See the file COPYING in the main directory of this archive - * for more details. [...2236 lines suppressed...] @@ -1931,8 +2369,9 @@ if (!options || !*options) return 0; - - while(this_opt = strsep(&options, ",")) { + + while (this_opt = strsep(&options, ",")) { + if (!strncmp(this_opt, "bpp:", 4)) current_par.max_bpp = simple_strtoul(this_opt + 4, NULL, 0); @@ -1963,3 +2402,6 @@ #endif return 0; } + +MODULE_DESCRIPTION("StrongARM-1100/1110 framebuffer driver"); +MODULE_LICENSE("GPL"); Index: sa1100fb.h =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/sa1100fb.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- sa1100fb.h 2001/06/28 23:45:24 1.3 +++ sa1100fb.h 2001/11/06 21:56:05 1.4 @@ -51,23 +51,25 @@ /* Shadows for LCD controller registers */ struct sa1100fb_lcd_reg { - Word lccr0; - Word lccr1; - Word lccr2; - Word lccr3; + unsigned long lccr0; + unsigned long lccr1; + unsigned long lccr2; + unsigned long lccr3; }; #define RGB_8 (0) #define RGB_16 (1) #define NR_RGB 2 -struct sa1100_par { - struct sa1100fb_rgb rgb[NR_RGB]; +struct sa1100fb_info { + struct fb_info fb; + signed int currcon; + + struct sa1100fb_rgb *rgb[NR_RGB]; u_int max_bpp; u_int max_xres; u_int max_yres; - u_int bpp; /* * These are the addresses we mapped @@ -92,18 +94,20 @@ cmap_static:1, unused:30; - u_int reg_lccr0; - u_int reg_lccr1; - u_int reg_lccr2; - u_int reg_lccr3; - - int pcd; + u_int reg_lccr0; + u_int reg_lccr1; + u_int reg_lccr2; + u_int reg_lccr3; volatile u_char state; volatile u_char task_state; struct semaphore ctrlr_sem; wait_queue_head_t ctrlr_wait; struct tq_struct task; + +#ifdef CONFIG_PM + struct pm_dev *pm; +#endif #ifdef CONFIG_CPU_FREQ struct notifier_block clockchg; #endif @@ -111,7 +115,7 @@ #define __type_entry(ptr,type,member) ((type *)((char *)(ptr)-offsetof(type,member))) -#define TO_INF(ptr,member) __type_entry(ptr,struct sa1100_par,member) +#define TO_INF(ptr,member) __type_entry(ptr,struct sa1100fb_info,member) #define SA1100_PALETTE_MODE_VAL(bpp) (((bpp) & 0x018) << 9) |