linux/sound/soc/stm/stm32_adfsdm.c

// SPDX-License-Identifier: GPL-2.0
/*
 * This file is part of STM32 DFSDM ASoC DAI driver
 *
 * Copyright (C) 2017, STMicroelectronics - All Rights Reserved
 * Authors: Arnaud Pouliquen <[email protected]>
 *          Olivier Moysan <[email protected]>
 */

#include <linux/clk.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
#include <linux/pm_runtime.h>
#include <linux/iio/iio.h>
#include <linux/iio/consumer.h>
#include <linux/iio/adc/stm32-dfsdm-adc.h>

#include <sound/pcm.h>
#include <sound/soc.h>

#define STM32_ADFSDM_DRV_NAME

#define DFSDM_MAX_PERIOD_SIZE
#define DFSDM_MAX_PERIODS

struct stm32_adfsdm_priv {};

static const struct snd_pcm_hardware stm32_adfsdm_pcm_hw =;

static void stm32_adfsdm_shutdown(struct snd_pcm_substream *substream,
				  struct snd_soc_dai *dai)
{}

static int stm32_adfsdm_dai_prepare(struct snd_pcm_substream *substream,
				    struct snd_soc_dai *dai)
{}

static int stm32_adfsdm_set_sysclk(struct snd_soc_dai *dai, int clk_id,
				   unsigned int freq, int dir)
{}

static const struct snd_soc_dai_ops stm32_adfsdm_dai_ops =;

static const struct snd_soc_dai_driver stm32_adfsdm_dai =;

static const struct snd_soc_component_driver stm32_adfsdm_dai_component =;

static void stm32_memcpy_32to16(void *dest, const void *src, size_t n)
{}

static int stm32_afsdm_pcm_cb(const void *data, size_t size, void *private)
{}

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

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

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

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

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

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

static int stm32_adfsdm_dummy_cb(const void *data, void *private)
{}

static void stm32_adfsdm_cleanup(void *data)
{}

static struct snd_soc_component_driver stm32_adfsdm_soc_platform =;

static const struct of_device_id stm32_adfsdm_of_match[] =;
MODULE_DEVICE_TABLE(of, stm32_adfsdm_of_match);

static int stm32_adfsdm_probe(struct platform_device *pdev)
{}

static void stm32_adfsdm_remove(struct platform_device *pdev)
{}

static struct platform_driver stm32_adfsdm_driver =;

module_platform_driver();

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();
MODULE_ALIAS();