brintos

brintos / linux-shallow public Read only

0
0
Text · 1.4 KiB · b02cfcc Raw
49 lines · c
1/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */2/*3 * Copyright (c) 2020 BayLibre, SAS.4 * Author: Jerome Brunet <jbrunet@baylibre.com>5 */6 7#ifndef _MESON_AIU_FIFO_H8#define _MESON_AIU_FIFO_H9 10struct snd_pcm_hardware;11struct snd_soc_component_driver;12struct snd_soc_dai_driver;13struct clk;14struct snd_pcm_ops;15struct snd_pcm_substream;16struct snd_soc_dai;17struct snd_pcm_hw_params;18struct platform_device;19 20struct aiu_fifo {21	const struct snd_pcm_hardware *pcm;22	unsigned int mem_offset;23	unsigned int fifo_block;24	struct clk *pclk;25	int irq;26};27 28int aiu_fifo_dai_probe(struct snd_soc_dai *dai);29int aiu_fifo_dai_remove(struct snd_soc_dai *dai);30 31snd_pcm_uframes_t aiu_fifo_pointer(struct snd_soc_component *component,32				   struct snd_pcm_substream *substream);33 34int aiu_fifo_trigger(struct snd_pcm_substream *substream, int cmd,35		     struct snd_soc_dai *dai);36int aiu_fifo_prepare(struct snd_pcm_substream *substream,37		     struct snd_soc_dai *dai);38int aiu_fifo_hw_params(struct snd_pcm_substream *substream,39		       struct snd_pcm_hw_params *params,40		       struct snd_soc_dai *dai);41int aiu_fifo_startup(struct snd_pcm_substream *substream,42		     struct snd_soc_dai *dai);43void aiu_fifo_shutdown(struct snd_pcm_substream *substream,44		       struct snd_soc_dai *dai);45int aiu_fifo_pcm_new(struct snd_soc_pcm_runtime *rtd,46		     struct snd_soc_dai *dai);47 48#endif /* _MESON_AIU_FIFO_H */49