[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-arm-kernel
Subject:    [PATCH] 2/7 pxafb-common-interrupt-masks.patch
From:       Ian Campbell <icampbell () arcom ! com>
Date:       2003-09-25 11:21:50
[Download RAW message or body]

Every board configuration was including the same list of interrupt masks
in LCCR0. This patch moves these to the generic code.
-- 
Ian Campbell, Senior Design Engineer

Arcom, Clifton Road, 			Direct: +44 (0)1223 403 465
Cambridge CB1 7EA, United Kingdom	Phone:  +44 (0)1223 411 200


________________________________________________________________________
This email has been scanned for all viruses by the MessageLabs Email
Security System. For more information on a proactive email security
service working around the clock, around the globe, visit
http://www.messagelabs.com
________________________________________________________________________
["pxafb-common-interrupt-masks.patch" (pxafb-common-interrupt-masks.patch)]

%description

Move the LCCR0 interrupt masks into the code rather than in the LCCR0
defn for each platform

%patch
Index: linux-2.4.19/drivers/video/pxafb.c
===================================================================
--- linux-2.4.19.orig/drivers/video/pxafb.c	Wed Sep 24 11:24:25 2003
+++ linux-2.4.19/drivers/video/pxafb.c	Wed Sep 24 11:54:27 2003
@@ -711,7 +711,9 @@
 #endif
 
 #if defined (CONFIG_PXA_CERF_PDA)
-	new_regs.lccr0 = fbi->lccr0;
+	new_regs.lccr0 = fbi->lccr0 |
+		(LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | LCCR0_EFM |
+		 LCCR0_QDM | LCCR0_BM  | LCCR0_OUM);
 	new_regs.lccr1 =
 		LCCR1_DisWdth(var->xres) +
 		LCCR1_HorSnchWdth(var->hsync_len) +
@@ -729,7 +731,9 @@
 		(var->sync & FB_SYNC_HOR_HIGH_ACT ? LCCR3_HorSnchH : LCCR3_HorSnchL) |
 		(var->sync & FB_SYNC_VERT_HIGH_ACT ? LCCR3_VrtSnchH : LCCR3_VrtSnchL);
 #elif defined (CONFIG_FB_PXA_QVGA)
-	new_regs.lccr0 = fbi->lccr0;
+	new_regs.lccr0 = fbi->lccr0 |
+		(LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | LCCR0_EFM |
+		 LCCR0_QDM | LCCR0_BM  | LCCR0_OUM);
 	new_regs.lccr1 =
 		LCCR1_DisWdth(var->xres) +
 		LCCR1_HorSnchWdth(var->hsync_len) +
@@ -743,10 +747,9 @@
 	new_regs.lccr3 = fbi->lccr3;
 #else
 	// FIXME using hardcoded values for now
-	new_regs.lccr0 = fbi->lccr0;
-//		|
-//		LCCR0_LEN | LCCR0_LDM | LCCR0_BAM |
-//		LCCR0_ERM | LCCR0_LtlEnd | LCCR0_DMADel(0);
+	new_regs.lccr0 = fbi->lccr0 |
+		(LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | LCCR0_EFM |
+		 LCCR0_QDM | LCCR0_BM  | LCCR0_OUM);
 
 	new_regs.lccr1 = 0x3030A7F;
 //		LCCR1_DisWdth(var->xres) +
Index: linux-2.4.19/drivers/video/pxafb.h
===================================================================
--- linux-2.4.19.orig/drivers/video/pxafb.h	Wed Sep 24 11:39:08 2003
+++ linux-2.4.19/drivers/video/pxafb.h	Wed Sep 24 11:55:48 2003
@@ -189,8 +189,8 @@
 #define LCD_END_OF_LINE_WAIT_COUNT	1
 #define LCD_END_OF_FRAME_WAIT_COUNT	1
 #define LCD_SYNC			(FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT)
-#define LCD_LCCR0			(LCCR0_Color | LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | LCCR0_EFM | \
                LCCR0_Act | LCCR0_QDM | LCCR0_BM | LCCR_OUM ) /* 0x003008F8 */
-#define LCD_LCCR3 			( (LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_PixFlEdg | LCCR3_Acb(0xFF) \
| 0x0C ) /* 0x0040FF0C */ +#define LCD_LCCR0			( LCCR0_Color | LCCR0_Act )
+#define LCD_LCCR3 			( (LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_PixFlEdg | LCCR3_Acb(0xFF) \
| 0x0C )  #else
 #define LCD_XRES			640
 #define LCD_YRES			480
@@ -201,8 +201,8 @@
 #define LCD_END_OF_LINE_WAIT_COUNT	3
 #define LCD_END_OF_FRAME_WAIT_COUNT	0
 #define LCD_SYNC			(FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT)
-#define LCD_LCCR0			(LCCR0_Color | LCCR0_Dual | LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | \
                LCCR0_EFM | LCCR0_Pas | LCCR0_QDM | LCCR0_BM | LCCR_OUM ) /* \
                0x0030087C */
-#define LCD_LCCR3 			( (LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_PixFlEdg | LCCR3_Acb(0xFF) \
| 0x0C ) /* 0x0040FF0C */ +#define LCD_LCCR0			(LCCR0_Color | LCCR0_Dual | LCCR0_Pas \
) +#define LCD_LCCR3 			( (LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_PixFlEdg | \
LCCR3_Acb(0xFF) | 0x0C )  #endif
 
 #elif defined (CONFIG_ARCH_PXA_IDP)
@@ -217,8 +217,8 @@
 #define LCD_END_OF_LINE_WAIT_COUNT	3
 #define LCD_END_OF_FRAME_WAIT_COUNT	0
 #define LCD_SYNC			(FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT)
-#define LCD_LCCR0			(LCCR0_Color | LCCR0_Dual | LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | \
                LCCR0_EFM | LCCR0_Pas | LCCR0_QDM | LCCR0_BM | LCCR_OUM ) /* \
                0x0030087C */
-#define LCD_LCCR3 			( (LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_PixFlEdg | LCCR3_Acb(0xFF) \
| 0x0C ) /* 0x0040FF0C */ +#define LCD_LCCR0			( LCCR0_Color | LCCR0_Dual | LCCR0_Pas \
) +#define LCD_LCCR3 			( (LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_PixFlEdg | \
LCCR3_Acb(0xFF) | 0x0C )  
 #elif defined CONFIG_PXA_CERF_PDA
 #define LCD_PIXCLOCK			171521
@@ -232,7 +232,7 @@
 #define LCD_END_OF_LINE_WAIT_COUNT	17
 #define LCD_END_OF_FRAME_WAIT_COUNT	0
 #define LCD_SYNC			(FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT)
-#define LCD_LCCR0			(LCCR0_Color | LCCR0_LDM | LCCR0_SFM | LCCR0_IUM | LCCR0_EFM | \
LCCR0_Pas | LCCR0_QDM | LCCR0_BM  | LCCR0_OUM) +#define LCD_LCCR0			( LCCR0_Color | \
LCCR0_Pas )  #define LCD_LCCR3 			(LCCR3_PixFlEdg | LCCR3_PixClkDiv(0x12) | \
LCCR3_Bpp(PXAFB_BPP_BITS) | LCCR3_Acb(0x18))  
 #endif

%diffstat
 pxafb.c |   15 +++++++++------
 pxafb.h |   14 +++++++-------
 2 files changed, 16 insertions(+), 13 deletions(-)



-------------------------------------------------------------------
Subscription options: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ/Etiquette:       http://www.arm.linux.org.uk/armlinux/mailinglists.php



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic