Chris Kennedy wrote:

> #0.3.3e: http://www.ivtv.tv/releases/ivtv-0.3/

Chris-
Don't know if you're interested in this, but just in case, here's a
patch that converts all your cx25840_read_0X (or write) functions to
cx25840_read (or write) calls.
-- 
Tyler Trafford
diff -Nur ivtv-0.3.3e/driver/cx25840-driver.c ivtv-0.3.3e-tt/driver/cx25840-driver.c
--- ivtv-0.3.3e/driver/cx25840-driver.c	2005-04-19 14:30:48.000000000 -0400
+++ ivtv-0.3.3e-tt/driver/cx25840-driver.c	2005-04-19 15:32:09.000000000 -0400
@@ -158,56 +158,6 @@
 	-1, -1, -1
 };
 
-static inline int cx25840_write_01(struct i2c_client *client, u8 reg, u8 value)
-{
-        unsigned char buffer[3];
-
-        buffer[0] = 0x01;
-        buffer[1] = reg;
-        buffer[2] = value;
-
-        return i2c_master_send(client, buffer, 3);
-}
-
-static inline int cx25840_read_01(struct i2c_client *client, u8 reg)
-{
-        unsigned char buffer[2];
-        unsigned char byte;
-
-        buffer[0] = 0x01;
-        buffer[1] = reg;
-
-        i2c_master_send(client, buffer, 2);
-
-        i2c_master_recv(client, &byte, 1);
-        return byte;
-}
-
-static inline int cx25840_write_04(struct i2c_client *client, u8 reg, u8 value)
-{
-        unsigned char buffer[3];
-
-        buffer[0] = 0x04;
-        buffer[1] = reg;
-        buffer[2] = value;
-
-        return i2c_master_send(client, buffer, 3);
-}
-
-static inline int cx25840_read_04(struct i2c_client *client, u8 reg)
-{
-        unsigned char buffer[2];
-        unsigned char byte;
-
-        buffer[0] = 0x04;
-        buffer[1] = reg;
-
-        i2c_master_send(client, buffer, 2);
-
-        i2c_master_recv(client, &byte, 1);
-        return byte;
-}
-
 /* ----------------------------------------------------------------------- */
 
 static inline int execute_wi2c(struct i2c_client *client, int addr, u8 * b,
@@ -779,10 +729,10 @@
 
 static void vbi_reg_setup(struct i2c_client *client)
 {
-        cx25840_write_04(client, 0x74, 0x24);
-        cx25840_write_04(client, 0x75, 0x40);
-        cx25840_write_04(client, 0x76, 0x24);
-        cx25840_write_04(client, 0x77, 0x28);
+        cx25840_write(client, 0x0474, 0x24);
+        cx25840_write(client, 0x0475, 0x40);
+        cx25840_write(client, 0x0476, 0x24);
+        cx25840_write(client, 0x0477, 0x28);
 
 	return;
 } 
@@ -802,14 +752,14 @@
         {
                 struct cx25840_reg_raw *reg = arg;
 
-                reg->val = cx25840_read_04(client, reg->reg);
+                reg->val = cx25840_read(client, 0x0400 | reg->reg);
                 break;
         }
         case DECODER_SET_REG:
         {
                 struct cx25840_reg_raw *reg = arg;
 
-                cx25840_write_04(client, reg->reg, reg->val);
+                cx25840_write(client, 0x0400 | reg->reg, reg->val);
                 break;
         }
 
@@ -1121,10 +1071,10 @@
                         state->enable = enable;
 
                         if (state->enable) {
-                                cx25840_write_04(client, 0x15, 
-					(cx25840_read_04(client, 0x15)|0x04));
-                                cx25840_write_04(client, 0x16,
-					(cx25840_read_04(client, 0x16)|0x04));
+                                cx25840_write(client, 0x0415, 
+					(cx25840_read(client, 0x0415)|0x04));
+                                cx25840_write(client, 0x0416,
+					(cx25840_read(client, 0x0416)|0x04));
 				if (no_black_magic == 0) {
 					// 01063 time 3:37.684
 					WI2C(4, 0x43, 0x00, 0x16, 0x70, 0x4a);
@@ -1146,10 +1096,10 @@
                 		CX25840_SET_VD_SOFT_RST(0x0001);      
 				// Video assert
 #endif
-                                cx25840_write_04(client, 0x15,
-					(cx25840_read_04(client, 0x15)&0xfb));
-                                cx25840_write_04(client, 0x16,
-					(cx25840_read_04(client, 0x16)&0xfb));
+                                cx25840_write(client, 0x0415,
+					(cx25840_read(client, 0x0415)&0xfb));
+                                cx25840_write(client, 0x0416,
+					(cx25840_read(client, 0x0416)&0xfb));
                         }
                 }
                 break;
@@ -1177,13 +1127,13 @@
 		int *iarg = arg;
 		u8 status = 0, cc1 = 0, cc2 = 0;
 
-		status = cx25840_read_04(client, 0x44);	
+		status = cx25840_read(client, 0x0444);	
 		if (!(status & 0x08) || !(status & 0x80)) {
 			*iarg = -1;
 			break;
 		}
-		cc1 = cx25840_read_04(client, 0x45);	
-		cc2 = cx25840_read_04(client, 0x45);	
+		cc1 = cx25840_read(client, 0x0445);	
+		cc2 = cx25840_read(client, 0x0445);	
 		*iarg = cc2 << 8 | cc1;
 		break;
 	}
@@ -1193,13 +1143,13 @@
 		int *iarg = arg;
 		u8 status = 0, cc1 = 0, cc2 = 0;
 
-		status = cx25840_read_04(client, 0x44);	
+		status = cx25840_read(client, 0x0444);	
 		if (status & 0x08 || !(status & 0x80)) {
 			*iarg = -1;
 			break;
 		}
-		cc1 = cx25840_read_04(client, 0x45);	
-		cc2 = cx25840_read_04(client, 0x45);	
+		cc1 = cx25840_read(client, 0x0445);	
+		cc2 = cx25840_read(client, 0x0445);	
 		*iarg = cc2 << 8 | cc1;
 		break;
 	}
@@ -1217,21 +1167,21 @@
 
 		/* Raw VBI */
 		if (set == 0) {
-			for (x = 0, i = 0x24; i <= 0x34; i++, x++) {
-				cx25840_write_04(client, i, 0x00);	
+			for (x = 0, i = 0x0424; i <= 0x0434; i++, x++) {
+				cx25840_write(client, i, 0x00);	
 			}
 			/* Setup VBI */
 			vbi_reg_setup(client);
 
 			/* VBI Offset */
-			cx25840_write_04(client, 0x7F, vbi_offset);	
+			cx25840_write(client, 0x047F, vbi_offset);	
 
-			cx25840_write_04(client, 0x04, 0x3e);
+			cx25840_write(client, 0x0404, 0x3e);
 			break;
 		}
 
 		/* Sliced VBI */
-		cx25840_write_04(client, 0x04, 0x3a);
+		cx25840_write(client, 0x0404, 0x3a);
 
 		/* Setup VBI */
 		vbi_reg_setup(client);
@@ -1272,10 +1222,10 @@
 				ERR("VPS not supported for NTSC");
 		}
 		/* VBI Offset */
-		cx25840_write_04(client, 0x7F, vbi_offset);	
+		cx25840_write(client, 0x047F, vbi_offset);	
 
-		for (x = 1, i = 0x24; i <= 0x34; i++, x++) {
-			cx25840_write_04(client, i, lcr[x]);	
+		for (x = 1, i = 0x0424; i <= 0x0434; i++, x++) {
+			cx25840_write(client, i, lcr[x]);	
 		}
 		break;
 	}

Reply via email to