#include <linux/module.h>
#include <linux/dma-mapping.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/pcm_params.h>
#include <sound/soc.h>
#include <sound/dmaengine_pcm.h>
#include "tegra_pcm.h"
static const struct snd_pcm_hardware tegra_pcm_hardware = …;
static const struct snd_dmaengine_pcm_config tegra_dmaengine_pcm_config = …;
int tegra_pcm_platform_register(struct device *dev)
{ … }
EXPORT_SYMBOL_GPL(…);
int devm_tegra_pcm_platform_register(struct device *dev)
{ … }
EXPORT_SYMBOL_GPL(…);
int tegra_pcm_platform_register_with_chan_names(struct device *dev,
struct snd_dmaengine_pcm_config *config,
char *txdmachan, char *rxdmachan)
{ … }
EXPORT_SYMBOL_GPL(…);
void tegra_pcm_platform_unregister(struct device *dev)
{ … }
EXPORT_SYMBOL_GPL(…);
int tegra_pcm_open(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
EXPORT_SYMBOL_GPL(…);
int tegra_pcm_close(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
EXPORT_SYMBOL_GPL(…);
int tegra_pcm_hw_params(struct snd_soc_component *component,
struct snd_pcm_substream *substream,
struct snd_pcm_hw_params *params)
{ … }
EXPORT_SYMBOL_GPL(…);
snd_pcm_uframes_t tegra_pcm_pointer(struct snd_soc_component *component,
struct snd_pcm_substream *substream)
{ … }
EXPORT_SYMBOL_GPL(…);
static int tegra_pcm_dma_allocate(struct device *dev, struct snd_soc_pcm_runtime *rtd,
size_t size)
{ … }
int tegra_pcm_construct(struct snd_soc_component *component,
struct snd_soc_pcm_runtime *rtd)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;