aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/usb/em28xx/em28xx-core.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/usb/em28xx/em28xx-core.c')
-rw-r--r--drivers/media/usb/em28xx/em28xx-core.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/drivers/media/usb/em28xx/em28xx-core.c b/drivers/media/usb/em28xx/em28xx-core.c
index cef3fd4d441c..b5f49703f7ce 100644
--- a/drivers/media/usb/em28xx/em28xx-core.c
+++ b/drivers/media/usb/em28xx/em28xx-core.c
@@ -517,17 +517,19 @@ int em28xx_audio_setup(struct em28xx *dev)
517 dev->has_alsa_audio = false; 517 dev->has_alsa_audio = false;
518 dev->audio_mode.has_audio = false; 518 dev->audio_mode.has_audio = false;
519 return 0; 519 return 0;
520 } else if ((cfg & EM28XX_CHIPCFG_AUDIOMASK) == 520 } else if ((cfg & EM28XX_CHIPCFG_AUDIOMASK) != EM28XX_CHIPCFG_AC97) {
521 EM28XX_CHIPCFG_I2S_3_SAMPRATES) { 521 if (dev->chip_id < CHIP_ID_EM2860 &&
522 em28xx_info("I2S Audio (3 sample rates)\n"); 522 (cfg & EM28XX_CHIPCFG_AUDIOMASK) ==
523 dev->audio_mode.i2s_3rates = 1; 523 EM2820_CHIPCFG_I2S_1_SAMPRATE)
524 } else if ((cfg & EM28XX_CHIPCFG_AUDIOMASK) == 524 dev->audio_mode.i2s_samplerates = 1;
525 EM28XX_CHIPCFG_I2S_5_SAMPRATES) { 525 else if (dev->chip_id >= CHIP_ID_EM2860 &&
526 em28xx_info("I2S Audio (5 sample rates)\n"); 526 (cfg & EM28XX_CHIPCFG_AUDIOMASK) ==
527 dev->audio_mode.i2s_5rates = 1; 527 EM2860_CHIPCFG_I2S_5_SAMPRATES)
528 } 528 dev->audio_mode.i2s_samplerates = 5;
529 529 else
530 if ((cfg & EM28XX_CHIPCFG_AUDIOMASK) != EM28XX_CHIPCFG_AC97) { 530 dev->audio_mode.i2s_samplerates = 3;
531 em28xx_info("I2S Audio (%d sample rate(s))\n",
532 dev->audio_mode.i2s_samplerates);
531 /* Skip the code that does AC97 vendor detection */ 533 /* Skip the code that does AC97 vendor detection */
532 dev->audio_mode.ac97 = EM28XX_NO_AC97; 534 dev->audio_mode.ac97 = EM28XX_NO_AC97;
533 goto init_audio; 535 goto init_audio;