Skip to contentSkip to conversation

V4L/DVB: cx231xx: Colibri carrier offset was wrong for PAL/M

PATCH Mauro Carvalho Chehab 3 participants 3 messages Oct 9, 2010 Media (V4L/DVB)

lore
Share & tools
lore
#0 lore raw

cx231xx: Colibri carrier offset was wrong for PAL/M

The carrier offset check at cx231xx is incomplete. I got here one concrete case where it is broken: if PAL/M is used (and this is the default for Pixelview SBTVD), the routine will return zero, and the device will be programmed incorrectly, producing a bad image. A workaround were to change to NTSC and back to PAL/M, but the better is to just fix the code ;)

PS.: The checks there for other video standards are incomplete. the proper solution is to fix the routine in a way that it will always return the proper value for any valid V4L2_STD.

drivers/media/video/cx231xx/cx231xx-avcore.c +1 -1
index 0903773..d52955c 100644
@@ -1540,7 +1540,7 @@ u32 cx231xx_Get_Colibri_CarrierOffset(u32 mode, u32 standerd)
 
 	if (mode == TUNER_MODE_FM_RADIO) {
 		colibri_carrier_offset = 1100000;
-	} else if (standerd & (V4L2_STD_NTSC | V4L2_STD_NTSC_M_JP)) {
+	} else if (standerd & (V4L2_STD_MN | V4L2_STD_NTSC_M_JP)) {
 		colibri_carrier_offset = 4832000;  /*4.83MHz	*/
 	} else if (standerd & (V4L2_STD_PAL_B | V4L2_STD_PAL_G)) {
 		colibri_carrier_offset = 2700000;  /*2.70MHz       */
#1 lore raw
Quoted 7 lines · Mauro Carvalho Chehab

cx231xx: Colibri carrier offset was wrong for PAL/M

The carrier offset check at cx231xx is incomplete. I got here one concrete case where it is broken: if PAL/M is used (and this is the default for Pixelview SBTVD), the routine will return zero, and the device will be programmed incorrectly, producing a bad image. A workaround were to change to NTSC and back to PAL/M, but the better is to just fix the code ;)

Thanks for spotting this. I've been focusing entirely on NTSC, so any such fixes for other standards are very welcome.

Devin

Signature · 2 lines
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com
#2 lore raw

Good catch. OK with the fix.

Sri
________________________________________
From: Devin Heitmueller [[email protected]]
Sent: Saturday, October 09, 2010 8:40 AM
To: Mauro Carvalho Chehab
Cc: linux-me >> Linux Media Mailing List; Sri Deevi
Subject: Re: V4L/DVB: cx231xx: Colibri carrier offset was wrong for PAL/M

Quoted 7 lines · Mauro Carvalho Chehab

cx231xx: Colibri carrier offset was wrong for PAL/M

The carrier offset check at cx231xx is incomplete. I got here one concrete case where it is broken: if PAL/M is used (and this is the default for Pixelview SBTVD), the routine will return zero, and the device will be programmed incorrectly, producing a bad image. A workaround were to change to NTSC and back to PAL/M, but the better is to just fix the code ;)

Thanks for spotting this. I've been focusing entirely on NTSC, so any such fixes for other standards are very welcome.

Devin

--
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com

Conexant E-mail Firewall (Conexant.Com) made the following annotations
---------------------------------------------------------------------
********************** Legal Disclaimer ****************************

"This email may contain confidential and privileged material for the sole use of the intended recipient. Any unauthorized review, use or distribution by others is strictly prohibited. If you have received the message in error, please advise the sender by reply email and delete the message. Thank you."

**********************************************************************

---------------------------------------------------------------------