Skip to contentSkip to conversation

cmipci - utilize ADC48K44K bit

PATCH Applied Timofei V. Bondarenko 2 participants 2 messages Nov 7, 2007

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 cmipci - utilize ADC48K44K bit

Hi.

Setting the ADC48K44K greatly improves capture quality at 48k sampling rate.

With this bit clear ADC does ZOH interpolation of every 22th sample at 48k.

At frequencies higher than 48k there ADC performs a little better with ADC48K44K bit set. At 44.1k ADC performs a little better with this bit clear.
At frequencies below 44.1k there is no difference.

Regards,
Tim.

alsa-kernel/pci/cmipci.c +7 -0
@@ -869,6 +869,13 @@ static int snd_cmipci_pcm_prepare(struct
 	snd_cmipci_write(cm, CM_REG_CHFORMAT, val);
 	//snd_printd("cmipci: chformat = %08x\n", val);
 
+	if (!rec->is_dac && cm->chip_version) {
+		if (runtime->rate > 44100)
+			snd_cmipci_set_bit(cm, CM_REG_EXT_MISC, CM_ADC48K44K);
+		else
+			snd_cmipci_clear_bit(cm, CM_REG_EXT_MISC, CM_ADC48K44K);
+	}
+
 	rec->running = 0;
 	spin_unlock_irq(&cm->reg_lock);
 

_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

Applied
#1 lore raw

At Wed, 07 Nov 2007 15:08:19 +0300,

Quoted 7 lines · Timofei V. Bondarenko

Hi.

Setting the ADC48K44K greatly improves capture quality at 48k sampling rate.

With this bit clear ADC does ZOH interpolation of every 22th sample at 48k.

Quoted 8 lines

At frequencies higher than 48k there ADC performs a little better with ADC48K44K bit set.
At 44.1k ADC performs a little better with this bit clear. At frequencies below 44.1k there is no difference.

Regards,
Tim.

Applied to HG tree. Thanks.

Takashi