diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2011-01-10 10:20:29 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-01-10 10:46:46 -0500 |
commit | 66410bfdf14f7c2ad3b2d4a8adeab41d368b6f05 (patch) | |
tree | aa9d7603372a0f16e7efdecbadc8eb2f31ba4c6d /sound/pci/oxygen/oxygen.c | |
parent | 8443d2eb81e30dcc027e531eaa442cdb2477c5ab (diff) |
ALSA: oxygen: add Xonar DG support
Add experimental support for the Asus Xonar DG sound card.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/oxygen/oxygen.c')
-rw-r--r-- | sound/pci/oxygen/oxygen.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sound/pci/oxygen/oxygen.c b/sound/pci/oxygen/oxygen.c index 304f1a5681f3..b59aeefd14db 100644 --- a/sound/pci/oxygen/oxygen.c +++ b/sound/pci/oxygen/oxygen.c | |||
@@ -53,13 +53,16 @@ | |||
53 | #include <sound/pcm_params.h> | 53 | #include <sound/pcm_params.h> |
54 | #include <sound/tlv.h> | 54 | #include <sound/tlv.h> |
55 | #include "oxygen.h" | 55 | #include "oxygen.h" |
56 | #include "xonar_dg.h" | ||
56 | #include "ak4396.h" | 57 | #include "ak4396.h" |
57 | #include "wm8785.h" | 58 | #include "wm8785.h" |
58 | 59 | ||
59 | MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>"); | 60 | MODULE_AUTHOR("Clemens Ladisch <clemens@ladisch.de>"); |
60 | MODULE_DESCRIPTION("C-Media CMI8788 driver"); | 61 | MODULE_DESCRIPTION("C-Media CMI8788 driver"); |
61 | MODULE_LICENSE("GPL v2"); | 62 | MODULE_LICENSE("GPL v2"); |
62 | MODULE_SUPPORTED_DEVICE("{{C-Media,CMI8788}}"); | 63 | MODULE_SUPPORTED_DEVICE("{{C-Media,CMI8786}" |
64 | ",{C-Media,CMI8787}" | ||
65 | ",{C-Media,CMI8788}}"); | ||
63 | 66 | ||
64 | static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; | 67 | static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; |
65 | static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; | 68 | static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; |
@@ -79,6 +82,7 @@ enum { | |||
79 | MODEL_CLARO_HALO, | 82 | MODEL_CLARO_HALO, |
80 | MODEL_FANTASIA, | 83 | MODEL_FANTASIA, |
81 | MODEL_2CH_OUTPUT, | 84 | MODEL_2CH_OUTPUT, |
85 | MODEL_XONAR_DG, | ||
82 | }; | 86 | }; |
83 | 87 | ||
84 | static DEFINE_PCI_DEVICE_TABLE(oxygen_ids) = { | 88 | static DEFINE_PCI_DEVICE_TABLE(oxygen_ids) = { |
@@ -92,6 +96,8 @@ static DEFINE_PCI_DEVICE_TABLE(oxygen_ids) = { | |||
92 | { OXYGEN_PCI_SUBID(0x13f6, 0x8788), .driver_data = MODEL_CMEDIA_REF }, | 96 | { OXYGEN_PCI_SUBID(0x13f6, 0x8788), .driver_data = MODEL_CMEDIA_REF }, |
93 | { OXYGEN_PCI_SUBID(0x147a, 0xa017), .driver_data = MODEL_CMEDIA_REF }, | 97 | { OXYGEN_PCI_SUBID(0x147a, 0xa017), .driver_data = MODEL_CMEDIA_REF }, |
94 | { OXYGEN_PCI_SUBID(0x1a58, 0x0910), .driver_data = MODEL_CMEDIA_REF }, | 98 | { OXYGEN_PCI_SUBID(0x1a58, 0x0910), .driver_data = MODEL_CMEDIA_REF }, |
99 | /* Asus Xonar DG */ | ||
100 | { OXYGEN_PCI_SUBID(0x1043, 0x8467), .driver_data = MODEL_XONAR_DG }, | ||
95 | /* PCI 2.0 HD Audio */ | 101 | /* PCI 2.0 HD Audio */ |
96 | { OXYGEN_PCI_SUBID(0x13f6, 0x8782), .driver_data = MODEL_2CH_OUTPUT }, | 102 | { OXYGEN_PCI_SUBID(0x13f6, 0x8782), .driver_data = MODEL_2CH_OUTPUT }, |
97 | /* Kuroutoshikou CMI8787-HG2PCI */ | 103 | /* Kuroutoshikou CMI8787-HG2PCI */ |
@@ -655,6 +661,9 @@ static int __devinit get_oxygen_model(struct oxygen *chip, | |||
655 | chip->model.dac_channels_pcm = 2; | 661 | chip->model.dac_channels_pcm = 2; |
656 | chip->model.dac_channels_mixer = 2; | 662 | chip->model.dac_channels_mixer = 2; |
657 | break; | 663 | break; |
664 | case MODEL_XONAR_DG: | ||
665 | chip->model = model_xonar_dg; | ||
666 | break; | ||
658 | } | 667 | } |
659 | if (id->driver_data == MODEL_MERIDIAN || | 668 | if (id->driver_data == MODEL_MERIDIAN || |
660 | id->driver_data == MODEL_CLARO_HALO) { | 669 | id->driver_data == MODEL_CLARO_HALO) { |