Skip to contentSkip to conversation

fix black/white-only svideo input in vpx3220 decoder

PATCH New Ronald S. Bultje 1 participant 1 message Oct 15, 2005 Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fix black/white-only svideo input in vpx3220 decoder

Hi,

attached patch fixes the fact that the svideo input will only give input in black/white in some circumstances. Reason is that in the PCI controller driver (zr36067), after setting input, we reset norm, which overwrites the input register with the default. This patch makes it always set the correct value for the input when changing norm.

Patch is against 2.6.13.4 because I couldn't find a pre-made 2.6.14-current tarball to generate the patch against. Shouldn't matter still, since the vpx3220 driver didn't change much in between, afaik.

Cheers,
Ronald

drivers/media/video/vpx3220.c renamed from drivers/media/video/vpx3220-old.c +10 -0
@@ -410,6 +410,12 @@
 	case DECODER_SET_NORM:
 	{
 		int *iarg = arg, data;
+		int temp_input;
+
+		/* Here we back up the input selection because it gets
+		   overwritten when we fill the registers with the
+                   choosen video norm */		
+		temp_input = vpx3220_fp_read(client, 0xf2);
 
 		dprintk(1, KERN_DEBUG "%s: DECODER_SET_NORM %d\n",
 			I2C_NAME(client), *iarg);
@@ -449,6 +455,10 @@
 
 		}
 		decoder->norm = *iarg;
+
+		/* And here we set the backed up video input again */
+		vpx3220_fp_write(client, 0xf2, temp_input | 0x0010);
+		udelay(10);
 	}
 		break;