Loading sound/soc/atmel/sam9g20_wm8731.c +1 −1 Original line number Diff line number Diff line Loading @@ -146,7 +146,7 @@ static int at91sam9g20ek_wm8731_init(struct snd_soc_pcm_runtime *rtd) "at91sam9g20ek_wm8731 " ": at91sam9g20ek_wm8731_init() called\n"); ret = snd_soc_dai_set_sysclk(codec_dai, WM8731_SYSCLK_XTAL, ret = snd_soc_dai_set_sysclk(codec_dai, WM8731_SYSCLK_MCLK, MCLK_RATE, SND_SOC_CLOCK_IN); if (ret < 0) { printk(KERN_ERR "Failed to set WM8731 SYSCLK: %d\n", ret); Loading sound/soc/codecs/wm1250-ev1.c +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ SND_SOC_DAPM_ADC("ADC", "wm1250-ev1 Capture", SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_DAC("DAC", "wm1250-ev1 Playback", SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_INPUT("WM1250 Input"), SND_SOC_DAPM_INPUT("WM1250 Output"), SND_SOC_DAPM_OUTPUT("WM1250 Output"), }; static const struct snd_soc_dapm_route wm1250_ev1_dapm_routes[] = { Loading sound/soc/codecs/wm8731.c +1 −1 Original line number Diff line number Diff line Loading @@ -198,7 +198,7 @@ static int wm8731_check_osc(struct snd_soc_dapm_widget *source, { struct wm8731_priv *wm8731 = snd_soc_codec_get_drvdata(source->codec); return wm8731->sysclk_type == WM8731_SYSCLK_MCLK; return wm8731->sysclk_type == WM8731_SYSCLK_XTAL; } static const struct snd_soc_dapm_route wm8731_intercon[] = { Loading sound/soc/codecs/wm8915.c +0 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ #include <linux/gcd.h> #include <linux/gpio.h> #include <linux/i2c.h> #include <linux/delay.h> #include <linux/regulator/consumer.h> #include <linux/slab.h> #include <linux/workqueue.h> Loading sound/soc/pxa/raumfeld.c +58 −34 Original line number Diff line number Diff line Loading @@ -151,13 +151,13 @@ static struct snd_soc_ops raumfeld_cs4270_ops = { .hw_params = raumfeld_cs4270_hw_params, }; static int raumfeld_line_suspend(struct snd_soc_card *card) static int raumfeld_analog_suspend(struct snd_soc_card *card) { raumfeld_enable_audio(false); return 0; } static int raumfeld_line_resume(struct snd_soc_card *card) static int raumfeld_analog_resume(struct snd_soc_card *card) { raumfeld_enable_audio(true); return 0; Loading Loading @@ -225,32 +225,53 @@ static struct snd_soc_ops raumfeld_ak4104_ops = { .hw_params = raumfeld_ak4104_hw_params, }; static struct snd_soc_dai_link raumfeld_dai[] = { #define DAI_LINK_CS4270 \ { \ .name = "CS4270", \ .stream_name = "CS4270", \ .cpu_dai_name = "pxa-ssp-dai.0", \ .platform_name = "pxa-pcm-audio", \ .codec_dai_name = "cs4270-hifi", \ .codec_name = "cs4270-codec.0-0048", \ .ops = &raumfeld_cs4270_ops, \ } #define DAI_LINK_AK4104 \ { \ .name = "ak4104", \ .stream_name = "Playback", \ .cpu_dai_name = "pxa-ssp-dai.1", \ .codec_dai_name = "ak4104-hifi", \ .platform_name = "pxa-pcm-audio", \ .ops = &raumfeld_ak4104_ops, \ .codec_name = "spi0.0", \ } static struct snd_soc_dai_link snd_soc_raumfeld_connector_dai[] = { .name = "ak4104", .stream_name = "Playback", .cpu_dai_name = "pxa-ssp-dai.1", .codec_dai_name = "ak4104-hifi", .platform_name = "pxa-pcm-audio", .ops = &raumfeld_ak4104_ops, .codec_name = "ak4104-codec.0", }, DAI_LINK_CS4270, DAI_LINK_AK4104, }; static struct snd_soc_dai_link snd_soc_raumfeld_speaker_dai[] = { .name = "CS4270", .stream_name = "CS4270", .cpu_dai_name = "pxa-ssp-dai.0", .platform_name = "pxa-pcm-audio", .codec_dai_name = "cs4270-hifi", .codec_name = "cs4270-codec.0-0048", .ops = &raumfeld_cs4270_ops, },}; static struct snd_soc_card snd_soc_raumfeld = { .name = "Raumfeld", .dai_link = raumfeld_dai, .suspend_post = raumfeld_line_suspend, .resume_pre = raumfeld_line_resume, .num_links = ARRAY_SIZE(raumfeld_dai), DAI_LINK_CS4270, }; static struct snd_soc_card snd_soc_raumfeld_connector = { .name = "Raumfeld Connector", .dai_link = snd_soc_raumfeld_connector_dai, .num_links = ARRAY_SIZE(snd_soc_raumfeld_connector_dai), .suspend_post = raumfeld_analog_suspend, .resume_pre = raumfeld_analog_resume, }; static struct snd_soc_card snd_soc_raumfeld_speaker = { .name = "Raumfeld Speaker", .dai_link = snd_soc_raumfeld_speaker_dai, .num_links = ARRAY_SIZE(snd_soc_raumfeld_speaker_dai), .suspend_post = raumfeld_analog_suspend, .resume_pre = raumfeld_analog_resume, }; static struct platform_device *raumfeld_audio_device; Loading @@ -271,22 +292,25 @@ static int __init raumfeld_audio_init(void) set_max9485_clk(MAX9485_MCLK_FREQ_122880); /* Register LINE and SPDIF */ /* Register analog device */ raumfeld_audio_device = platform_device_alloc("soc-audio", 0); if (!raumfeld_audio_device) return -ENOMEM; if (machine_is_raumfeld_speaker()) platform_set_drvdata(raumfeld_audio_device, &snd_soc_raumfeld); ret = platform_device_add(raumfeld_audio_device); &snd_soc_raumfeld_speaker); /* no S/PDIF on Speakers */ if (machine_is_raumfeld_speaker()) if (machine_is_raumfeld_connector()) platform_set_drvdata(raumfeld_audio_device, &snd_soc_raumfeld_connector); ret = platform_device_add(raumfeld_audio_device); if (ret < 0) return ret; raumfeld_enable_audio(true); return ret; return 0; } static void __exit raumfeld_audio_exit(void) Loading Loading
sound/soc/atmel/sam9g20_wm8731.c +1 −1 Original line number Diff line number Diff line Loading @@ -146,7 +146,7 @@ static int at91sam9g20ek_wm8731_init(struct snd_soc_pcm_runtime *rtd) "at91sam9g20ek_wm8731 " ": at91sam9g20ek_wm8731_init() called\n"); ret = snd_soc_dai_set_sysclk(codec_dai, WM8731_SYSCLK_XTAL, ret = snd_soc_dai_set_sysclk(codec_dai, WM8731_SYSCLK_MCLK, MCLK_RATE, SND_SOC_CLOCK_IN); if (ret < 0) { printk(KERN_ERR "Failed to set WM8731 SYSCLK: %d\n", ret); Loading
sound/soc/codecs/wm1250-ev1.c +1 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,7 @@ SND_SOC_DAPM_ADC("ADC", "wm1250-ev1 Capture", SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_DAC("DAC", "wm1250-ev1 Playback", SND_SOC_NOPM, 0, 0), SND_SOC_DAPM_INPUT("WM1250 Input"), SND_SOC_DAPM_INPUT("WM1250 Output"), SND_SOC_DAPM_OUTPUT("WM1250 Output"), }; static const struct snd_soc_dapm_route wm1250_ev1_dapm_routes[] = { Loading
sound/soc/codecs/wm8731.c +1 −1 Original line number Diff line number Diff line Loading @@ -198,7 +198,7 @@ static int wm8731_check_osc(struct snd_soc_dapm_widget *source, { struct wm8731_priv *wm8731 = snd_soc_codec_get_drvdata(source->codec); return wm8731->sysclk_type == WM8731_SYSCLK_MCLK; return wm8731->sysclk_type == WM8731_SYSCLK_XTAL; } static const struct snd_soc_dapm_route wm8731_intercon[] = { Loading
sound/soc/codecs/wm8915.c +0 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ #include <linux/gcd.h> #include <linux/gpio.h> #include <linux/i2c.h> #include <linux/delay.h> #include <linux/regulator/consumer.h> #include <linux/slab.h> #include <linux/workqueue.h> Loading
sound/soc/pxa/raumfeld.c +58 −34 Original line number Diff line number Diff line Loading @@ -151,13 +151,13 @@ static struct snd_soc_ops raumfeld_cs4270_ops = { .hw_params = raumfeld_cs4270_hw_params, }; static int raumfeld_line_suspend(struct snd_soc_card *card) static int raumfeld_analog_suspend(struct snd_soc_card *card) { raumfeld_enable_audio(false); return 0; } static int raumfeld_line_resume(struct snd_soc_card *card) static int raumfeld_analog_resume(struct snd_soc_card *card) { raumfeld_enable_audio(true); return 0; Loading Loading @@ -225,32 +225,53 @@ static struct snd_soc_ops raumfeld_ak4104_ops = { .hw_params = raumfeld_ak4104_hw_params, }; static struct snd_soc_dai_link raumfeld_dai[] = { #define DAI_LINK_CS4270 \ { \ .name = "CS4270", \ .stream_name = "CS4270", \ .cpu_dai_name = "pxa-ssp-dai.0", \ .platform_name = "pxa-pcm-audio", \ .codec_dai_name = "cs4270-hifi", \ .codec_name = "cs4270-codec.0-0048", \ .ops = &raumfeld_cs4270_ops, \ } #define DAI_LINK_AK4104 \ { \ .name = "ak4104", \ .stream_name = "Playback", \ .cpu_dai_name = "pxa-ssp-dai.1", \ .codec_dai_name = "ak4104-hifi", \ .platform_name = "pxa-pcm-audio", \ .ops = &raumfeld_ak4104_ops, \ .codec_name = "spi0.0", \ } static struct snd_soc_dai_link snd_soc_raumfeld_connector_dai[] = { .name = "ak4104", .stream_name = "Playback", .cpu_dai_name = "pxa-ssp-dai.1", .codec_dai_name = "ak4104-hifi", .platform_name = "pxa-pcm-audio", .ops = &raumfeld_ak4104_ops, .codec_name = "ak4104-codec.0", }, DAI_LINK_CS4270, DAI_LINK_AK4104, }; static struct snd_soc_dai_link snd_soc_raumfeld_speaker_dai[] = { .name = "CS4270", .stream_name = "CS4270", .cpu_dai_name = "pxa-ssp-dai.0", .platform_name = "pxa-pcm-audio", .codec_dai_name = "cs4270-hifi", .codec_name = "cs4270-codec.0-0048", .ops = &raumfeld_cs4270_ops, },}; static struct snd_soc_card snd_soc_raumfeld = { .name = "Raumfeld", .dai_link = raumfeld_dai, .suspend_post = raumfeld_line_suspend, .resume_pre = raumfeld_line_resume, .num_links = ARRAY_SIZE(raumfeld_dai), DAI_LINK_CS4270, }; static struct snd_soc_card snd_soc_raumfeld_connector = { .name = "Raumfeld Connector", .dai_link = snd_soc_raumfeld_connector_dai, .num_links = ARRAY_SIZE(snd_soc_raumfeld_connector_dai), .suspend_post = raumfeld_analog_suspend, .resume_pre = raumfeld_analog_resume, }; static struct snd_soc_card snd_soc_raumfeld_speaker = { .name = "Raumfeld Speaker", .dai_link = snd_soc_raumfeld_speaker_dai, .num_links = ARRAY_SIZE(snd_soc_raumfeld_speaker_dai), .suspend_post = raumfeld_analog_suspend, .resume_pre = raumfeld_analog_resume, }; static struct platform_device *raumfeld_audio_device; Loading @@ -271,22 +292,25 @@ static int __init raumfeld_audio_init(void) set_max9485_clk(MAX9485_MCLK_FREQ_122880); /* Register LINE and SPDIF */ /* Register analog device */ raumfeld_audio_device = platform_device_alloc("soc-audio", 0); if (!raumfeld_audio_device) return -ENOMEM; if (machine_is_raumfeld_speaker()) platform_set_drvdata(raumfeld_audio_device, &snd_soc_raumfeld); ret = platform_device_add(raumfeld_audio_device); &snd_soc_raumfeld_speaker); /* no S/PDIF on Speakers */ if (machine_is_raumfeld_speaker()) if (machine_is_raumfeld_connector()) platform_set_drvdata(raumfeld_audio_device, &snd_soc_raumfeld_connector); ret = platform_device_add(raumfeld_audio_device); if (ret < 0) return ret; raumfeld_enable_audio(true); return ret; return 0; } static void __exit raumfeld_audio_exit(void) Loading