ALSA: virtuoso: add S/PDIF input support for all Xonars
authorClemens Ladisch <clemens@ladisch.de>
Tue, 6 Dec 2011 09:07:43 +0000 (10:07 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 11 Jan 2012 08:24:50 +0000 (09:24 +0100)
All Xonar cards support S/PDIF input, but the cards without optical or
coaxial plugs have only undocumented pin connectors.  Support for the
ST/STX was already added in a previous patch; this adds support for the
D1/DX (JP2), DG (J5), DS (J5), and HDAV Slim (J12).

Many thanks to Zoltan Miklos for testing the DS and DX.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/oxygen/xonar_cs43xx.c
sound/pci/oxygen/xonar_dg.c
sound/pci/oxygen/xonar_wm87x6.c

index 2527191..c8febf4 100644 (file)
@@ -418,6 +418,7 @@ static const struct oxygen_model model_xonar_d1 = {
        .device_config = PLAYBACK_0_TO_I2S |
                         PLAYBACK_1_TO_SPDIF |
                         CAPTURE_0_FROM_I2S_2 |
+                        CAPTURE_1_FROM_SPDIF |
                         AC97_FMIC_SWITCH,
        .dac_channels_pcm = 8,
        .dac_channels_mixer = 8,
index bc6eb58..793bdf0 100644 (file)
@@ -597,7 +597,8 @@ struct oxygen_model model_xonar_dg = {
        .model_data_size = sizeof(struct dg),
        .device_config = PLAYBACK_0_TO_I2S |
                         PLAYBACK_1_TO_SPDIF |
-                        CAPTURE_0_FROM_I2S_2,
+                        CAPTURE_0_FROM_I2S_2 |
+                        CAPTURE_1_FROM_SPDIF,
        .dac_channels_pcm = 6,
        .dac_channels_mixer = 0,
        .function_flags = OXYGEN_FUNCTION_SPI,
index 42d1ab1..478303e 100644 (file)
@@ -1274,7 +1274,8 @@ static const struct oxygen_model model_xonar_ds = {
        .model_data_size = sizeof(struct xonar_wm87x6),
        .device_config = PLAYBACK_0_TO_I2S |
                         PLAYBACK_1_TO_SPDIF |
-                        CAPTURE_0_FROM_I2S_1,
+                        CAPTURE_0_FROM_I2S_1 |
+                        CAPTURE_1_FROM_SPDIF,
        .dac_channels_pcm = 8,
        .dac_channels_mixer = 8,
        .dac_volume_min = 255 - 2*60,
@@ -1306,7 +1307,8 @@ static const struct oxygen_model model_xonar_hdav_slim = {
        .model_data_size = sizeof(struct xonar_wm87x6),
        .device_config = PLAYBACK_0_TO_I2S |
                         PLAYBACK_1_TO_SPDIF |
-                        CAPTURE_0_FROM_I2S_1,
+                        CAPTURE_0_FROM_I2S_1 |
+                        CAPTURE_1_FROM_SPDIF,
        .dac_channels_pcm = 8,
        .dac_channels_mixer = 2,
        .dac_volume_min = 255 - 2*60,