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

Commit 0ace8e82 authored by Kyle Yan's avatar Kyle Yan Committed by Gerrit - the friendly Code Review server
Browse files

Merge "ASoC: pcm: Add support for compat mode" into msm-4.8

parents 8656a394 bdc375ea
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -2364,6 +2364,18 @@ static int dpcm_fe_dai_prepare(struct snd_pcm_substream *substream)
	return ret;
}

static int soc_pcm_compat_ioctl(struct snd_pcm_substream *substream,
		     unsigned int cmd, void *arg)
{
	struct snd_soc_pcm_runtime *rtd = substream->private_data;
	struct snd_soc_platform *platform = rtd->platform;

	if (platform->driver->ops->compat_ioctl)
		return platform->driver->ops->compat_ioctl(substream,
			cmd, arg);
	return snd_pcm_lib_ioctl(substream, cmd, arg);
}

static int soc_pcm_ioctl(struct snd_pcm_substream *substream,
		     unsigned int cmd, void *arg)
{
@@ -2822,6 +2834,7 @@ int soc_new_pcm(struct snd_soc_pcm_runtime *rtd, int num)
		rtd->ops.close		= dpcm_fe_dai_close;
		rtd->ops.pointer	= soc_pcm_pointer;
		rtd->ops.ioctl		= soc_pcm_ioctl;
		rtd->ops.compat_ioctl   = soc_pcm_compat_ioctl;
	} else {
		rtd->ops.open		= soc_pcm_open;
		rtd->ops.hw_params	= soc_pcm_hw_params;
@@ -2831,6 +2844,7 @@ int soc_new_pcm(struct snd_soc_pcm_runtime *rtd, int num)
		rtd->ops.close		= soc_pcm_close;
		rtd->ops.pointer	= soc_pcm_pointer;
		rtd->ops.ioctl		= soc_pcm_ioctl;
		rtd->ops.compat_ioctl   = soc_pcm_compat_ioctl;
	}

	if (platform->driver->ops) {