X-Aliased: From amigo@jeddeloh.Informatik.Uni-Oldenburg.DE (Frank Neumann)
From: "Frank Neumann" <Frank.Neumann@Informatik.Uni-Oldenburg.DE>
Subject: L68K: Santa Claus was a bit absent..
To: linux-m68k@lists.linux-m68k.org
Date: Sat, 20 Dec 1997 20:22:43 +0100 (MET)
Sender: owner-linux-m68k@phil.uni-sb.de


..and has to hand in the first patch for clgen 1.2.

This fixes:
 - correct order of RGB for Picasso 4
 - removed leftover printk for Picasso II

Frank

PS: Expect the corrected patch for 2.0.33 sometime tomorrow..I hope.
--- cut here ---
--- clgen.c.orig	Sat Dec 20 17:27:16 1997
+++ clgen.c	Sat Dec 20 20:20:02 1997
@@ -954,12 +954,14 @@
 {
 	unsigned volatile char *reg = clboards[g_slotnum].VirtRegBase + 0x3c8;
 
-	if(clboards[g_slotnum].boardtype == BT_PICASSO)
+	if(clboards[g_slotnum].boardtype == BT_PICASSO ||
+		clboards[g_slotnum].boardtype == BT_PICASSO4)
 	{
 		/* address write mode register is not translated.. */
 		*reg = regnum;
 		/* but DAC data register IS. */
-		reg += 0xfff;
+		if(clboards[g_slotnum].boardtype == BT_PICASSO)
+			reg += 0xfff;
 		*(reg+1) = (red   >> 2);
 		*(reg+1) = (green >> 2);
 		*(reg+1) = (blue  >> 2);
@@ -978,10 +980,12 @@
 {
 	unsigned volatile char *reg = clboards[g_slotnum].VirtRegBase + 0x3c7;
 
-	if(clboards[g_slotnum].boardtype == BT_PICASSO)
+	if(clboards[g_slotnum].boardtype == BT_PICASSO ||
+		clboards[g_slotnum].boardtype == BT_PICASSO4)
 	{
-		reg += 0xfff;
 		*reg = regnum;
+		if(clboards[g_slotnum].boardtype == BT_PICASSO)
+			reg += 0xfff;
 		*red   = *(reg+2) << 2;
 		*green = *(reg+2) << 2;
 		*blue  = *(reg+2) << 2;
@@ -1905,7 +1909,6 @@
 			break;
 
 		case BT_PICASSO:
-			printk("Switching to Picasso display\n");
 			clboards[slotnum].SFR = 0xff;
 			WSFR(clboards[slotnum].SFR);
 			break;
