#include <linux/pm_runtime.h>
#include <sound/pcm_params.h>
#include <sound/sof.h>
#include <trace/events/sof.h>
#include "sof-of-dev.h"
#include "sof-priv.h"
#include "sof-audio.h"
#include "sof-utils.h"
#include "ops.h"
static int create_page_table(struct snd_soc_component *component,
struct snd_pcm_substream *substream,
unsigned char *dma_area, size_t size)
{ … }
static void snd_sof_pcm_period_elapsed_work(struct work_struct *work)
{ … }
void snd_sof_pcm_init_elapsed_work(struct work_struct *work)
{ … }
void snd_sof_pcm_period_elapsed(struct snd_pcm_substream *substream)
{ … }
EXPORT_SYMBOL(…);
static int
sof_pcm_setup_connected_widgets(struct snd_sof_dev *sdev, struct snd_soc_pcm_runtime *rtd,
struct snd_sof_pcm *spcm, struct snd_pcm_hw_params *params,
struct snd_sof_platform_stream_params *platform_params, int dir)
{ … }
static int sof_pcm_hw_params(struct snd_soc_component *component,
struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *params)
{ … }
static int sof_pcm_hw_free(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
static int sof_pcm_prepare(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
static int sof_pcm_trigger(struct snd_soc_component *component,
struct snd_pcm_substream *substream, int cmd)
{ … }
static snd_pcm_uframes_t sof_pcm_pointer(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
static int sof_pcm_open(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
static int sof_pcm_close(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
static int sof_pcm_new(struct snd_soc_component *component,
struct snd_soc_pcm_runtime *rtd)
{ … }
int sof_pcm_dai_link_fixup(struct snd_soc_pcm_runtime *rtd, struct snd_pcm_hw_params *params)
{ … }
EXPORT_SYMBOL(…);
static int sof_pcm_probe(struct snd_soc_component *component)
{ … }
static void sof_pcm_remove(struct snd_soc_component *component)
{ … }
static int sof_pcm_ack(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
static snd_pcm_sframes_t sof_pcm_delay(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
void snd_sof_new_platform_drv(struct snd_sof_dev *sdev)
{ … }