aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2016-08-01 02:10:54 -0400
committerMark Brown <broonie@kernel.org>2016-08-09 05:38:21 -0400
commit6adcbdcd4b6e8301c3a4c61284e701f87de9a409 (patch)
treeb441cda0688d75027e4f4778c139cbaaa2dc2c3b
parent29b4817d4018df78086157ea3a55c1d9424a7cfc (diff)
ASoC: lpass-platform: don't use snd_soc_pcm_set_drvdata()
snd_soc_pcm_set_drvdata() will set driver data to rtd->dev, but driver data of rtd->dev is already used as "rtd" on soc_post_component_init(). static int soc_post_component_init(xxx) { ... dev_set_drvdata(rtd->dev, rtd); ... } To remove confusion, snd_soc_pcm_set/get_drvdata() should be removed soon. This patch is for it. qcom/lpass-platform.c sets struct lpass_pcm_data to rtd->dev today, but we can replace it to struct lpass_data :: private_data. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/qcom/lpass-platform.c14
-rw-r--r--sound/soc/qcom/lpass.h2
2 files changed, 9 insertions, 7 deletions
diff --git a/sound/soc/qcom/lpass-platform.c b/sound/soc/qcom/lpass-platform.c
index db000c6987a1..a144c14c7169 100644
--- a/sound/soc/qcom/lpass-platform.c
+++ b/sound/soc/qcom/lpass-platform.c
@@ -84,9 +84,9 @@ static int lpass_platform_pcmops_hw_params(struct snd_pcm_substream *substream,
84 struct snd_pcm_hw_params *params) 84 struct snd_pcm_hw_params *params)
85{ 85{
86 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; 86 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data;
87 struct lpass_pcm_data *pcm_data = snd_soc_pcm_get_drvdata(soc_runtime);
88 struct lpass_data *drvdata = 87 struct lpass_data *drvdata =
89 snd_soc_platform_get_drvdata(soc_runtime->platform); 88 snd_soc_platform_get_drvdata(soc_runtime->platform);
89 struct lpass_pcm_data *pcm_data = drvdata->private_data;
90 struct lpass_variant *v = drvdata->variant; 90 struct lpass_variant *v = drvdata->variant;
91 snd_pcm_format_t format = params_format(params); 91 snd_pcm_format_t format = params_format(params);
92 unsigned int channels = params_channels(params); 92 unsigned int channels = params_channels(params);
@@ -177,9 +177,9 @@ static int lpass_platform_pcmops_hw_params(struct snd_pcm_substream *substream,
177static int lpass_platform_pcmops_hw_free(struct snd_pcm_substream *substream) 177static int lpass_platform_pcmops_hw_free(struct snd_pcm_substream *substream)
178{ 178{
179 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; 179 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data;
180 struct lpass_pcm_data *pcm_data = snd_soc_pcm_get_drvdata(soc_runtime);
181 struct lpass_data *drvdata = 180 struct lpass_data *drvdata =
182 snd_soc_platform_get_drvdata(soc_runtime->platform); 181 snd_soc_platform_get_drvdata(soc_runtime->platform);
182 struct lpass_pcm_data *pcm_data = drvdata->private_data;
183 struct lpass_variant *v = drvdata->variant; 183 struct lpass_variant *v = drvdata->variant;
184 unsigned int reg; 184 unsigned int reg;
185 int ret; 185 int ret;
@@ -201,9 +201,9 @@ static int lpass_platform_pcmops_prepare(struct snd_pcm_substream *substream)
201{ 201{
202 struct snd_pcm_runtime *runtime = substream->runtime; 202 struct snd_pcm_runtime *runtime = substream->runtime;
203 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; 203 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data;
204 struct lpass_pcm_data *pcm_data = snd_soc_pcm_get_drvdata(soc_runtime);
205 struct lpass_data *drvdata = 204 struct lpass_data *drvdata =
206 snd_soc_platform_get_drvdata(soc_runtime->platform); 205 snd_soc_platform_get_drvdata(soc_runtime->platform);
206 struct lpass_pcm_data *pcm_data = drvdata->private_data;
207 struct lpass_variant *v = drvdata->variant; 207 struct lpass_variant *v = drvdata->variant;
208 int ret, ch, dir = substream->stream; 208 int ret, ch, dir = substream->stream;
209 209
@@ -255,9 +255,9 @@ static int lpass_platform_pcmops_trigger(struct snd_pcm_substream *substream,
255 int cmd) 255 int cmd)
256{ 256{
257 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; 257 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data;
258 struct lpass_pcm_data *pcm_data = snd_soc_pcm_get_drvdata(soc_runtime);
259 struct lpass_data *drvdata = 258 struct lpass_data *drvdata =
260 snd_soc_platform_get_drvdata(soc_runtime->platform); 259 snd_soc_platform_get_drvdata(soc_runtime->platform);
260 struct lpass_pcm_data *pcm_data = drvdata->private_data;
261 struct lpass_variant *v = drvdata->variant; 261 struct lpass_variant *v = drvdata->variant;
262 int ret, ch, dir = substream->stream; 262 int ret, ch, dir = substream->stream;
263 263
@@ -331,9 +331,9 @@ static snd_pcm_uframes_t lpass_platform_pcmops_pointer(
331 struct snd_pcm_substream *substream) 331 struct snd_pcm_substream *substream)
332{ 332{
333 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; 333 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data;
334 struct lpass_pcm_data *pcm_data = snd_soc_pcm_get_drvdata(soc_runtime);
335 struct lpass_data *drvdata = 334 struct lpass_data *drvdata =
336 snd_soc_platform_get_drvdata(soc_runtime->platform); 335 snd_soc_platform_get_drvdata(soc_runtime->platform);
336 struct lpass_pcm_data *pcm_data = drvdata->private_data;
337 struct lpass_variant *v = drvdata->variant; 337 struct lpass_variant *v = drvdata->variant;
338 unsigned int base_addr, curr_addr; 338 unsigned int base_addr, curr_addr;
339 int ret, ch, dir = substream->stream; 339 int ret, ch, dir = substream->stream;
@@ -483,7 +483,7 @@ static int lpass_platform_pcm_new(struct snd_soc_pcm_runtime *soc_runtime)
483 return -ENOMEM; 483 return -ENOMEM;
484 484
485 data->i2s_port = cpu_dai->driver->id; 485 data->i2s_port = cpu_dai->driver->id;
486 snd_soc_pcm_set_drvdata(soc_runtime, data); 486 drvdata->private_data = data;
487 487
488 psubstream = pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream; 488 psubstream = pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream;
489 if (psubstream) { 489 if (psubstream) {
@@ -570,8 +570,8 @@ static void lpass_platform_pcm_free(struct snd_pcm *pcm)
570 substream = pcm->streams[i].substream; 570 substream = pcm->streams[i].substream;
571 if (substream) { 571 if (substream) {
572 rt = substream->private_data; 572 rt = substream->private_data;
573 data = snd_soc_pcm_get_drvdata(rt);
574 drvdata = snd_soc_platform_get_drvdata(rt->platform); 573 drvdata = snd_soc_platform_get_drvdata(rt->platform);
574 data = drvdata->private_data;
575 575
576 ch = (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) 576 ch = (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
577 ? data->rdma_ch 577 ? data->rdma_ch
diff --git a/sound/soc/qcom/lpass.h b/sound/soc/qcom/lpass.h
index 30714ad1e138..35b3cea8207d 100644
--- a/sound/soc/qcom/lpass.h
+++ b/sound/soc/qcom/lpass.h
@@ -58,6 +58,8 @@ struct lpass_data {
58 /* 8016 specific */ 58 /* 8016 specific */
59 struct clk *pcnoc_mport_clk; 59 struct clk *pcnoc_mport_clk;
60 struct clk *pcnoc_sway_clk; 60 struct clk *pcnoc_sway_clk;
61
62 void *private_data;
61}; 63};
62 64
63/* Vairant data per each SOC */ 65/* Vairant data per each SOC */