linux/sound/isa/sb/sb_mixer.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 *  Copyright (c) by Jaroslav Kysela <[email protected]>
 *  Routines for Sound Blaster mixer control
 */

#include <linux/io.h>
#include <linux/delay.h>
#include <linux/time.h>
#include <sound/core.h>
#include <sound/sb.h>
#include <sound/control.h>

#undef IO_DEBUG

void snd_sbmixer_write(struct snd_sb *chip, unsigned char reg, unsigned char data)
{}

unsigned char snd_sbmixer_read(struct snd_sb *chip, unsigned char reg)
{}

/*
 * Single channel mixer element
 */

static int snd_sbmixer_info_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{}

static int snd_sbmixer_get_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

static int snd_sbmixer_put_single(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

/*
 * Double channel mixer element
 */

static int snd_sbmixer_info_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{}

static int snd_sbmixer_get_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

static int snd_sbmixer_put_double(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

/*
 * DT-019x / ALS-007 capture/input switch
 */

static int snd_dt019x_input_sw_info(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{}

static int snd_dt019x_input_sw_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

static int snd_dt019x_input_sw_put(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

/*
 * ALS4000 mono recording control switch
 */

static int snd_als4k_mono_capture_route_info(struct snd_kcontrol *kcontrol,
					     struct snd_ctl_elem_info *uinfo)
{}

static int snd_als4k_mono_capture_route_get(struct snd_kcontrol *kcontrol,
				struct snd_ctl_elem_value *ucontrol)
{}

static int snd_als4k_mono_capture_route_put(struct snd_kcontrol *kcontrol,
				struct snd_ctl_elem_value *ucontrol)
{}

/*
 * SBPRO input multiplexer
 */

static int snd_sb8mixer_info_mux(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{}


static int snd_sb8mixer_get_mux(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

static int snd_sb8mixer_put_mux(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}

/*
 * SB16 input switch
 */

static int snd_sb16mixer_info_input_sw(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_info *uinfo)
{}

static int snd_sb16mixer_get_input_sw(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}                                                                                                                   

static int snd_sb16mixer_put_input_sw(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol)
{}


/*
 */
/*
 */
int snd_sbmixer_add_ctl(struct snd_sb *chip, const char *name, int index, int type, unsigned long value)
{}

/*
 * SB 2.0 specific mixer elements
 */

static const struct sbmix_elem snd_sb20_controls[] =;

static const unsigned char snd_sb20_init_values[][2] =;

/*
 * SB Pro specific mixer elements
 */
static const struct sbmix_elem snd_sbpro_controls[] =;

static const unsigned char snd_sbpro_init_values[][2] =;

/*
 * SB16 specific mixer elements
 */
static const struct sbmix_elem snd_sb16_controls[] =;

static const unsigned char snd_sb16_init_values[][2] =;

/*
 * DT019x specific mixer elements
 */
static const struct sbmix_elem snd_dt019x_controls[] =;

static const unsigned char snd_dt019x_init_values[][2] =;

/*
 * ALS4000 specific mixer elements
 */
static const struct sbmix_elem snd_als4000_controls[] =;

static const unsigned char snd_als4000_init_values[][2] =;

/*
 */
static int snd_sbmixer_init(struct snd_sb *chip,
			    const struct sbmix_elem *controls,
			    int controls_count,
			    const unsigned char map[][2],
			    int map_count,
			    char *name)
{}

int snd_sbmixer_new(struct snd_sb *chip)
{}

#ifdef CONFIG_PM
static const unsigned char sb20_saved_regs[] =;

static const unsigned char sbpro_saved_regs[] =;

static const unsigned char sb16_saved_regs[] =;

static const unsigned char dt019x_saved_regs[] =;

static const unsigned char als4000_saved_regs[] =;

static void save_mixer(struct snd_sb *chip, const unsigned char *regs, int num_regs)
{}

static void restore_mixer(struct snd_sb *chip, const unsigned char *regs, int num_regs)
{}

void snd_sbmixer_suspend(struct snd_sb *chip)
{}

void snd_sbmixer_resume(struct snd_sb *chip)
{}
#endif