Commit f58f0cba authored by Mark Brown's avatar Mark Brown

Merge remote-tracking branches 'asoc/fix/axi', 'asoc/fix/cs4265',...

Merge remote-tracking branches 'asoc/fix/axi', 'asoc/fix/cs4265', 'asoc/fix/da732x', 'asoc/fix/omap', 'asoc/fix/rsnd', 'asoc/fix/rt5640', 'asoc/fix/rt5677', 'asoc/fix/simple' and 'asoc/fix/tegra' into asoc-linus
ADI AXI-SPDIF controller ADI AXI-SPDIF controller
Required properties: Required properties:
- compatible : Must be "adi,axi-spdif-1.00.a" - compatible : Must be "adi,axi-spdif-tx-1.00.a"
- reg : Must contain SPDIF core's registers location and length - reg : Must contain SPDIF core's registers location and length
- clocks : Pairs of phandle and specifier referencing the controller's clocks. - clocks : Pairs of phandle and specifier referencing the controller's clocks.
The controller expects two clocks, the clock used for the AXI interface and The controller expects two clocks, the clock used for the AXI interface and
......
...@@ -282,10 +282,10 @@ static const struct cs4265_clk_para clk_map_table[] = { ...@@ -282,10 +282,10 @@ static const struct cs4265_clk_para clk_map_table[] = {
/*64k*/ /*64k*/
{8192000, 64000, 1, 0}, {8192000, 64000, 1, 0},
{1228800, 64000, 1, 1}, {12288000, 64000, 1, 1},
{1693440, 64000, 1, 2}, {16934400, 64000, 1, 2},
{2457600, 64000, 1, 3}, {24576000, 64000, 1, 3},
{3276800, 64000, 1, 4}, {32768000, 64000, 1, 4},
/* 88.2k */ /* 88.2k */
{11289600, 88200, 1, 0}, {11289600, 88200, 1, 0},
...@@ -435,10 +435,10 @@ static int cs4265_pcm_hw_params(struct snd_pcm_substream *substream, ...@@ -435,10 +435,10 @@ static int cs4265_pcm_hw_params(struct snd_pcm_substream *substream,
index = cs4265_get_clk_index(cs4265->sysclk, params_rate(params)); index = cs4265_get_clk_index(cs4265->sysclk, params_rate(params));
if (index >= 0) { if (index >= 0) {
snd_soc_update_bits(codec, CS4265_ADC_CTL, snd_soc_update_bits(codec, CS4265_ADC_CTL,
CS4265_ADC_FM, clk_map_table[index].fm_mode); CS4265_ADC_FM, clk_map_table[index].fm_mode << 6);
snd_soc_update_bits(codec, CS4265_MCLK_FREQ, snd_soc_update_bits(codec, CS4265_MCLK_FREQ,
CS4265_MCLK_FREQ_MASK, CS4265_MCLK_FREQ_MASK,
clk_map_table[index].mclkdiv); clk_map_table[index].mclkdiv << 4);
} else { } else {
dev_err(codec->dev, "can't get correct mclk\n"); dev_err(codec->dev, "can't get correct mclk\n");
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
*/ */
#ifndef __DA732X_H_ #ifndef __DA732X_H_
#define __DA732X_H #define __DA732X_H_
#include <sound/soc.h> #include <sound/soc.h>
......
...@@ -2059,6 +2059,7 @@ static struct snd_soc_codec_driver soc_codec_dev_rt5640 = { ...@@ -2059,6 +2059,7 @@ static struct snd_soc_codec_driver soc_codec_dev_rt5640 = {
static const struct regmap_config rt5640_regmap = { static const struct regmap_config rt5640_regmap = {
.reg_bits = 8, .reg_bits = 8,
.val_bits = 16, .val_bits = 16,
.use_single_rw = true,
.max_register = RT5640_VENDOR_ID2 + 1 + (ARRAY_SIZE(rt5640_ranges) * .max_register = RT5640_VENDOR_ID2 + 1 + (ARRAY_SIZE(rt5640_ranges) *
RT5640_PR_SPACING), RT5640_PR_SPACING),
......
...@@ -2135,10 +2135,10 @@ static const struct snd_soc_dapm_route rt5677_dapm_routes[] = { ...@@ -2135,10 +2135,10 @@ static const struct snd_soc_dapm_route rt5677_dapm_routes[] = {
{ "BST2", NULL, "IN2P" }, { "BST2", NULL, "IN2P" },
{ "BST2", NULL, "IN2N" }, { "BST2", NULL, "IN2N" },
{ "IN1P", NULL, "micbias1" }, { "IN1P", NULL, "MICBIAS1" },
{ "IN1N", NULL, "micbias1" }, { "IN1N", NULL, "MICBIAS1" },
{ "IN2P", NULL, "micbias1" }, { "IN2P", NULL, "MICBIAS1" },
{ "IN2N", NULL, "micbias1" }, { "IN2N", NULL, "MICBIAS1" },
{ "ADC 1", NULL, "BST1" }, { "ADC 1", NULL, "BST1" },
{ "ADC 1", NULL, "ADC 1 power" }, { "ADC 1", NULL, "ADC 1 power" },
......
...@@ -481,12 +481,19 @@ static int asoc_simple_card_probe(struct platform_device *pdev) ...@@ -481,12 +481,19 @@ static int asoc_simple_card_probe(struct platform_device *pdev)
snd_soc_card_set_drvdata(&priv->snd_card, priv); snd_soc_card_set_drvdata(&priv->snd_card, priv);
ret = devm_snd_soc_register_card(&pdev->dev, &priv->snd_card); ret = devm_snd_soc_register_card(&pdev->dev, &priv->snd_card);
if (ret >= 0)
return ret;
err: err:
asoc_simple_card_unref(pdev); asoc_simple_card_unref(pdev);
return ret; return ret;
} }
static int asoc_simple_card_remove(struct platform_device *pdev)
{
return asoc_simple_card_unref(pdev);
}
static const struct of_device_id asoc_simple_of_match[] = { static const struct of_device_id asoc_simple_of_match[] = {
{ .compatible = "simple-audio-card", }, { .compatible = "simple-audio-card", },
{}, {},
...@@ -500,6 +507,7 @@ static struct platform_driver asoc_simple_card = { ...@@ -500,6 +507,7 @@ static struct platform_driver asoc_simple_card = {
.of_match_table = asoc_simple_of_match, .of_match_table = asoc_simple_of_match,
}, },
.probe = asoc_simple_card_probe, .probe = asoc_simple_card_probe,
.remove = asoc_simple_card_remove,
}; };
module_platform_driver(asoc_simple_card); module_platform_driver(asoc_simple_card);
......
...@@ -260,7 +260,7 @@ static struct snd_soc_dai_link omap_twl4030_dai_links[] = { ...@@ -260,7 +260,7 @@ static struct snd_soc_dai_link omap_twl4030_dai_links[] = {
.stream_name = "TWL4030 Voice", .stream_name = "TWL4030 Voice",
.cpu_dai_name = "omap-mcbsp.3", .cpu_dai_name = "omap-mcbsp.3",
.codec_dai_name = "twl4030-voice", .codec_dai_name = "twl4030-voice",
.platform_name = "omap-mcbsp.2", .platform_name = "omap-mcbsp.3",
.codec_name = "twl4030-codec", .codec_name = "twl4030-codec",
.dai_fmt = SND_SOC_DAIFMT_DSP_A | SND_SOC_DAIFMT_IB_NF | .dai_fmt = SND_SOC_DAIFMT_DSP_A | SND_SOC_DAIFMT_IB_NF |
SND_SOC_DAIFMT_CBM_CFM, SND_SOC_DAIFMT_CBM_CFM,
......
...@@ -247,7 +247,7 @@ rsnd_gen2_dma_addr(struct rsnd_priv *priv, ...@@ -247,7 +247,7 @@ rsnd_gen2_dma_addr(struct rsnd_priv *priv,
}; };
/* it shouldn't happen */ /* it shouldn't happen */
if (use_dvc & !use_src) if (use_dvc && !use_src)
dev_err(dev, "DVC is selected without SRC\n"); dev_err(dev, "DVC is selected without SRC\n");
/* use SSIU or SSI ? */ /* use SSIU or SSI ? */
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
*/ */
#ifndef __TEGRA_ASOC_UTILS_H__ #ifndef __TEGRA_ASOC_UTILS_H__
#define __TEGRA_ASOC_UTILS_H_ #define __TEGRA_ASOC_UTILS_H__
struct clk; struct clk;
struct device; struct device;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment