linux/sound/soc/codecs/cx20442.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * cx20442.c  --  CX20442 ALSA Soc Audio driver
 *
 * Copyright 2009 Janusz Krzysztofik <[email protected]>
 *
 * Initially based on sound/soc/codecs/wm8400.c
 * Copyright 2008, 2009 Wolfson Microelectronics PLC.
 * Author: Mark Brown <[email protected]>
 */

#include <linux/tty.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/regulator/consumer.h>

#include <sound/core.h>
#include <sound/initval.h>
#include <sound/soc.h>

#include "cx20442.h"


struct cx20442_priv {};

#define CX20442_PM

#define CX20442_TELIN
#define CX20442_TELOUT
#define CX20442_MIC
#define CX20442_SPKOUT
#define CX20442_AGC

static const struct snd_soc_dapm_widget cx20442_dapm_widgets[] =;

static const struct snd_soc_dapm_route cx20442_audio_map[] =;

static unsigned int cx20442_read_reg_cache(struct snd_soc_component *component,
					   unsigned int reg)
{}

enum v253_vls {};

static int cx20442_pm_to_v253_vls(u8 value)
{}
static int cx20442_pm_to_v253_vsp(u8 value)
{}

static int cx20442_write(struct snd_soc_component *component, unsigned int reg,
							unsigned int value)
{}

/*
 * Line discpline related code
 *
 * Any of the callback functions below can be used in two ways:
 * 1) registerd by a machine driver as one of line discipline operations,
 * 2) called from a machine's provided line discipline callback function
 *    in case when extra machine specific code must be run as well.
 */

/* Modem init: echo off, digital speaker off, quiet off, voice mode */
static const char v253_init[] =;

/* Line discipline .open() */
static int v253_open(struct tty_struct *tty)
{}

/* Line discipline .close() */
static void v253_close(struct tty_struct *tty)
{}

/* Line discipline .hangup() */
static void v253_hangup(struct tty_struct *tty)
{}

/* Line discipline .receive_buf() */
static void v253_receive(struct tty_struct *tty, const u8 *cp, const u8 *fp,
			 size_t count)
{}

struct tty_ldisc_ops v253_ops =;
EXPORT_SYMBOL_GPL();


/*
 * Codec DAI
 */

static struct snd_soc_dai_driver cx20442_dai =;

static int cx20442_set_bias_level(struct snd_soc_component *component,
		enum snd_soc_bias_level level)
{}

static int cx20442_component_probe(struct snd_soc_component *component)
{}

/* power down chip */
static void cx20442_component_remove(struct snd_soc_component *component)
{}

static const struct snd_soc_component_driver cx20442_component_dev =;

static int cx20442_platform_probe(struct platform_device *pdev)
{}

static struct platform_driver cx20442_platform_driver =;

module_platform_driver();

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