#include <linux/acpi.h>
#include <linux/device.h>
#include <linux/err.h>
#include <linux/gpio.h>
#include <linux/gpio/consumer.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <sound/pcm.h>
#include <sound/soc.h>
#include <sound/soc-dai.h>
#include <sound/soc-dapm.h>
struct nau8315_priv { … };
static int nau8315_daiops_trigger(struct snd_pcm_substream *substream,
int cmd, struct snd_soc_dai *dai)
{ … }
static int nau8315_enpin_event(struct snd_soc_dapm_widget *w,
struct snd_kcontrol *kcontrol, int event)
{ … }
static const struct snd_soc_dapm_widget nau8315_dapm_widgets[] = …;
static const struct snd_soc_dapm_route nau8315_dapm_routes[] = …;
static const struct snd_soc_component_driver nau8315_component_driver = …;
static const struct snd_soc_dai_ops nau8315_dai_ops = …;
#define NAU8315_RATES …
#define NAU8315_FORMATS …
static struct snd_soc_dai_driver nau8315_dai_driver = …;
static int nau8315_platform_probe(struct platform_device *pdev)
{ … }
#ifdef CONFIG_OF
static const struct of_device_id nau8315_device_id[] = …;
MODULE_DEVICE_TABLE(of, nau8315_device_id);
#endif
#ifdef CONFIG_ACPI
static const struct acpi_device_id nau8315_acpi_match[] = …;
MODULE_DEVICE_TABLE(acpi, nau8315_acpi_match);
#endif
static struct platform_driver nau8315_platform_driver = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;