RE: V4L/DVB: cx231xx: Colibri carrier offset was wrong for PAL/M
Good catch. OK with the fix. Sri From: Devin Heitmueller [dheitmuel...@kernellabs.com] 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 On Sat, Oct 9, 2010 at 11:23 AM, Mauro Carvalho Chehab wrote: > 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." ** - -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: V4L/DVB: cx231xx: Colibri carrier offset was wrong for PAL/M
On Sat, Oct 9, 2010 at 11:23 AM, Mauro Carvalho Chehab wrote: > 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 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
V4L/DVB: cx231xx: Colibri carrier offset was wrong for PAL/M
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. Cc: sta...@kernel.org Signed-off-by: Mauro Carvalho Chehab diff --git a/drivers/media/video/cx231xx/cx231xx-avcore.c b/drivers/media/video/cx231xx/cx231xx-avcore.c index 0903773..d52955c 100644 --- a/drivers/media/video/cx231xx/cx231xx-avcore.c +++ b/drivers/media/video/cx231xx/cx231xx-avcore.c @@ -1540,7 +1540,7 @@ u32 cx231xx_Get_Colibri_CarrierOffset(u32 mode, u32 standerd) if (mode == TUNER_MODE_FM_RADIO) { colibri_carrier_offset = 110; - } 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 = 270; /*2.70MHz */ -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html