V4L/DVB (7158): Fix em28xx audio initialization
AC97 register initialization seem to always be needed. This patch fixes audio for Prolink/Pixelview USB2 board. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
1685a6fed2
commit
7463dda2ae
@ -393,15 +393,15 @@ struct em28xx_board em28xx_boards[] = {
|
||||
.input = { {
|
||||
.type = EM28XX_VMUX_TELEVISION,
|
||||
.vmux = SAA7115_COMPOSITE2,
|
||||
.amux = 1,
|
||||
.amux = EM28XX_AMUX_LINE_IN,
|
||||
}, {
|
||||
.type = EM28XX_VMUX_COMPOSITE1,
|
||||
.vmux = SAA7115_COMPOSITE0,
|
||||
.amux = 1,
|
||||
.amux = EM28XX_AMUX_LINE_IN,
|
||||
}, {
|
||||
.type = EM28XX_VMUX_SVIDEO,
|
||||
.vmux = SAA7115_SVIDEO3,
|
||||
.amux = 1,
|
||||
.amux = EM28XX_AMUX_LINE_IN,
|
||||
} },
|
||||
},
|
||||
};
|
||||
|
@ -274,7 +274,6 @@ int em28xx_set_audio_source(struct em28xx *dev)
|
||||
static char *disable = "\x08\x88";
|
||||
char *video = enable, *line = disable;
|
||||
int ret;
|
||||
int no_ac97 = 0;
|
||||
u8 input;
|
||||
|
||||
if (dev->is_em2800) {
|
||||
@ -294,11 +293,9 @@ int em28xx_set_audio_source(struct em28xx *dev)
|
||||
switch (dev->ctl_ainput) {
|
||||
case EM28XX_AMUX_VIDEO:
|
||||
input = EM28XX_AUDIO_SRC_TUNER;
|
||||
no_ac97 = 1;
|
||||
break;
|
||||
case EM28XX_AMUX_LINE_IN:
|
||||
input = EM28XX_AUDIO_SRC_LINE;
|
||||
no_ac97 = 1;
|
||||
break;
|
||||
case EM28XX_AMUX_AC97_VIDEO:
|
||||
input = EM28XX_AUDIO_SRC_LINE;
|
||||
@ -315,11 +312,9 @@ int em28xx_set_audio_source(struct em28xx *dev)
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
if (no_ac97)
|
||||
return 0;
|
||||
|
||||
/* Sets AC97 mixer registers */
|
||||
|
||||
/* Sets AC97 mixer registers
|
||||
This is seems to be needed, even for non-ac97 configs
|
||||
*/
|
||||
ret = em28xx_write_ac97(dev, VIDEO_AC97, video);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user