Commit 8949b666 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge tag 'asoc-fix-v5.9-rc4' of...

Merge tag 'asoc-fix-v5.9-rc4' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Fixes for v5.9

Most of this is various driver specific fixes, none of which are
terribly exciting in themselves, plus one core fix adding and using a
new DAI lookup function to deal with a lockdep warning.
parents fc19d559 1a5ce48f
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -1193,6 +1193,8 @@ struct snd_soc_pcm_runtime {
	     ((i) < (rtd)->num_cpus + (rtd)->num_codecs) &&		\
		     ((dai) = (rtd)->dais[i]);				\
	     (i)++)
#define for_each_rtd_dais_rollback(rtd, i, dai)		\
	for (; (--(i) >= 0) && ((dai) = (rtd)->dais[i]);)

void snd_soc_close_delayed_work(struct snd_soc_pcm_runtime *rtd);

@@ -1361,6 +1363,8 @@ void snd_soc_unregister_dai(struct snd_soc_dai *dai);

struct snd_soc_dai *snd_soc_find_dai(
	const struct snd_soc_dai_link_component *dlc);
struct snd_soc_dai *snd_soc_find_dai_with_mutex(
	const struct snd_soc_dai_link_component *dlc);

#include <sound/soc-dai.h>

+2 −2
Original line number Diff line number Diff line
@@ -838,8 +838,8 @@ static int max98373_sdw_probe(struct sdw_slave *slave,

	/* Regmap Initialization */
	regmap = devm_regmap_init_sdw(slave, &max98373_sdw_regmap);
	if (!regmap)
		return -EINVAL;
	if (IS_ERR(regmap))
		return PTR_ERR(regmap);

	return max98373_init(slave, regmap);
}
+7 −0
Original line number Diff line number Diff line
@@ -306,6 +306,13 @@ static int pcm3168a_set_dai_sysclk(struct snd_soc_dai *dai,
	struct pcm3168a_priv *pcm3168a = snd_soc_component_get_drvdata(dai->component);
	int ret;

	/*
	 * Some sound card sets 0 Hz as reset,
	 * but it is impossible to set. Ignore it here
	 */
	if (freq == 0)
		return 0;

	if (freq > PCM3168A_MAX_SYSCLK)
		return -EINVAL;

+2 −2
Original line number Diff line number Diff line
@@ -684,8 +684,8 @@ static int rt1308_sdw_probe(struct sdw_slave *slave,

	/* Regmap Initialization */
	regmap = devm_regmap_init_sdw(slave, &rt1308_sdw_regmap);
	if (!regmap)
		return -EINVAL;
	if (IS_ERR(regmap))
		return PTR_ERR(regmap);

	rt1308_sdw_init(&slave->dev, regmap, slave);

+2 −2
Original line number Diff line number Diff line
@@ -452,8 +452,8 @@ static int rt700_sdw_probe(struct sdw_slave *slave,

	/* Regmap Initialization */
	sdw_regmap = devm_regmap_init_sdw(slave, &rt700_sdw_regmap);
	if (!sdw_regmap)
		return -EINVAL;
	if (IS_ERR(sdw_regmap))
		return PTR_ERR(sdw_regmap);

	regmap = devm_regmap_init(&slave->dev, NULL,
		&slave->dev, &rt700_regmap);
Loading