patch-2.1.132 linux/drivers/video/controlfb.h

Next file: linux/drivers/video/creatorfb.c
Previous file: linux/drivers/video/controlfb.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.131/linux/drivers/video/controlfb.h linux/drivers/video/controlfb.h
@@ -73,6 +73,28 @@
 	struct preg res[6];
 };
 
+struct control_regints {
+	/* Vertical parameters are in units of 1/2 scan line */
+	unsigned vswin;	/* between vsblank and vssync */
+	unsigned vsblank;	/* vert start blank */
+	unsigned veblank;	/* vert end blank (display start) */
+	unsigned vewin;	/* between vesync and veblank */
+	unsigned vesync;	/* vert end sync */
+	unsigned vssync;	/* vert start sync */
+	unsigned vperiod;	/* vert period */
+	unsigned reg8;
+	/* Horizontal params are in units of 2 pixels */
+	/* Except, apparently, for hres > 1024 (or == 1280?) */
+	unsigned hperiod;	/* horiz period - 2 */
+	unsigned hsblank;	/* horiz start blank */
+	unsigned heblank;	/* horiz end blank */
+	unsigned hesync;	/* horiz end sync */
+	unsigned hssync;	/* horiz start sync */
+	unsigned rege;
+	unsigned regf;
+	unsigned reg10;
+};
+	
 /*
  * Register initialization tables for the control display.
  *
@@ -81,9 +103,10 @@
  *
  * The values for vertical frequency (V) in the comments below
  * are the values measured using the modes under MacOS.
+ *
+ * Pitch is always the same as bytes per line (for these video modes at least).
  */
 struct control_regvals {
-	int	pitch[3];		/* bytes/line, indexed by color_mode */
 	int	offset[3];		/* first pixel address */
 	unsigned regs[16];		/* for vswin .. reg10 */
 	unsigned char mode[3];		/* indexed by color_mode */
@@ -95,7 +118,6 @@
 
 /* Register values for 1280x1024, 75Hz mode (20) */
 static struct control_regvals control_reg_init_20 = {
-	{ 1280, 2560, 0 },
 	{ 0x10, 0x20, 0 },
 	{ 2129, 2128, 80, 42, 4, 2130, 2132, 88,
 	  420, 411, 91, 35, 421, 18, 211, 386, },
@@ -107,7 +129,6 @@
 
 /* Register values for 1280x960, 75Hz mode (19) */
 static struct control_regvals control_reg_init_19 = {
-	{ 1280, 2560, 0 },
 	{ 0x10, 0x20, 0 },
 	{ 1997, 1996, 76, 40, 4, 1998, 2000, 86,
 	  418, 409, 89, 35, 419, 18, 210, 384, },
@@ -119,7 +140,6 @@
 
 /* Register values for 1152x870, 75Hz mode (18) */
 static struct control_regvals control_reg_init_18 = {
-	{ 1152, 2304, 4608 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1825, 1822, 82, 43, 4, 1828, 1830, 120,
 	  726, 705, 129, 63, 727, 32, 364, 664 },
@@ -131,7 +151,6 @@
 
 /* Register values for 1024x768, 75Hz mode (17) */
 static struct control_regvals control_reg_init_17 = {
-	{ 1024, 2048, 4096 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1603, 1600, 64, 34, 4, 1606, 1608, 120,
 	  662, 641, 129, 47, 663, 24, 332, 616 },
@@ -141,9 +160,8 @@
 	1024, 768
 };
 
-/* Register values for 1024x768, 72Hz mode (16 (15?)) */
-static struct control_regvals control_reg_init_16 = {
-	{ 1024, 2048, 4096 },
+/* Register values for 1024x768, 72Hz mode 16 (15?) */
+static struct control_regvals control_reg_init_15 = {
 	{ 0x10, 0x28, 0x50 },
 	{ 1607, 1604, 68, 39, 10, 1610, 1612, 132,
 	  670, 653, 141, 67, 671, 34, 336, 604, },
@@ -155,7 +173,6 @@
 
 /* Register values for 1024x768, 60Hz mode (14) */
 static struct control_regvals control_reg_init_14 = {
-	{ 1024, 2048, 4096 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1607, 1604, 68, 39, 10, 1610, 1612, 132,
 	  670, 653, 141, 67, 671, 34, 336, 604, },
@@ -167,7 +184,6 @@
 
 /* Register values for 832x624, 75Hz mode (13) */
 static struct control_regvals control_reg_init_13 = {
-	{ 832, 1664, 3328 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1331, 1330, 82, 43, 4, 1332, 1334, 128,
 	  574, 553, 137, 31, 575, 16, 288, 544 },
@@ -178,7 +194,6 @@
 
 /* Register values for 800x600, 75Hz mode (12) */
 static struct control_regvals control_reg_init_12 = {
-	{ 800, 1600, 3200 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1247, 1246, 46, 25, 4, 1248, 1250, 104,
 	  526, 513, 113, 39, 527, 20, 264, 488, },
@@ -189,7 +204,6 @@
 
 /* Register values for 800x600, 72Hz mode (11) */
 static struct control_regvals control_reg_init_11 = {
-	{ 800, 1600, 3200 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1293, 1256, 56, 33, 10, 1330, 1332, 76,
 	  518, 485, 85, 59, 519, 30, 260, 460, },
@@ -200,7 +214,6 @@
 
 /* Register values for 800x600, 60Hz mode (10) */
 static struct control_regvals control_reg_init_10 = {
-	{ 800, 1600, 3200 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1293, 1256, 56, 33, 10, 1330, 1332, 76,
 	  518, 485, 85, 59, 519, 30, 260, 460, },
@@ -211,7 +224,6 @@
 
 /* Register values for 640x870, 75Hz Full Page Display (7) */
 static struct control_regvals control_reg_init_7 = {
-        { 640, 1280, 2560 },
 	{ 0x10, 0x30, 0x68 },
 	{ 0x727, 0x724, 0x58, 0x2e, 0x4, 0x72a, 0x72c, 0x40,
 	  0x19e, 0x18c, 0x4c, 0x27, 0x19f, 0x14, 0xd0, 0x178 },
@@ -222,7 +234,6 @@
 
 /* Register values for 640x480, 67Hz mode (6) */
 static struct control_regvals control_reg_init_6 = {
-	{ 640, 1280, 2560 },
 	{ 0, 8, 0x10 },
 	{ 1045, 1042, 82, 43, 4, 1048, 1050, 72,
 	  430, 393, 73, 31, 431, 16, 216, 400 },
@@ -233,7 +244,6 @@
 
 /* Register values for 640x480, 60Hz mode (5) */
 static struct control_regvals control_reg_init_5 = {
-	{ 640, 1280, 2560 },
 	{ 0x10, 0x28, 0x50 },
 	{ 1037, 1026, 66, 34, 2, 1048, 1050, 56,
 	  398, 385, 65, 47, 399, 24, 200, 352, },
@@ -253,8 +263,8 @@
 	&control_reg_init_12,
 	&control_reg_init_13,
 	&control_reg_init_14,
-	&control_reg_init_16,
-	&control_reg_init_16,
+	&control_reg_init_15,
+	&control_reg_init_15,
 	&control_reg_init_17,
 	&control_reg_init_18,
 	&control_reg_init_19,

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov