Commit ca66e580 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull sound fixes from Takashi Iwai:
 "A few more last-minute fixes for 6.1 that have been gathered in the
  last week; nothing looks too worrisome, mostly device-specific small
  fixes, including the ABI fix for ASoC SOF"

* tag 'sound-6.1-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ASoC: soc-pcm: Add NULL check in BE reparenting
  ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event
  ASoC: SOF: dai: move AMD_HS to end of list to restore backwards-compatibility
  ASoC: max98373: Add checks for devm_kcalloc
  ASoC: rt711-sdca: fix the latency time of clock stop prepare state machine transitions
  ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open()
  ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove
  ASoC: hdac_hda: fix hda pcm buffer overflow issue
  ASoC: stm32: i2s: remove irqf_oneshot flag
  ASoC: wm8962: Wait for updated value of WM8962_CLOCKING1 register
parents 6fe0e074 ecae4c89
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -84,8 +84,8 @@ enum sof_ipc_dai_type {
	SOF_DAI_AMD_BT,			/**< AMD ACP BT*/
	SOF_DAI_AMD_SP,			/**< AMD ACP SP */
	SOF_DAI_AMD_DMIC,		/**< AMD ACP DMIC */
	SOF_DAI_AMD_HS,			/**< Amd HS */
	SOF_DAI_MEDIATEK_AFE,		/**< Mediatek AFE */
	SOF_DAI_AMD_HS,			/**< Amd HS */
};

/* general purpose DAI configuration */
+7 −4
Original line number Diff line number Diff line
@@ -113,15 +113,19 @@ EXPORT_SYMBOL(snd_seq_dump_var_event);
 * expand the variable length event to linear buffer space.
 */

static int seq_copy_in_kernel(char **bufptr, const void *src, int size)
static int seq_copy_in_kernel(void *ptr, void *src, int size)
{
	char **bufptr = ptr;

	memcpy(*bufptr, src, size);
	*bufptr += size;
	return 0;
}

static int seq_copy_in_user(char __user **bufptr, const void *src, int size)
static int seq_copy_in_user(void *ptr, void *src, int size)
{
	char __user **bufptr = ptr;

	if (copy_to_user(*bufptr, src, size))
		return -EFAULT;
	*bufptr += size;
@@ -151,8 +155,7 @@ int snd_seq_expand_var_event(const struct snd_seq_event *event, int count, char
		return newlen;
	}
	err = snd_seq_dump_var_event(event,
				     in_kernel ? (snd_seq_dump_func_t)seq_copy_in_kernel :
				     (snd_seq_dump_func_t)seq_copy_in_user,
				     in_kernel ? seq_copy_in_kernel : seq_copy_in_user,
				     &buf);
	return err < 0 ? err : newlen;
}
+2 −2
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ enum {
	HDAC_HDMI_1_DAI_ID,
	HDAC_HDMI_2_DAI_ID,
	HDAC_HDMI_3_DAI_ID,
	HDAC_LAST_DAI_ID = HDAC_HDMI_3_DAI_ID,
	HDAC_DAI_ID_NUM
};

struct hdac_hda_pcm {
@@ -24,7 +24,7 @@ struct hdac_hda_pcm {

struct hdac_hda_priv {
	struct hda_codec *codec;
	struct hdac_hda_pcm pcm[HDAC_LAST_DAI_ID];
	struct hdac_hda_pcm pcm[HDAC_DAI_ID_NUM];
	bool need_display_power;
};

+4 −0
Original line number Diff line number Diff line
@@ -549,6 +549,10 @@ static int max98373_i2c_probe(struct i2c_client *i2c)
	max98373->cache = devm_kcalloc(&i2c->dev, max98373->cache_num,
				       sizeof(*max98373->cache),
				       GFP_KERNEL);
	if (!max98373->cache) {
		ret = -ENOMEM;
		return ret;
	}

	for (i = 0; i < max98373->cache_num; i++)
		max98373->cache[i].reg = max98373_i2c_cache_reg[i];
+1 −1
Original line number Diff line number Diff line
@@ -230,7 +230,7 @@ static int rt711_sdca_read_prop(struct sdw_slave *slave)
	}

	/* set the timeout values */
	prop->clk_stop_timeout = 20;
	prop->clk_stop_timeout = 700;

	/* wake-up event */
	prop->wake_capable = 1;
Loading