aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/em28xx/em28xx.h
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2008-11-20 07:06:09 -0500
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-12-29 14:53:35 -0500
commit5faff78904d9c07f38ac0e227b322e9f58d5447c (patch)
tree431d2e8c8fc7a17396e806f778293629226fc892 /drivers/media/video/em28xx/em28xx.h
parent16c7bcadff2222b297d13951dc30e133f56d0154 (diff)
V4L/DVB (9653): em28xx: improve AC97 handling
AC97 devices provide several input and outputs. However, before this patch, em28xx device weren't properly allowing the usage of ac97 possible combinations. Also, several input volumes were left untouched, instead of making sure that the volumes were set on mute state. This patch improves support for ac97 devices by allowing to use any inputs, and making sure that unused inputs are set on mute state. Yet, some work is still needed to select the AC97 output. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/em28xx/em28xx.h')
-rw-r--r--drivers/media/video/em28xx/em28xx.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/drivers/media/video/em28xx/em28xx.h b/drivers/media/video/em28xx/em28xx.h
index d965caba63e3..6d04ebf46e7c 100644
--- a/drivers/media/video/em28xx/em28xx.h
+++ b/drivers/media/video/em28xx/em28xx.h
@@ -274,9 +274,25 @@ struct em28xx_audio_mode {
274 unsigned int i2s_5rates:1; 274 unsigned int i2s_5rates:1;
275}; 275};
276 276
277/* em28xx has two audio inputs: tuner and line in.
278 However, on most devices, an auxiliary AC97 codec device is used.
279 The AC97 device may have several different inputs and outputs,
280 depending on their model. So, it is possible to use AC97 mixer to
281 address more than two different entries.
282 */
277enum em28xx_amux { 283enum em28xx_amux {
278 EM28XX_AMUX_VIDEO, 284 /* This is the only entry for em28xx tuner input */
279 EM28XX_AMUX_LINE_IN, 285 EM28XX_AMUX_VIDEO, /* em28xx tuner, AC97 mixer Video */
286
287 EM28XX_AMUX_LINE_IN, /* AC97 mixer Line In */
288
289 /* Some less-common mixer setups */
290 EM28XX_AMUX_VIDEO2, /* em28xx Line in, AC97 mixer Video */
291 EM28XX_AMUX_PHONE,
292 EM28XX_AMUX_MIC,
293 EM28XX_AMUX_CD,
294 EM28XX_AMUX_AUX,
295 EM28XX_AMUX_PCM_OUT,
280}; 296};
281 297
282struct em28xx_input { 298struct em28xx_input {