cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

aiu-fifo.h (1485B)


      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_H
      8#define _MESON_AIU_FIFO_H
      9
     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	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_hw_free(struct snd_pcm_substream *substream,
     42		     struct snd_soc_dai *dai);
     43int aiu_fifo_startup(struct snd_pcm_substream *substream,
     44		     struct snd_soc_dai *dai);
     45void aiu_fifo_shutdown(struct snd_pcm_substream *substream,
     46		       struct snd_soc_dai *dai);
     47int aiu_fifo_pcm_new(struct snd_soc_pcm_runtime *rtd,
     48		     struct snd_soc_dai *dai);
     49
     50#endif /* _MESON_AIU_FIFO_H */