Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6a9905e5 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branches 'asoc/fix/atmel', 'asoc/fix/cirrus',...

Merge remote-tracking branches 'asoc/fix/atmel', 'asoc/fix/cirrus', 'asoc/fix/da7213', 'asoc/fix/free' and 'asoc/fix/jack' into asoc-linus
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -13861,7 +13861,7 @@ S: Odd fixes
F:	drivers/net/wireless/wl3501*

WOLFSON MICROELECTRONICS DRIVERS
L:	patches@opensource.wolfsonmicro.com
L:	patches@opensource.cirrus.com
T:	git https://github.com/CirrusLogic/linux-drivers.git
W:	https://github.com/CirrusLogic/linux-drivers/wiki
S:	Supported
+9 −0
Original line number Diff line number Diff line
@@ -301,6 +301,14 @@ static int atmel_classd_codec_probe(struct snd_soc_codec *codec)
	return 0;
}

static int atmel_classd_codec_resume(struct snd_soc_codec *codec)
{
	struct snd_soc_card *card = snd_soc_codec_get_drvdata(codec);
	struct atmel_classd *dd = snd_soc_card_get_drvdata(card);

	return regcache_sync(dd->regmap);
}

static struct regmap *atmel_classd_codec_get_remap(struct device *dev)
{
	return dev_get_regmap(dev, NULL);
@@ -308,6 +316,7 @@ static struct regmap *atmel_classd_codec_get_remap(struct device *dev)

static struct snd_soc_codec_driver soc_codec_dev_classd = {
	.probe		= atmel_classd_codec_probe,
	.resume		= atmel_classd_codec_resume,
	.get_regmap	= atmel_classd_codec_get_remap,
	.component_driver = {
		.controls		= atmel_classd_snd_controls,
+1 −1
Original line number Diff line number Diff line
@@ -772,7 +772,7 @@ static int da7213_dai_event(struct snd_soc_dapm_widget *w,
				++i;
				msleep(50);
			}
		} while ((i < DA7213_SRM_CHECK_RETRIES) & (!srm_lock));
		} while ((i < DA7213_SRM_CHECK_RETRIES) && (!srm_lock));

		if (!srm_lock)
			dev_warn(codec->dev, "SRM failed to lock\n");
+1 −1
Original line number Diff line number Diff line
@@ -202,7 +202,7 @@ static int asoc_simple_card_dai_init(struct snd_soc_pcm_runtime *rtd)
	if (ret < 0)
		return ret;

	ret = asoc_simple_card_init_mic(rtd->card, &priv->hp_jack, PREFIX);
	ret = asoc_simple_card_init_mic(rtd->card, &priv->mic_jack, PREFIX);
	if (ret < 0)
		return ret;

+3 −2
Original line number Diff line number Diff line
@@ -2286,6 +2286,9 @@ static int soc_cleanup_card_resources(struct snd_soc_card *card)
	list_for_each_entry(rtd, &card->rtd_list, list)
		flush_delayed_work(&rtd->delayed_work);

	/* free the ALSA card at first; this syncs with pending operations */
	snd_card_free(card->snd_card);

	/* remove and free each DAI */
	soc_remove_dai_links(card);
	soc_remove_pcm_runtimes(card);
@@ -2300,9 +2303,7 @@ static int soc_cleanup_card_resources(struct snd_soc_card *card)
	if (card->remove)
		card->remove(card);

	snd_card_free(card->snd_card);
	return 0;

}

/* removes a socdev */