[ALSA] PCI modem drivers update
ATIIXP-modem driver,Intel8x0-modem driver,VIA82xx-modem driver Modem drivers (atiixp-modem, intel8x0m, via82xx-modem) migration for using MC97 generic modem mixer for off-hook operation. Signed-off-by: Sasha Khapyorsky <sashak@smlink.com> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
This commit is contained in:

zatwierdzone przez
Jaroslav Kysela

rodzic
87d61c290b
commit
83a5b72ad7
@@ -420,7 +420,10 @@ static void snd_via82xx_codec_write(ac97_t *ac97,
|
||||
{
|
||||
via82xx_t *chip = ac97->private_data;
|
||||
unsigned int xval;
|
||||
|
||||
if(reg == AC97_GPIO_STATUS) {
|
||||
outl(val, VIAREG(chip, GPI_STATUS));
|
||||
return;
|
||||
}
|
||||
xval = !ac97->num ? VIA_REG_AC97_CODEC_ID_PRIMARY : VIA_REG_AC97_CODEC_ID_SECONDARY;
|
||||
xval <<= VIA_REG_AC97_CODEC_ID_SHIFT;
|
||||
xval |= reg << VIA_REG_AC97_CMD_SHIFT;
|
||||
@@ -544,25 +547,6 @@ static int snd_via82xx_pcm_trigger(snd_pcm_substream_t * substream, int cmd)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int snd_via82xx_modem_pcm_trigger(snd_pcm_substream_t * substream, int cmd)
|
||||
{
|
||||
via82xx_t *chip = snd_pcm_substream_chip(substream);
|
||||
unsigned int val = 0;
|
||||
switch (cmd) {
|
||||
case SNDRV_PCM_TRIGGER_START:
|
||||
val = snd_ac97_read(chip->ac97, AC97_GPIO_STATUS);
|
||||
outl(val|AC97_GPIO_LINE1_OH, VIAREG(chip, GPI_STATUS));
|
||||
break;
|
||||
case SNDRV_PCM_TRIGGER_STOP:
|
||||
val = snd_ac97_read(chip->ac97, AC97_GPIO_STATUS);
|
||||
outl(val&~AC97_GPIO_LINE1_OH, VIAREG(chip, GPI_STATUS));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return snd_via82xx_pcm_trigger(substream, cmd);
|
||||
}
|
||||
|
||||
/*
|
||||
* pointer callbacks
|
||||
*/
|
||||
@@ -806,7 +790,7 @@ static snd_pcm_ops_t snd_via686_playback_ops = {
|
||||
.hw_params = snd_via82xx_hw_params,
|
||||
.hw_free = snd_via82xx_hw_free,
|
||||
.prepare = snd_via82xx_pcm_prepare,
|
||||
.trigger = snd_via82xx_modem_pcm_trigger,
|
||||
.trigger = snd_via82xx_pcm_trigger,
|
||||
.pointer = snd_via686_pcm_pointer,
|
||||
.page = snd_pcm_sgbuf_ops_page,
|
||||
};
|
||||
@@ -819,7 +803,7 @@ static snd_pcm_ops_t snd_via686_capture_ops = {
|
||||
.hw_params = snd_via82xx_hw_params,
|
||||
.hw_free = snd_via82xx_hw_free,
|
||||
.prepare = snd_via82xx_pcm_prepare,
|
||||
.trigger = snd_via82xx_modem_pcm_trigger,
|
||||
.trigger = snd_via82xx_pcm_trigger,
|
||||
.pointer = snd_via686_pcm_pointer,
|
||||
.page = snd_pcm_sgbuf_ops_page,
|
||||
};
|
||||
|
Reference in New Issue
Block a user