| From a309e856ed7e621886a7aed78e2a759ac08e6f75 Mon Sep 17 00:00:00 2001 |
| From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Date: Thu, 8 May 2014 17:44:29 -0700 |
| Subject: ASoC: rsnd: remove duplicate parameter from rsnd_mod_ops |
| |
| Now, it can get rsnd_dai_stream pointer from rsnd_mod. |
| Remove duplicate parameter from rsnd_mod_ops |
| |
| Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
| Signed-off-by: Mark Brown <broonie@linaro.org> |
| (cherry picked from commit b42fccf69cd7153d1158c85137ec718d7309e074) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| sound/soc/sh/rcar/core.c | 10 +++--- |
| sound/soc/sh/rcar/rsnd.h | 24 +++++-------- |
| sound/soc/sh/rcar/src.c | 91 ++++++++++++++++++++---------------------------- |
| sound/soc/sh/rcar/ssi.c | 34 ++++++++---------- |
| 4 files changed, 65 insertions(+), 94 deletions(-) |
| |
| diff --git a/sound/soc/sh/rcar/core.c b/sound/soc/sh/rcar/core.c |
| index c3a5035e2459..798c7cc8d8be 100644 |
| --- a/sound/soc/sh/rcar/core.c |
| +++ b/sound/soc/sh/rcar/core.c |
| @@ -337,19 +337,19 @@ u32 rsnd_get_adinr(struct rsnd_mod *mod) |
| /* |
| * rsnd_dai functions |
| */ |
| -#define __rsnd_mod_call(mod, func, rdai, io) \ |
| +#define __rsnd_mod_call(mod, func, rdai) \ |
| ({ \ |
| struct rsnd_priv *priv = rsnd_mod_to_priv(mod); \ |
| struct device *dev = rsnd_priv_to_dev(priv); \ |
| dev_dbg(dev, "%s [%d] %s\n", \ |
| rsnd_mod_name(mod), rsnd_mod_id(mod), #func); \ |
| - (mod)->ops->func(mod, rdai, io); \ |
| + (mod)->ops->func(mod, rdai); \ |
| }) |
| |
| -#define rsnd_mod_call(mod, func, rdai, io) \ |
| +#define rsnd_mod_call(mod, func, rdai) \ |
| (!(mod) ? -ENODEV : \ |
| !((mod)->ops->func) ? 0 : \ |
| - __rsnd_mod_call(mod, func, (rdai), (io))) |
| + __rsnd_mod_call(mod, func, (rdai))) |
| |
| #define rsnd_dai_call(rdai, io, fn) \ |
| ({ \ |
| @@ -359,7 +359,7 @@ u32 rsnd_get_adinr(struct rsnd_mod *mod) |
| mod = (io)->mod[i]; \ |
| if (!mod) \ |
| continue; \ |
| - ret = rsnd_mod_call(mod, fn, (rdai), (io)); \ |
| + ret = rsnd_mod_call(mod, fn, (rdai)); \ |
| if (ret < 0) \ |
| break; \ |
| } \ |
| diff --git a/sound/soc/sh/rcar/rsnd.h b/sound/soc/sh/rcar/rsnd.h |
| index fee3ec21aaeb..6156ceebd58b 100644 |
| --- a/sound/soc/sh/rcar/rsnd.h |
| +++ b/sound/soc/sh/rcar/rsnd.h |
| @@ -172,23 +172,17 @@ enum rsnd_mod_type { |
| struct rsnd_mod_ops { |
| char *name; |
| int (*probe)(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| int (*remove)(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| int (*init)(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| int (*quit)(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| int (*start)(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| int (*stop)(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| }; |
| |
| struct rsnd_dai_stream; |
| @@ -365,11 +359,9 @@ unsigned int rsnd_src_get_ssi_rate(struct rsnd_priv *priv, |
| struct rsnd_dai_stream *io, |
| struct snd_pcm_runtime *runtime); |
| int rsnd_src_ssi_mode_init(struct rsnd_mod *ssi_mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| int rsnd_src_enable_ssi_irq(struct rsnd_mod *ssi_mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io); |
| + struct rsnd_dai *rdai); |
| |
| #define rsnd_src_nr(priv) ((priv)->src_nr) |
| |
| diff --git a/sound/soc/sh/rcar/src.c b/sound/soc/sh/rcar/src.c |
| index 60e966d22c9e..2a0f7e63ffc8 100644 |
| --- a/sound/soc/sh/rcar/src.c |
| +++ b/sound/soc/sh/rcar/src.c |
| @@ -105,9 +105,9 @@ struct rsnd_src { |
| * Gen1/Gen2 common functions |
| */ |
| int rsnd_src_ssi_mode_init(struct rsnd_mod *ssi_mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(ssi_mod); |
| struct rsnd_mod *src_mod = rsnd_io_to_mod_src(io); |
| int ssi_id = rsnd_mod_id(ssi_mod); |
| |
| @@ -145,8 +145,7 @@ int rsnd_src_ssi_mode_init(struct rsnd_mod *ssi_mod, |
| } |
| |
| int rsnd_src_enable_ssi_irq(struct rsnd_mod *ssi_mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_priv *priv = rsnd_mod_to_priv(ssi_mod); |
| |
| @@ -182,9 +181,9 @@ unsigned int rsnd_src_get_ssi_rate(struct rsnd_priv *priv, |
| } |
| |
| static int rsnd_src_set_convert_rate(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| u32 convert_rate = rsnd_src_convert_rate(src); |
| @@ -221,8 +220,7 @@ static int rsnd_src_set_convert_rate(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_init(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| |
| @@ -232,8 +230,7 @@ static int rsnd_src_init(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_quit(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| |
| @@ -243,8 +240,7 @@ static int rsnd_src_quit(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_start(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| |
| @@ -262,8 +258,7 @@ static int rsnd_src_start(struct rsnd_mod *mod, |
| |
| |
| static int rsnd_src_stop(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| |
| @@ -281,9 +276,9 @@ static struct rsnd_mod_ops rsnd_src_non_ops = { |
| * Gen1 functions |
| */ |
| static int rsnd_src_set_route_gen1(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| struct src_route_config { |
| u32 mask; |
| int shift; |
| @@ -319,9 +314,9 @@ static int rsnd_src_set_route_gen1(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_set_convert_timing_gen1(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| struct rsnd_priv *priv = rsnd_mod_to_priv(mod); |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); |
| @@ -378,12 +373,11 @@ static int rsnd_src_set_convert_timing_gen1(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_set_convert_rate_gen1(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| int ret; |
| |
| - ret = rsnd_src_set_convert_rate(mod, rdai, io); |
| + ret = rsnd_src_set_convert_rate(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| @@ -400,24 +394,23 @@ static int rsnd_src_set_convert_rate_gen1(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_init_gen1(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| int ret; |
| |
| - ret = rsnd_src_init(mod, rdai, io); |
| + ret = rsnd_src_init(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| - ret = rsnd_src_set_route_gen1(mod, rdai, io); |
| + ret = rsnd_src_set_route_gen1(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| - ret = rsnd_src_set_convert_rate_gen1(mod, rdai, io); |
| + ret = rsnd_src_set_convert_rate_gen1(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| - ret = rsnd_src_set_convert_timing_gen1(mod, rdai, io); |
| + ret = rsnd_src_set_convert_timing_gen1(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| @@ -425,25 +418,23 @@ static int rsnd_src_init_gen1(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_start_gen1(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| int id = rsnd_mod_id(mod); |
| |
| rsnd_mod_bset(mod, SRC_ROUTE_CTRL, (1 << id), (1 << id)); |
| |
| - return rsnd_src_start(mod, rdai, io); |
| + return rsnd_src_start(mod, rdai); |
| } |
| |
| static int rsnd_src_stop_gen1(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| int id = rsnd_mod_id(mod); |
| |
| rsnd_mod_bset(mod, SRC_ROUTE_CTRL, (1 << id), 0); |
| |
| - return rsnd_src_stop(mod, rdai, io); |
| + return rsnd_src_stop(mod, rdai); |
| } |
| |
| static struct rsnd_mod_ops rsnd_src_gen1_ops = { |
| @@ -458,12 +449,11 @@ static struct rsnd_mod_ops rsnd_src_gen1_ops = { |
| * Gen2 functions |
| */ |
| static int rsnd_src_set_convert_rate_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| int ret; |
| |
| - ret = rsnd_src_set_convert_rate(mod, rdai, io); |
| + ret = rsnd_src_set_convert_rate(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| @@ -479,9 +469,9 @@ static int rsnd_src_set_convert_rate_gen2(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_set_convert_timing_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| u32 convert_rate = rsnd_src_convert_rate(src); |
| @@ -498,8 +488,7 @@ static int rsnd_src_set_convert_timing_gen2(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_probe_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_priv *priv = rsnd_mod_to_priv(mod); |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| @@ -517,8 +506,7 @@ static int rsnd_src_probe_gen2(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_remove_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| rsnd_dma_quit(rsnd_mod_to_priv(mod), rsnd_mod_to_dma(mod)); |
| |
| @@ -526,20 +514,19 @@ static int rsnd_src_remove_gen2(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_init_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| int ret; |
| |
| - ret = rsnd_src_init(mod, rdai, io); |
| + ret = rsnd_src_init(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| - ret = rsnd_src_set_convert_rate_gen2(mod, rdai, io); |
| + ret = rsnd_src_set_convert_rate_gen2(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| - ret = rsnd_src_set_convert_timing_gen2(mod, rdai, io); |
| + ret = rsnd_src_set_convert_timing_gen2(mod, rdai); |
| if (ret < 0) |
| return ret; |
| |
| @@ -547,8 +534,7 @@ static int rsnd_src_init_gen2(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_src_start_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| |
| @@ -557,12 +543,11 @@ static int rsnd_src_start_gen2(struct rsnd_mod *mod, |
| rsnd_mod_write(mod, SSI_CTRL, 0x1); |
| rsnd_mod_write(mod, SRC_CTRL, 0x11); |
| |
| - return rsnd_src_start(mod, rdai, io); |
| + return rsnd_src_start(mod, rdai); |
| } |
| |
| static int rsnd_src_stop_gen2(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_src *src = rsnd_mod_to_src(mod); |
| |
| @@ -571,7 +556,7 @@ static int rsnd_src_stop_gen2(struct rsnd_mod *mod, |
| |
| rsnd_dma_stop(rsnd_mod_to_dma(&src->mod)); |
| |
| - return rsnd_src_stop(mod, rdai, io); |
| + return rsnd_src_stop(mod, rdai); |
| } |
| |
| static struct rsnd_mod_ops rsnd_src_gen2_ops = { |
| diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c |
| index 3a088e569921..36654bd4e428 100644 |
| --- a/sound/soc/sh/rcar/ssi.c |
| +++ b/sound/soc/sh/rcar/ssi.c |
| @@ -240,10 +240,10 @@ static void rsnd_ssi_hw_stop(struct rsnd_ssi *ssi, |
| * SSI mod common functions |
| */ |
| static int rsnd_ssi_init(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); |
| u32 cr; |
| |
| @@ -287,14 +287,13 @@ static int rsnd_ssi_init(struct rsnd_mod *mod, |
| ssi->cr_own = cr; |
| ssi->err = -1; /* ignore 1st error */ |
| |
| - rsnd_src_ssi_mode_init(mod, rdai, io); |
| + rsnd_src_ssi_mode_init(mod, rdai); |
| |
| return 0; |
| } |
| |
| static int rsnd_ssi_quit(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| struct rsnd_priv *priv = rsnd_mod_to_priv(mod); |
| @@ -359,8 +358,7 @@ static irqreturn_t rsnd_ssi_pio_interrupt(int irq, void *data) |
| } |
| |
| static int rsnd_ssi_pio_probe(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_priv *priv = rsnd_mod_to_priv(mod); |
| struct device *dev = rsnd_priv_to_dev(priv); |
| @@ -379,15 +377,15 @@ static int rsnd_ssi_pio_probe(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_ssi_pio_start(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| |
| /* enable PIO IRQ */ |
| ssi->cr_etc = UIEN | OIEN | DIEN; |
| |
| - rsnd_src_enable_ssi_irq(mod, rdai, io); |
| + rsnd_src_enable_ssi_irq(mod, rdai); |
| |
| rsnd_ssi_hw_start(ssi, rdai, io); |
| |
| @@ -395,8 +393,7 @@ static int rsnd_ssi_pio_start(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_ssi_pio_stop(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| |
| @@ -417,8 +414,7 @@ static struct rsnd_mod_ops rsnd_ssi_pio_ops = { |
| }; |
| |
| static int rsnd_ssi_dma_probe(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_priv *priv = rsnd_mod_to_priv(mod); |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| @@ -438,8 +434,7 @@ static int rsnd_ssi_dma_probe(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_ssi_dma_remove(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| rsnd_dma_quit(rsnd_mod_to_priv(mod), rsnd_mod_to_dma(mod)); |
| |
| @@ -447,11 +442,11 @@ static int rsnd_ssi_dma_remove(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_ssi_dma_start(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| struct rsnd_dma *dma = rsnd_mod_to_dma(&ssi->mod); |
| + struct rsnd_dai_stream *io = rsnd_mod_to_io(mod); |
| |
| /* enable DMA transfer */ |
| ssi->cr_etc = DMEN; |
| @@ -468,8 +463,7 @@ static int rsnd_ssi_dma_start(struct rsnd_mod *mod, |
| } |
| |
| static int rsnd_ssi_dma_stop(struct rsnd_mod *mod, |
| - struct rsnd_dai *rdai, |
| - struct rsnd_dai_stream *io) |
| + struct rsnd_dai *rdai) |
| { |
| struct rsnd_ssi *ssi = rsnd_mod_to_ssi(mod); |
| struct rsnd_dma *dma = rsnd_mod_to_dma(&ssi->mod); |
| -- |
| 2.1.2 |
| |