Commit e4295b40 authored by Vladimir Zapolskiy's avatar Vladimir Zapolskiy Committed by Mark Brown
Browse files

ASoC: uda134x: fix bias level setup on initialization



On initialization ADC/DAC are enabled only for UDA1341, that's why
bias_level shall be set to off explicitly, otherwise dapm is
misinformed about bias_level on startup.

Signed-off-by: default avatarVladimir Zapolskiy <vzapolskiy@gmail.com>
Acked-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent cc3202f5
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -519,10 +519,6 @@ static int uda134x_soc_probe(struct platform_device *pdev)
	codec->read = uda134x_read_reg_cache;
	codec->write = uda134x_write;

	if (!pd->is_powered_on_standby) {
		codec->set_bias_level = uda134x_set_bias_level;
	}

	INIT_LIST_HEAD(&codec->dapm_widgets);
	INIT_LIST_HEAD(&codec->dapm_paths);

@@ -533,6 +529,14 @@ static int uda134x_soc_probe(struct platform_device *pdev)

	uda134x_reset(codec);

	if (pd->is_powered_on_standby) {
		codec->set_bias_level = NULL;
		uda134x_set_bias_level(codec, SND_SOC_BIAS_ON);
	} else {
		codec->set_bias_level = uda134x_set_bias_level;
		uda134x_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
	}

	/* register pcms */
	ret = snd_soc_new_pcms(socdev, SNDRV_DEFAULT_IDX1, SNDRV_DEFAULT_STR1);
	if (ret < 0) {