Lines Matching refs:io

89 int rsnd_ssi_use_busif(struct rsnd_dai_stream *io)  in rsnd_ssi_use_busif()  argument
91 struct rsnd_mod *mod = rsnd_io_to_mod_ssi(io); in rsnd_ssi_use_busif()
100 if (rsnd_io_to_mod_src(io)) in rsnd_ssi_use_busif()
126 struct rsnd_dai_stream *io) in rsnd_ssi_master_clk_start() argument
128 struct rsnd_priv *priv = rsnd_io_to_priv(io); in rsnd_ssi_master_clk_start()
129 struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); in rsnd_ssi_master_clk_start()
137 unsigned int rate = rsnd_src_get_ssi_rate(priv, io, runtime); in rsnd_ssi_master_clk_start()
177 struct rsnd_dai_stream *io) in rsnd_ssi_hw_start() argument
179 struct rsnd_priv *priv = rsnd_io_to_priv(io); in rsnd_ssi_hw_start()
180 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_ssi_hw_start()
193 rsnd_ssi_hw_start(ssi_parent, io); in rsnd_ssi_hw_start()
195 rsnd_ssi_master_clk_start(ssi, io); in rsnd_ssi_hw_start()
226 static void rsnd_ssi_hw_stop(struct rsnd_dai_stream *io, struct rsnd_ssi *ssi) in rsnd_ssi_hw_stop() argument
230 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_ssi_hw_stop()
263 rsnd_ssi_hw_stop(io, ssi_parent); in rsnd_ssi_hw_stop()
281 struct rsnd_dai_stream *io, in rsnd_ssi_init() argument
285 struct rsnd_dai *rdai = rsnd_io_to_rdai(io); in rsnd_ssi_init()
286 struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); in rsnd_ssi_init()
319 if (rsnd_io_is_play(io)) in rsnd_ssi_init()
332 struct rsnd_dai_stream *io, in rsnd_ssi_quit() argument
349 struct rsnd_dai_stream *io, in rsnd_ssi_hw_params() argument
373 return rsnd_ssi_hw_params(rsnd_mod_get(ssi_parent), io, in rsnd_ssi_hw_params()
393 struct rsnd_dai_stream *io, in rsnd_ssi_start() argument
398 rsnd_src_ssiu_start(mod, io, rsnd_ssi_use_busif(io)); in rsnd_ssi_start()
400 rsnd_ssi_hw_start(ssi, io); in rsnd_ssi_start()
408 struct rsnd_dai_stream *io, in rsnd_ssi_stop() argument
417 rsnd_ssi_hw_stop(io, ssi); in rsnd_ssi_stop()
419 rsnd_src_ssiu_stop(mod, io); in rsnd_ssi_stop()
425 struct rsnd_dai_stream *io) in __rsnd_ssi_interrupt() argument
436 if (!rsnd_io_is_working(io)) in __rsnd_ssi_interrupt()
443 struct snd_pcm_runtime *runtime = rsnd_io_to_runtime(io); in __rsnd_ssi_interrupt()
445 rsnd_dai_pointer_offset(io, 0)); in __rsnd_ssi_interrupt()
452 if (rsnd_io_is_play(io)) in __rsnd_ssi_interrupt()
457 elapsed = rsnd_dai_pointer_update(io, sizeof(*buf)); in __rsnd_ssi_interrupt()
470 rsnd_ssi_stop(mod, io, priv); in __rsnd_ssi_interrupt()
472 rsnd_ssi_start(mod, io, priv); in __rsnd_ssi_interrupt()
483 rsnd_dai_period_elapsed(io); in __rsnd_ssi_interrupt()
499 struct rsnd_dai_stream *io, in rsnd_ssi_pio_probe() argument
525 struct rsnd_dai_stream *io, in rsnd_ssi_dma_probe() argument
541 io, rsnd_mod_to_dma(mod), in rsnd_ssi_dma_probe()
548 struct rsnd_dai_stream *io, in rsnd_ssi_dma_remove() argument
555 rsnd_dma_quit(io, rsnd_mod_to_dma(mod)); in rsnd_ssi_dma_remove()
564 struct rsnd_dai_stream *io, in rsnd_ssi_fallback() argument
585 struct rsnd_dai_stream *io, in rsnd_ssi_dma_start() argument
590 rsnd_dma_start(io, dma); in rsnd_ssi_dma_start()
592 rsnd_ssi_start(mod, io, priv); in rsnd_ssi_dma_start()
598 struct rsnd_dai_stream *io, in rsnd_ssi_dma_stop() argument
603 rsnd_ssi_stop(mod, io, priv); in rsnd_ssi_dma_stop()
605 rsnd_dma_stop(io, dma); in rsnd_ssi_dma_stop()
610 static struct dma_chan *rsnd_ssi_dma_req(struct rsnd_dai_stream *io, in rsnd_ssi_dma_req() argument
614 int is_play = rsnd_io_is_play(io); in rsnd_ssi_dma_req()
617 if (rsnd_ssi_use_busif(io)) in rsnd_ssi_dma_req()