Merge remote-tracking branches 'asoc/topic/simple', 'asoc/topic/ssm2518', 'asoc/topic/ssm2602', 'asoc/topic/ssm4567' and 'asoc/topic/sta32x' into asoc-next
This commit is contained in:
commit
19726b0ed5
@ -510,7 +510,7 @@ static int ssm2518_set_bias_level(struct snd_soc_codec *codec,
|
||||
case SND_SOC_BIAS_PREPARE:
|
||||
break;
|
||||
case SND_SOC_BIAS_STANDBY:
|
||||
if (codec->dapm.bias_level == SND_SOC_BIAS_OFF)
|
||||
if (snd_soc_codec_get_bias_level(codec) == SND_SOC_BIAS_OFF)
|
||||
ret = ssm2518_set_power(ssm2518, true);
|
||||
break;
|
||||
case SND_SOC_BIAS_OFF:
|
||||
|
@ -523,8 +523,8 @@ static int ssm2602_resume(struct snd_soc_codec *codec)
|
||||
|
||||
static int ssm2602_codec_probe(struct snd_soc_codec *codec)
|
||||
{
|
||||
struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec);
|
||||
struct ssm2602_priv *ssm2602 = snd_soc_codec_get_drvdata(codec);
|
||||
struct snd_soc_dapm_context *dapm = &codec->dapm;
|
||||
int ret;
|
||||
|
||||
regmap_update_bits(ssm2602->regmap, SSM2602_LOUT1V,
|
||||
@ -548,7 +548,7 @@ static int ssm2602_codec_probe(struct snd_soc_codec *codec)
|
||||
|
||||
static int ssm2604_codec_probe(struct snd_soc_codec *codec)
|
||||
{
|
||||
struct snd_soc_dapm_context *dapm = &codec->dapm;
|
||||
struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec);
|
||||
int ret;
|
||||
|
||||
ret = snd_soc_dapm_new_controls(dapm, ssm2604_dapm_widgets,
|
||||
|
@ -353,7 +353,7 @@ static int ssm4567_set_bias_level(struct snd_soc_codec *codec,
|
||||
case SND_SOC_BIAS_PREPARE:
|
||||
break;
|
||||
case SND_SOC_BIAS_STANDBY:
|
||||
if (codec->dapm.bias_level == SND_SOC_BIAS_OFF)
|
||||
if (snd_soc_codec_get_bias_level(codec) == SND_SOC_BIAS_OFF)
|
||||
ret = ssm4567_set_power(ssm4567, true);
|
||||
break;
|
||||
case SND_SOC_BIAS_OFF:
|
||||
|
@ -307,6 +307,7 @@ static int asoc_simple_card_dai_link_of(struct device_node *node,
|
||||
struct snd_soc_dai_link *dai_link = simple_priv_to_link(priv, idx);
|
||||
struct simple_dai_props *dai_props = simple_priv_to_props(priv, idx);
|
||||
struct device_node *cpu = NULL;
|
||||
struct device_node *plat = NULL;
|
||||
struct device_node *codec = NULL;
|
||||
char *name;
|
||||
char prop[128];
|
||||
@ -320,6 +321,9 @@ static int asoc_simple_card_dai_link_of(struct device_node *node,
|
||||
snprintf(prop, sizeof(prop), "%scpu", prefix);
|
||||
cpu = of_get_child_by_name(node, prop);
|
||||
|
||||
snprintf(prop, sizeof(prop), "%splat", prefix);
|
||||
plat = of_get_child_by_name(node, prop);
|
||||
|
||||
snprintf(prop, sizeof(prop), "%scodec", prefix);
|
||||
codec = of_get_child_by_name(node, prop);
|
||||
|
||||
@ -352,8 +356,16 @@ static int asoc_simple_card_dai_link_of(struct device_node *node,
|
||||
goto dai_link_of_err;
|
||||
}
|
||||
|
||||
/* Simple Card assumes platform == cpu */
|
||||
dai_link->platform_of_node = dai_link->cpu_of_node;
|
||||
if (plat) {
|
||||
struct of_phandle_args args;
|
||||
|
||||
ret = of_parse_phandle_with_args(plat, "sound-dai",
|
||||
"#sound-dai-cells", 0, &args);
|
||||
dai_link->platform_of_node = args.np;
|
||||
} else {
|
||||
/* Assumes platform == cpu */
|
||||
dai_link->platform_of_node = dai_link->cpu_of_node;
|
||||
}
|
||||
|
||||
/* DAI link name is created from CPU/CODEC dai name */
|
||||
name = devm_kzalloc(dev,
|
||||
|
Loading…
Reference in New Issue
Block a user