linux/sound/soc/qcom/qdsp6/q6asm-dai.c

// SPDX-License-Identifier: GPL-2.0
// Copyright (c) 2011-2017, The Linux Foundation. All rights reserved.
// Copyright (c) 2018, Linaro Limited

#include <dt-bindings/sound/qcom,q6asm.h>
#include <linux/init.h>
#include <linux/err.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <sound/soc.h>
#include <sound/soc-dapm.h>
#include <sound/pcm.h>
#include <linux/spinlock.h>
#include <sound/compress_driver.h>
#include <asm/dma.h>
#include <linux/dma-mapping.h>
#include <sound/pcm_params.h>
#include "q6asm.h"
#include "q6routing.h"
#include "q6dsp-errno.h"

#define DRV_NAME

#define PLAYBACK_MIN_NUM_PERIODS
#define PLAYBACK_MAX_NUM_PERIODS
#define PLAYBACK_MAX_PERIOD_SIZE
#define PLAYBACK_MIN_PERIOD_SIZE
#define CAPTURE_MIN_NUM_PERIODS
#define CAPTURE_MAX_NUM_PERIODS
#define CAPTURE_MAX_PERIOD_SIZE
#define CAPTURE_MIN_PERIOD_SIZE
#define SID_MASK_DEFAULT

/* Default values used if user space does not set */
#define COMPR_PLAYBACK_MIN_FRAGMENT_SIZE
#define COMPR_PLAYBACK_MAX_FRAGMENT_SIZE
#define COMPR_PLAYBACK_MIN_NUM_FRAGMENTS
#define COMPR_PLAYBACK_MAX_NUM_FRAGMENTS

#define ALAC_CH_LAYOUT_MONO
#define ALAC_CH_LAYOUT_STEREO

enum stream_state {};

struct q6asm_dai_rtd {};

struct q6asm_dai_data {};

static const struct snd_pcm_hardware q6asm_dai_hardware_capture =;

static const struct snd_pcm_hardware q6asm_dai_hardware_playback =;

#define Q6ASM_FEDAI_DRIVER(num)

static const struct snd_compr_codec_caps q6asm_compr_caps =;

static void event_handler(uint32_t opcode, uint32_t token,
			  void *payload, void *priv)
{}

static int q6asm_dai_prepare(struct snd_soc_component *component,
			     struct snd_pcm_substream *substream)
{}

static int q6asm_dai_trigger(struct snd_soc_component *component,
			     struct snd_pcm_substream *substream, int cmd)
{}

static int q6asm_dai_open(struct snd_soc_component *component,
			  struct snd_pcm_substream *substream)
{}

static int q6asm_dai_close(struct snd_soc_component *component,
			   struct snd_pcm_substream *substream)
{}

static snd_pcm_uframes_t q6asm_dai_pointer(struct snd_soc_component *component,
					   struct snd_pcm_substream *substream)
{}

static int q6asm_dai_hw_params(struct snd_soc_component *component,
			       struct snd_pcm_substream *substream,
			       struct snd_pcm_hw_params *params)
{}

static void compress_event_handler(uint32_t opcode, uint32_t token,
				   void *payload, void *priv)
{}

static int q6asm_dai_compr_open(struct snd_soc_component *component,
				struct snd_compr_stream *stream)
{}

static int q6asm_dai_compr_free(struct snd_soc_component *component,
				struct snd_compr_stream *stream)
{}

static int __q6asm_dai_compr_set_codec_params(struct snd_soc_component *component,
					      struct snd_compr_stream *stream,
					      struct snd_codec *codec,
					      int stream_id)
{}

static int q6asm_dai_compr_set_params(struct snd_soc_component *component,
				      struct snd_compr_stream *stream,
				      struct snd_compr_params *params)
{}

static int q6asm_dai_compr_set_metadata(struct snd_soc_component *component,
					struct snd_compr_stream *stream,
					struct snd_compr_metadata *metadata)
{}

static int q6asm_dai_compr_trigger(struct snd_soc_component *component,
				   struct snd_compr_stream *stream, int cmd)
{}

static int q6asm_dai_compr_pointer(struct snd_soc_component *component,
				   struct snd_compr_stream *stream,
				   struct snd_compr_tstamp *tstamp)
{}

static int q6asm_compr_copy(struct snd_soc_component *component,
			    struct snd_compr_stream *stream, char __user *buf,
			    size_t count)
{}

static int q6asm_dai_compr_mmap(struct snd_soc_component *component,
				struct snd_compr_stream *stream,
				struct vm_area_struct *vma)
{}

static int q6asm_dai_compr_get_caps(struct snd_soc_component *component,
				    struct snd_compr_stream *stream,
				    struct snd_compr_caps *caps)
{}

static int q6asm_dai_compr_get_codec_caps(struct snd_soc_component *component,
					  struct snd_compr_stream *stream,
					  struct snd_compr_codec_caps *codec)
{}

static const struct snd_compress_ops q6asm_dai_compress_ops =;

static int q6asm_dai_pcm_new(struct snd_soc_component *component,
			     struct snd_soc_pcm_runtime *rtd)
{}

static const struct snd_soc_dapm_widget q6asm_dapm_widgets[] =;

static const struct snd_soc_component_driver q6asm_fe_dai_component =;

static struct snd_soc_dai_driver q6asm_fe_dais_template[] =;

static const struct snd_soc_dai_ops q6asm_dai_ops =;

static int of_q6asm_parse_dai_data(struct device *dev,
				    struct q6asm_dai_data *pdata)
{}

static int q6asm_dai_probe(struct platform_device *pdev)
{}

#ifdef CONFIG_OF
static const struct of_device_id q6asm_dai_device_id[] =;
MODULE_DEVICE_TABLE(of, q6asm_dai_device_id);
#endif

static struct platform_driver q6asm_dai_platform_driver =;
module_platform_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();