[wellylug] SAA7134

David Antliff dave.antliff at paradise.net.nz
Mon May 3 20:59:44 NZST 2004


On Sun, 2 May 2004, Ewen McNeill wrote:
> In case anyone's interested, the patch I've sent is enclosed below.
> To use, simply apply the patch, recompile the module, and then
> insmod/mopdprobe it with audio_carrier=5500.  If you set audio_debug=1
> as well, you'll see messages about it skiping the audio scan.

Hi Ewen,

I took a closer look at your patch - it seems the version of the saa7134
driver in Linux 2.6.5 is already doing something very similar:


	if (0 != carrier && max1 > 2000 && max1 > max2*3) {
		/* found good carrier */
		printk("found %s main sound carrier @ %d.%03d MHz [%d/%d]\n",
			dev->tvnorm->name, carrier/1000,
			carrier%1000,max1, max2);
		dev->last_carrier = carrier;
	} else if (0 != audio_carrier) {
		/* no carrier -- try insmod option as fallback */
		carrier = audio_carrier;
		printk(KERN_WARNING "%s/audio: audio carrier scan failed, "
		       "using %d.%03d MHz [insmod option]\n",
		       dev->name, carrier/1000, carrier%1000);
	} else if (0 != dev->last_carrier) {
		/* no carrier -- try last detected one as fallback */
		carrier = dev->last_carrier;
		printk(KERN_WARNING "%s/audio: audio carrier scan failed, "
		       "using %d.%03d MHz [last detected]\n",
		       dev->name, carrier/1000, carrier%1000);
	} else {
		/* no carrier + no fallback -- try first in list */
		carrier = carr_scan[0];
		printk(KERN_WARNING "%s/audio: audio carrier scan failed, "
		       "using %d.%03d MHz [default]\n",
		       dev->name, carrier/1000, carrier%1000);
	}
	tvaudio_setcarrier(dev,carrier,carrier);
	...


What version of the driver did you base your diff on please? Is it newer
or older than this?

So far 2.6.5 unmodified seems to work well with the insmod option, but
absence of observation does not make good proof...

Cheers,
David.




More information about the wellylug mailing list