diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/Kconfig | 4 | ||||
-rw-r--r-- | sound/pci/hda/patch_conexant.c | 14 | ||||
-rw-r--r-- | sound/pci/hda/patch_realtek.c | 3 | ||||
-rw-r--r-- | sound/pci/hda/patch_sigmatel.c | 56 | ||||
-rw-r--r-- | sound/pci/oxygen/virtuoso.c | 3 | ||||
-rw-r--r-- | sound/soc/atmel/atmel-pcm.c | 2 | ||||
-rw-r--r-- | sound/soc/codecs/wm8753.c | 9 | ||||
-rw-r--r-- | sound/soc/fsl/mpc8610_hpcd.c | 18 | ||||
-rw-r--r-- | sound/soc/omap/omap-mcbsp.c | 4 |
9 files changed, 73 insertions, 40 deletions
diff --git a/sound/pci/Kconfig b/sound/pci/Kconfig index 6e3a1848447c..82b9bddcdcd6 100644 --- a/sound/pci/Kconfig +++ b/sound/pci/Kconfig | |||
@@ -744,8 +744,8 @@ config SND_VIRTUOSO | |||
744 | select SND_OXYGEN_LIB | 744 | select SND_OXYGEN_LIB |
745 | help | 745 | help |
746 | Say Y here to include support for sound cards based on the | 746 | Say Y here to include support for sound cards based on the |
747 | Asus AV100/AV200 chips, i.e., Xonar D1, DX, D2, D2X and | 747 | Asus AV100/AV200 chips, i.e., Xonar D1, DX, D2 and D2X. |
748 | HDAV1.3 (Deluxe). | 748 | Support for the HDAV1.3 (Deluxe) is very experimental. |
749 | 749 | ||
750 | To compile this driver as a module, choose M here: the module | 750 | To compile this driver as a module, choose M here: the module |
751 | will be called snd-virtuoso. | 751 | will be called snd-virtuoso. |
diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c index 75de40aaab0a..0177ef8f4c9e 100644 --- a/sound/pci/hda/patch_conexant.c +++ b/sound/pci/hda/patch_conexant.c | |||
@@ -347,6 +347,7 @@ static int conexant_mux_enum_put(struct snd_kcontrol *kcontrol, | |||
347 | &spec->cur_mux[adc_idx]); | 347 | &spec->cur_mux[adc_idx]); |
348 | } | 348 | } |
349 | 349 | ||
350 | #ifdef CONFIG_SND_JACK | ||
350 | static int conexant_add_jack(struct hda_codec *codec, | 351 | static int conexant_add_jack(struct hda_codec *codec, |
351 | hda_nid_t nid, int type) | 352 | hda_nid_t nid, int type) |
352 | { | 353 | { |
@@ -394,7 +395,6 @@ static void conexant_report_jack(struct hda_codec *codec, hda_nid_t nid) | |||
394 | 395 | ||
395 | static int conexant_init_jacks(struct hda_codec *codec) | 396 | static int conexant_init_jacks(struct hda_codec *codec) |
396 | { | 397 | { |
397 | #ifdef CONFIG_SND_JACK | ||
398 | struct conexant_spec *spec = codec->spec; | 398 | struct conexant_spec *spec = codec->spec; |
399 | int i; | 399 | int i; |
400 | 400 | ||
@@ -422,10 +422,19 @@ static int conexant_init_jacks(struct hda_codec *codec) | |||
422 | ++hv; | 422 | ++hv; |
423 | } | 423 | } |
424 | } | 424 | } |
425 | #endif | ||
426 | return 0; | 425 | return 0; |
427 | 426 | ||
428 | } | 427 | } |
428 | #else | ||
429 | static inline void conexant_report_jack(struct hda_codec *codec, hda_nid_t nid) | ||
430 | { | ||
431 | } | ||
432 | |||
433 | static inline int conexant_init_jacks(struct hda_codec *codec) | ||
434 | { | ||
435 | return 0; | ||
436 | } | ||
437 | #endif | ||
429 | 438 | ||
430 | static int conexant_init(struct hda_codec *codec) | 439 | static int conexant_init(struct hda_codec *codec) |
431 | { | 440 | { |
@@ -1566,6 +1575,7 @@ static struct snd_pci_quirk cxt5047_cfg_tbl[] = { | |||
1566 | SND_PCI_QUIRK(0x103c, 0x30a5, "HP DV5200T/DV8000T", CXT5047_LAPTOP_HP), | 1575 | SND_PCI_QUIRK(0x103c, 0x30a5, "HP DV5200T/DV8000T", CXT5047_LAPTOP_HP), |
1567 | SND_PCI_QUIRK(0x103c, 0x30b2, "HP DV2000T/DV3000T", CXT5047_LAPTOP), | 1576 | SND_PCI_QUIRK(0x103c, 0x30b2, "HP DV2000T/DV3000T", CXT5047_LAPTOP), |
1568 | SND_PCI_QUIRK(0x103c, 0x30b5, "HP DV2000Z", CXT5047_LAPTOP), | 1577 | SND_PCI_QUIRK(0x103c, 0x30b5, "HP DV2000Z", CXT5047_LAPTOP), |
1578 | SND_PCI_QUIRK(0x103c, 0x30cf, "HP DV6700", CXT5047_LAPTOP), | ||
1569 | SND_PCI_QUIRK(0x1179, 0xff31, "Toshiba P100", CXT5047_LAPTOP_EAPD), | 1579 | SND_PCI_QUIRK(0x1179, 0xff31, "Toshiba P100", CXT5047_LAPTOP_EAPD), |
1570 | {} | 1580 | {} |
1571 | }; | 1581 | }; |
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index 82dd08431970..7884a4e07061 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c | |||
@@ -7018,6 +7018,7 @@ static int patch_alc882(struct hda_codec *codec) | |||
7018 | case 0x106b00a4: /* MacbookPro4,1 */ | 7018 | case 0x106b00a4: /* MacbookPro4,1 */ |
7019 | case 0x106b2c00: /* Macbook Pro rev3 */ | 7019 | case 0x106b2c00: /* Macbook Pro rev3 */ |
7020 | case 0x106b3600: /* Macbook 3.1 */ | 7020 | case 0x106b3600: /* Macbook 3.1 */ |
7021 | case 0x106b3800: /* MacbookPro4,1 - latter revision */ | ||
7021 | board_config = ALC885_MBP3; | 7022 | board_config = ALC885_MBP3; |
7022 | break; | 7023 | break; |
7023 | default: | 7024 | default: |
@@ -8478,6 +8479,7 @@ static struct snd_pci_quirk alc883_cfg_tbl[] = { | |||
8478 | SND_PCI_QUIRK(0x1043, 0x835f, "Asus Eee 1601", ALC888_ASUS_EEE1601), | 8479 | SND_PCI_QUIRK(0x1043, 0x835f, "Asus Eee 1601", ALC888_ASUS_EEE1601), |
8479 | SND_PCI_QUIRK(0x105b, 0x0ce8, "Foxconn P35AX-S", ALC883_6ST_DIG), | 8480 | SND_PCI_QUIRK(0x105b, 0x0ce8, "Foxconn P35AX-S", ALC883_6ST_DIG), |
8480 | SND_PCI_QUIRK(0x105b, 0x6668, "Foxconn", ALC883_6ST_DIG), | 8481 | SND_PCI_QUIRK(0x105b, 0x6668, "Foxconn", ALC883_6ST_DIG), |
8482 | SND_PCI_QUIRK(0x1071, 0x8227, "Mitac 82801H", ALC883_MITAC), | ||
8481 | SND_PCI_QUIRK(0x1071, 0x8253, "Mitac 8252d", ALC883_MITAC), | 8483 | SND_PCI_QUIRK(0x1071, 0x8253, "Mitac 8252d", ALC883_MITAC), |
8482 | SND_PCI_QUIRK(0x1071, 0x8258, "Evesham Voyaeger", ALC883_LAPTOP_EAPD), | 8484 | SND_PCI_QUIRK(0x1071, 0x8258, "Evesham Voyaeger", ALC883_LAPTOP_EAPD), |
8483 | SND_PCI_QUIRK(0x10f1, 0x2350, "TYAN-S2350", ALC888_6ST_DELL), | 8485 | SND_PCI_QUIRK(0x10f1, 0x2350, "TYAN-S2350", ALC888_6ST_DELL), |
@@ -8526,6 +8528,7 @@ static struct snd_pci_quirk alc883_cfg_tbl[] = { | |||
8526 | SND_PCI_QUIRK(0x1991, 0x5625, "Haier W66", ALC883_HAIER_W66), | 8528 | SND_PCI_QUIRK(0x1991, 0x5625, "Haier W66", ALC883_HAIER_W66), |
8527 | SND_PCI_QUIRK(0x8086, 0x0001, "DG33BUC", ALC883_3ST_6ch_INTEL), | 8529 | SND_PCI_QUIRK(0x8086, 0x0001, "DG33BUC", ALC883_3ST_6ch_INTEL), |
8528 | SND_PCI_QUIRK(0x8086, 0x0002, "DG33FBC", ALC883_3ST_6ch_INTEL), | 8530 | SND_PCI_QUIRK(0x8086, 0x0002, "DG33FBC", ALC883_3ST_6ch_INTEL), |
8531 | SND_PCI_QUIRK(0x8086, 0x2503, "82801H", ALC883_MITAC), | ||
8529 | SND_PCI_QUIRK(0x8086, 0x0022, "DX58SO", ALC883_3ST_6ch_INTEL), | 8532 | SND_PCI_QUIRK(0x8086, 0x0022, "DX58SO", ALC883_3ST_6ch_INTEL), |
8530 | SND_PCI_QUIRK(0x8086, 0xd601, "D102GGC", ALC883_3ST_6ch), | 8533 | SND_PCI_QUIRK(0x8086, 0xd601, "D102GGC", ALC883_3ST_6ch), |
8531 | {} | 8534 | {} |
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index c39deebb588f..b787b3cc096f 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c | |||
@@ -81,6 +81,7 @@ enum { | |||
81 | 81 | ||
82 | enum { | 82 | enum { |
83 | STAC_92HD83XXX_REF, | 83 | STAC_92HD83XXX_REF, |
84 | STAC_92HD83XXX_PWR_REF, | ||
84 | STAC_92HD83XXX_MODELS | 85 | STAC_92HD83XXX_MODELS |
85 | }; | 86 | }; |
86 | 87 | ||
@@ -334,7 +335,7 @@ static hda_nid_t stac92hd83xxx_slave_dig_outs[2] = { | |||
334 | }; | 335 | }; |
335 | 336 | ||
336 | static unsigned int stac92hd83xxx_pwr_mapping[4] = { | 337 | static unsigned int stac92hd83xxx_pwr_mapping[4] = { |
337 | 0x03, 0x0c, 0x10, 0x40, | 338 | 0x03, 0x0c, 0x20, 0x40, |
338 | }; | 339 | }; |
339 | 340 | ||
340 | static hda_nid_t stac92hd83xxx_amp_nids[1] = { | 341 | static hda_nid_t stac92hd83xxx_amp_nids[1] = { |
@@ -841,10 +842,6 @@ static struct hda_verb stac92hd73xx_10ch_core_init[] = { | |||
841 | }; | 842 | }; |
842 | 843 | ||
843 | static struct hda_verb stac92hd83xxx_core_init[] = { | 844 | static struct hda_verb stac92hd83xxx_core_init[] = { |
844 | /* start of config #1 */ | ||
845 | { 0xe, AC_VERB_SET_CONNECT_SEL, 0x3}, | ||
846 | |||
847 | /* start of config #2 */ | ||
848 | { 0xa, AC_VERB_SET_CONNECT_SEL, 0x0}, | 845 | { 0xa, AC_VERB_SET_CONNECT_SEL, 0x0}, |
849 | { 0xb, AC_VERB_SET_CONNECT_SEL, 0x0}, | 846 | { 0xb, AC_VERB_SET_CONNECT_SEL, 0x0}, |
850 | { 0xd, AC_VERB_SET_CONNECT_SEL, 0x1}, | 847 | { 0xd, AC_VERB_SET_CONNECT_SEL, 0x1}, |
@@ -885,8 +882,8 @@ static struct hda_verb stac92hd71bxx_analog_core_init[] = { | |||
885 | static struct hda_verb stac925x_core_init[] = { | 882 | static struct hda_verb stac925x_core_init[] = { |
886 | /* set dac0mux for dac converter */ | 883 | /* set dac0mux for dac converter */ |
887 | { 0x06, AC_VERB_SET_CONNECT_SEL, 0x00}, | 884 | { 0x06, AC_VERB_SET_CONNECT_SEL, 0x00}, |
888 | /* unmute and set max the selector */ | 885 | /* mute the master volume */ |
889 | { 0x0e, AC_VERB_SET_AMP_GAIN_MUTE, 0xb01f }, | 886 | { 0x0e, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE }, |
890 | {} | 887 | {} |
891 | }; | 888 | }; |
892 | 889 | ||
@@ -1138,6 +1135,8 @@ static struct snd_kcontrol_new stac92hd71bxx_mixer[] = { | |||
1138 | }; | 1135 | }; |
1139 | 1136 | ||
1140 | static struct snd_kcontrol_new stac925x_mixer[] = { | 1137 | static struct snd_kcontrol_new stac925x_mixer[] = { |
1138 | HDA_CODEC_VOLUME("Master Playback Volume", 0x0e, 0, HDA_OUTPUT), | ||
1139 | HDA_CODEC_MUTE("Master Playback Switch", 0x0e, 0, HDA_OUTPUT), | ||
1141 | STAC_INPUT_SOURCE(1), | 1140 | STAC_INPUT_SOURCE(1), |
1142 | HDA_CODEC_VOLUME("Capture Volume", 0x09, 0, HDA_OUTPUT), | 1141 | HDA_CODEC_VOLUME("Capture Volume", 0x09, 0, HDA_OUTPUT), |
1143 | HDA_CODEC_MUTE("Capture Switch", 0x14, 0, HDA_OUTPUT), | 1142 | HDA_CODEC_MUTE("Capture Switch", 0x14, 0, HDA_OUTPUT), |
@@ -1736,10 +1735,12 @@ static unsigned int ref92hd83xxx_pin_configs[14] = { | |||
1736 | 1735 | ||
1737 | static unsigned int *stac92hd83xxx_brd_tbl[STAC_92HD83XXX_MODELS] = { | 1736 | static unsigned int *stac92hd83xxx_brd_tbl[STAC_92HD83XXX_MODELS] = { |
1738 | [STAC_92HD83XXX_REF] = ref92hd83xxx_pin_configs, | 1737 | [STAC_92HD83XXX_REF] = ref92hd83xxx_pin_configs, |
1738 | [STAC_92HD83XXX_PWR_REF] = ref92hd83xxx_pin_configs, | ||
1739 | }; | 1739 | }; |
1740 | 1740 | ||
1741 | static const char *stac92hd83xxx_models[STAC_92HD83XXX_MODELS] = { | 1741 | static const char *stac92hd83xxx_models[STAC_92HD83XXX_MODELS] = { |
1742 | [STAC_92HD83XXX_REF] = "ref", | 1742 | [STAC_92HD83XXX_REF] = "ref", |
1743 | [STAC_92HD83XXX_PWR_REF] = "mic-ref", | ||
1743 | }; | 1744 | }; |
1744 | 1745 | ||
1745 | static struct snd_pci_quirk stac92hd83xxx_cfg_tbl[] = { | 1746 | static struct snd_pci_quirk stac92hd83xxx_cfg_tbl[] = { |
@@ -1799,6 +1800,8 @@ static struct snd_pci_quirk stac92hd71bxx_cfg_tbl[] = { | |||
1799 | "HP dv5", STAC_HP_M4), | 1800 | "HP dv5", STAC_HP_M4), |
1800 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30f4, | 1801 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30f4, |
1801 | "HP dv7", STAC_HP_M4), | 1802 | "HP dv7", STAC_HP_M4), |
1803 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30f7, | ||
1804 | "HP dv4", STAC_HP_DV5), | ||
1802 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30fc, | 1805 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x30fc, |
1803 | "HP dv7", STAC_HP_M4), | 1806 | "HP dv7", STAC_HP_M4), |
1804 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x3603, | 1807 | SND_PCI_QUIRK(PCI_VENDOR_ID_HP, 0x3603, |
@@ -2536,6 +2539,8 @@ static int stac92xx_build_pcms(struct hda_codec *codec) | |||
2536 | 2539 | ||
2537 | info->name = "STAC92xx Analog"; | 2540 | info->name = "STAC92xx Analog"; |
2538 | info->stream[SNDRV_PCM_STREAM_PLAYBACK] = stac92xx_pcm_analog_playback; | 2541 | info->stream[SNDRV_PCM_STREAM_PLAYBACK] = stac92xx_pcm_analog_playback; |
2542 | info->stream[SNDRV_PCM_STREAM_PLAYBACK].nid = | ||
2543 | spec->multiout.dac_nids[0]; | ||
2539 | info->stream[SNDRV_PCM_STREAM_CAPTURE] = stac92xx_pcm_analog_capture; | 2544 | info->stream[SNDRV_PCM_STREAM_CAPTURE] = stac92xx_pcm_analog_capture; |
2540 | info->stream[SNDRV_PCM_STREAM_CAPTURE].nid = spec->adc_nids[0]; | 2545 | info->stream[SNDRV_PCM_STREAM_CAPTURE].nid = spec->adc_nids[0]; |
2541 | info->stream[SNDRV_PCM_STREAM_CAPTURE].substreams = spec->num_adcs; | 2546 | info->stream[SNDRV_PCM_STREAM_CAPTURE].substreams = spec->num_adcs; |
@@ -3573,13 +3578,12 @@ static int stac92xx_parse_auto_config(struct hda_codec *codec, hda_nid_t dig_out | |||
3573 | err = stac92xx_auto_fill_dac_nids(codec); | 3578 | err = stac92xx_auto_fill_dac_nids(codec); |
3574 | if (err < 0) | 3579 | if (err < 0) |
3575 | return err; | 3580 | return err; |
3581 | err = stac92xx_auto_create_multi_out_ctls(codec, | ||
3582 | &spec->autocfg); | ||
3583 | if (err < 0) | ||
3584 | return err; | ||
3576 | } | 3585 | } |
3577 | 3586 | ||
3578 | err = stac92xx_auto_create_multi_out_ctls(codec, &spec->autocfg); | ||
3579 | |||
3580 | if (err < 0) | ||
3581 | return err; | ||
3582 | |||
3583 | /* setup analog beep controls */ | 3587 | /* setup analog beep controls */ |
3584 | if (spec->anabeep_nid > 0) { | 3588 | if (spec->anabeep_nid > 0) { |
3585 | err = stac92xx_auto_create_beep_ctls(codec, | 3589 | err = stac92xx_auto_create_beep_ctls(codec, |
@@ -4753,7 +4757,9 @@ static struct hda_input_mux stac92hd83xxx_dmux = { | |||
4753 | static int patch_stac92hd83xxx(struct hda_codec *codec) | 4757 | static int patch_stac92hd83xxx(struct hda_codec *codec) |
4754 | { | 4758 | { |
4755 | struct sigmatel_spec *spec; | 4759 | struct sigmatel_spec *spec; |
4760 | hda_nid_t conn[STAC92HD83_DAC_COUNT + 1]; | ||
4756 | int err; | 4761 | int err; |
4762 | int num_dacs; | ||
4757 | 4763 | ||
4758 | spec = kzalloc(sizeof(*spec), GFP_KERNEL); | 4764 | spec = kzalloc(sizeof(*spec), GFP_KERNEL); |
4759 | if (spec == NULL) | 4765 | if (spec == NULL) |
@@ -4772,15 +4778,16 @@ static int patch_stac92hd83xxx(struct hda_codec *codec) | |||
4772 | spec->num_pwrs = ARRAY_SIZE(stac92hd83xxx_pwr_nids); | 4778 | spec->num_pwrs = ARRAY_SIZE(stac92hd83xxx_pwr_nids); |
4773 | spec->multiout.dac_nids = spec->dac_nids; | 4779 | spec->multiout.dac_nids = spec->dac_nids; |
4774 | 4780 | ||
4775 | spec->init = stac92hd83xxx_core_init; | ||
4776 | switch (codec->vendor_id) { | ||
4777 | case 0x111d7605: | ||
4778 | break; | ||
4779 | default: | ||
4780 | spec->num_pwrs--; | ||
4781 | spec->init++; /* switch to config #2 */ | ||
4782 | } | ||
4783 | 4781 | ||
4782 | /* set port 0xe to select the last DAC | ||
4783 | */ | ||
4784 | num_dacs = snd_hda_get_connections(codec, 0x0e, | ||
4785 | conn, STAC92HD83_DAC_COUNT + 1) - 1; | ||
4786 | |||
4787 | snd_hda_codec_write_cache(codec, 0xe, 0, | ||
4788 | AC_VERB_SET_CONNECT_SEL, num_dacs); | ||
4789 | |||
4790 | spec->init = stac92hd83xxx_core_init; | ||
4784 | spec->mixer = stac92hd83xxx_mixer; | 4791 | spec->mixer = stac92hd83xxx_mixer; |
4785 | spec->num_pins = ARRAY_SIZE(stac92hd83xxx_pin_nids); | 4792 | spec->num_pins = ARRAY_SIZE(stac92hd83xxx_pin_nids); |
4786 | spec->num_dmuxes = ARRAY_SIZE(stac92hd83xxx_dmux_nids); | 4793 | spec->num_dmuxes = ARRAY_SIZE(stac92hd83xxx_dmux_nids); |
@@ -4806,6 +4813,15 @@ again: | |||
4806 | return err; | 4813 | return err; |
4807 | } | 4814 | } |
4808 | 4815 | ||
4816 | switch (codec->vendor_id) { | ||
4817 | case 0x111d7604: | ||
4818 | case 0x111d7605: | ||
4819 | if (spec->board_config == STAC_92HD83XXX_PWR_REF) | ||
4820 | break; | ||
4821 | spec->num_pwrs = 0; | ||
4822 | break; | ||
4823 | } | ||
4824 | |||
4809 | err = stac92xx_parse_auto_config(codec, 0x1d, 0); | 4825 | err = stac92xx_parse_auto_config(codec, 0x1d, 0); |
4810 | if (!err) { | 4826 | if (!err) { |
4811 | if (spec->board_config < 0) { | 4827 | if (spec->board_config < 0) { |
diff --git a/sound/pci/oxygen/virtuoso.c b/sound/pci/oxygen/virtuoso.c index e9e829e83d7a..18c7c91786bc 100644 --- a/sound/pci/oxygen/virtuoso.c +++ b/sound/pci/oxygen/virtuoso.c | |||
@@ -683,7 +683,7 @@ static void xonar_hdav_uart_input(struct oxygen *chip) | |||
683 | if (chip->uart_input_count >= 2 && | 683 | if (chip->uart_input_count >= 2 && |
684 | chip->uart_input[chip->uart_input_count - 2] == 'O' && | 684 | chip->uart_input[chip->uart_input_count - 2] == 'O' && |
685 | chip->uart_input[chip->uart_input_count - 1] == 'K') { | 685 | chip->uart_input[chip->uart_input_count - 1] == 'K') { |
686 | printk(KERN_DEBUG "message from Xonar HDAV HDMI chip received:"); | 686 | printk(KERN_DEBUG "message from Xonar HDAV HDMI chip received:\n"); |
687 | print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, | 687 | print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, |
688 | chip->uart_input, chip->uart_input_count); | 688 | chip->uart_input, chip->uart_input_count); |
689 | chip->uart_input_count = 0; | 689 | chip->uart_input_count = 0; |
@@ -908,6 +908,7 @@ static const struct oxygen_model model_xonar_hdav = { | |||
908 | .dac_channels = 8, | 908 | .dac_channels = 8, |
909 | .dac_volume_min = 0x0f, | 909 | .dac_volume_min = 0x0f, |
910 | .dac_volume_max = 0xff, | 910 | .dac_volume_max = 0xff, |
911 | .misc_flags = OXYGEN_MISC_MIDI, | ||
911 | .function_flags = OXYGEN_FUNCTION_2WIRE, | 912 | .function_flags = OXYGEN_FUNCTION_2WIRE, |
912 | .dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST, | 913 | .dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST, |
913 | .adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST, | 914 | .adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST, |
diff --git a/sound/soc/atmel/atmel-pcm.c b/sound/soc/atmel/atmel-pcm.c index 1fac5efd285b..3dcdc4e3cfa0 100644 --- a/sound/soc/atmel/atmel-pcm.c +++ b/sound/soc/atmel/atmel-pcm.c | |||
@@ -44,8 +44,6 @@ | |||
44 | #include <sound/pcm_params.h> | 44 | #include <sound/pcm_params.h> |
45 | #include <sound/soc.h> | 45 | #include <sound/soc.h> |
46 | 46 | ||
47 | #include <mach/hardware.h> | ||
48 | |||
49 | #include "atmel-pcm.h" | 47 | #include "atmel-pcm.h" |
50 | 48 | ||
51 | 49 | ||
diff --git a/sound/soc/codecs/wm8753.c b/sound/soc/codecs/wm8753.c index 6c21b50c9375..77620ab98756 100644 --- a/sound/soc/codecs/wm8753.c +++ b/sound/soc/codecs/wm8753.c | |||
@@ -1451,7 +1451,14 @@ static const struct snd_soc_dai wm8753_all_dai[] = { | |||
1451 | }, | 1451 | }, |
1452 | }; | 1452 | }; |
1453 | 1453 | ||
1454 | struct snd_soc_dai wm8753_dai[2]; | 1454 | struct snd_soc_dai wm8753_dai[] = { |
1455 | { | ||
1456 | .name = "WM8753 DAI 0", | ||
1457 | }, | ||
1458 | { | ||
1459 | .name = "WM8753 DAI 1", | ||
1460 | }, | ||
1461 | }; | ||
1455 | EXPORT_SYMBOL_GPL(wm8753_dai); | 1462 | EXPORT_SYMBOL_GPL(wm8753_dai); |
1456 | 1463 | ||
1457 | static void wm8753_set_dai_mode(struct snd_soc_codec *codec, unsigned int mode) | 1464 | static void wm8753_set_dai_mode(struct snd_soc_codec *codec, unsigned int mode) |
diff --git a/sound/soc/fsl/mpc8610_hpcd.c b/sound/soc/fsl/mpc8610_hpcd.c index bcec3f60bad9..acf39a646b2f 100644 --- a/sound/soc/fsl/mpc8610_hpcd.c +++ b/sound/soc/fsl/mpc8610_hpcd.c | |||
@@ -183,16 +183,6 @@ static struct snd_soc_ops mpc8610_hpcd_ops = { | |||
183 | }; | 183 | }; |
184 | 184 | ||
185 | /** | 185 | /** |
186 | * mpc8610_hpcd_machine: ASoC machine data | ||
187 | */ | ||
188 | static struct snd_soc_card mpc8610_hpcd_machine = { | ||
189 | .probe = mpc8610_hpcd_machine_probe, | ||
190 | .remove = mpc8610_hpcd_machine_remove, | ||
191 | .name = "MPC8610 HPCD", | ||
192 | .num_links = 1, | ||
193 | }; | ||
194 | |||
195 | /** | ||
196 | * mpc8610_hpcd_probe: OF probe function for the fabric driver | 186 | * mpc8610_hpcd_probe: OF probe function for the fabric driver |
197 | * | 187 | * |
198 | * This function gets called when an SSI node is found in the device tree. | 188 | * This function gets called when an SSI node is found in the device tree. |
@@ -455,7 +445,11 @@ static int mpc8610_hpcd_probe(struct of_device *ofdev, | |||
455 | machine_data->dai.codec_dai = &cs4270_dai; /* The codec_dai we want */ | 445 | machine_data->dai.codec_dai = &cs4270_dai; /* The codec_dai we want */ |
456 | machine_data->dai.ops = &mpc8610_hpcd_ops; | 446 | machine_data->dai.ops = &mpc8610_hpcd_ops; |
457 | 447 | ||
458 | mpc8610_hpcd_machine.dai_link = &machine_data->dai; | 448 | machine_data->machine.probe = mpc8610_hpcd_machine_probe; |
449 | machine_data->machine.remove = mpc8610_hpcd_machine_remove; | ||
450 | machine_data->machine.name = "MPC8610 HPCD"; | ||
451 | machine_data->machine.num_links = 1; | ||
452 | machine_data->machine.dai_link = &machine_data->dai; | ||
459 | 453 | ||
460 | /* Allocate a new audio platform device structure */ | 454 | /* Allocate a new audio platform device structure */ |
461 | sound_device = platform_device_alloc("soc-audio", -1); | 455 | sound_device = platform_device_alloc("soc-audio", -1); |
@@ -465,7 +459,7 @@ static int mpc8610_hpcd_probe(struct of_device *ofdev, | |||
465 | goto error; | 459 | goto error; |
466 | } | 460 | } |
467 | 461 | ||
468 | machine_data->sound_devdata.card = &mpc8610_hpcd_machine; | 462 | machine_data->sound_devdata.card = &machine_data->machine; |
469 | machine_data->sound_devdata.codec_dev = &soc_codec_device_cs4270; | 463 | machine_data->sound_devdata.codec_dev = &soc_codec_device_cs4270; |
470 | machine_data->machine.platform = &fsl_soc_platform; | 464 | machine_data->machine.platform = &fsl_soc_platform; |
471 | 465 | ||
diff --git a/sound/soc/omap/omap-mcbsp.c b/sound/soc/omap/omap-mcbsp.c index ec5e18a78758..05dd5abcddf4 100644 --- a/sound/soc/omap/omap-mcbsp.c +++ b/sound/soc/omap/omap-mcbsp.c | |||
@@ -302,6 +302,10 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
302 | regs->spcr1 |= RINTM(3); | 302 | regs->spcr1 |= RINTM(3); |
303 | regs->rcr2 |= RFIG; | 303 | regs->rcr2 |= RFIG; |
304 | regs->xcr2 |= XFIG; | 304 | regs->xcr2 |= XFIG; |
305 | if (cpu_is_omap2430() || cpu_is_omap34xx()) { | ||
306 | regs->xccr = DXENDLY(1) | XDMAEN; | ||
307 | regs->rccr = RFULL_CYCLE | RDMAEN; | ||
308 | } | ||
305 | 309 | ||
306 | switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) { | 310 | switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) { |
307 | case SND_SOC_DAIFMT_I2S: | 311 | case SND_SOC_DAIFMT_I2S: |