diff options
author | Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> | 2015-10-26 08:43:41 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-11-16 10:09:29 +0000 |
commit | c7f69ab5364da21a2fc7f01c5bc32a5b5b5fee5d (patch) | |
tree | d8b0b3762e34f25dda36ca7441dc6e7492215201 /sound/soc/sh/rcar/rsnd.h | |
parent | 1b2ca0adf1a0cb3aa766259650eddd25b44486b7 (diff) | |
download | talos-obmc-linux-c7f69ab5364da21a2fc7f01c5bc32a5b5b5fee5d.tar.gz talos-obmc-linux-c7f69ab5364da21a2fc7f01c5bc32a5b5b5fee5d.zip |
ASoC: rsnd: use mod base common method on SSIU
Renesas sound needs many devices
(SSI/SSIU/SRC/CTU/MIX/DVC/CMD/AudioDMAC/AudioDMACpp).
SSI/SRC/CTU/MIX/DVC are implemented as module.
SSI parent, SSIU are implemented as part of SSI
CMD is implemented as part of CTU/MIX/DVC
AudioDMAC/AudioDMACpp are implemented as part of SSI/SRC
It is nice sense that these all devices are implemented as mod.
This patch makes SSIU mod base common method
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sh/rcar/rsnd.h')
-rw-r--r-- | sound/soc/sh/rcar/rsnd.h | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/sound/soc/sh/rcar/rsnd.h b/sound/soc/sh/rcar/rsnd.h index 5286f28de831..81c789f8e9a6 100644 --- a/sound/soc/sh/rcar/rsnd.h +++ b/sound/soc/sh/rcar/rsnd.h @@ -210,6 +210,7 @@ enum rsnd_mod_type { RSND_MOD_CTU, RSND_MOD_CMD, RSND_MOD_SRC, + RSND_MOD_SSIU, RSND_MOD_SSI, RSND_MOD_MAX, }; @@ -450,6 +451,12 @@ struct rsnd_priv { int ssi_nr; /* + * below value will be filled on rsnd_ssiu_probe() + */ + void *ssiu; + int ssiu_nr; + + /* * below value will be filled on rsnd_src_probe() */ void *src; @@ -562,6 +569,17 @@ int rsnd_ssi_use_busif(struct rsnd_dai_stream *io); int __rsnd_ssi_is_pin_sharing(struct rsnd_mod *mod); /* + * R-Car SSIU + */ +int rsnd_ssiu_attach(struct rsnd_dai_stream *io, + struct rsnd_mod *mod); +int rsnd_ssiu_probe(struct platform_device *pdev, + const struct rsnd_of_data *of_data, + struct rsnd_priv *priv); +void rsnd_ssiu_remove(struct platform_device *pdev, + struct rsnd_priv *priv); + +/* * R-Car SRC */ int rsnd_src_probe(struct platform_device *pdev, @@ -573,11 +591,6 @@ struct rsnd_mod *rsnd_src_mod_get(struct rsnd_priv *priv, int id); unsigned int rsnd_src_get_ssi_rate(struct rsnd_priv *priv, struct rsnd_dai_stream *io, struct snd_pcm_runtime *runtime); -int rsnd_src_ssiu_start(struct rsnd_mod *ssi_mod, - struct rsnd_dai_stream *io, - int use_busif); -int rsnd_src_ssiu_stop(struct rsnd_mod *ssi_mod, - struct rsnd_dai_stream *io); /* * R-Car CTU |