linux/sound/pci/cs5535audio/cs5535audio.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Driver for audio on multifunction CS5535/6 companion device
 * Copyright (C) Jaya Kumar
 *
 * Based on Jaroslav Kysela and Takashi Iwai's examples.
 * This work was sponsored by CIS(M) Sdn Bhd.
 */

#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/init.h>
#include <linux/pci.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/io.h>
#include <sound/core.h>
#include <sound/control.h>
#include <sound/pcm.h>
#include <sound/rawmidi.h>
#include <sound/ac97_codec.h>
#include <sound/initval.h>
#include <sound/asoundef.h>
#include "cs5535audio.h"

#define DRIVER_NAME

static char *ac97_quirk;
module_param(ac97_quirk, charp, 0444);
MODULE_PARM_DESC();

static const struct ac97_quirk ac97_quirks[] =;

static int index[SNDRV_CARDS] =;
static char *id[SNDRV_CARDS] =;
static bool enable[SNDRV_CARDS] =;

module_param_array();
MODULE_PARM_DESC();
module_param_array();
MODULE_PARM_DESC();
module_param_array();
MODULE_PARM_DESC();

static const struct pci_device_id snd_cs5535audio_ids[] =;

MODULE_DEVICE_TABLE(pci, snd_cs5535audio_ids);

static void wait_till_cmd_acked(struct cs5535audio *cs5535au, unsigned long timeout)
{}

static unsigned short snd_cs5535audio_codec_read(struct cs5535audio *cs5535au,
						 unsigned short reg)
{}

static void snd_cs5535audio_codec_write(struct cs5535audio *cs5535au,
					unsigned short reg, unsigned short val)
{}

static void snd_cs5535audio_ac97_codec_write(struct snd_ac97 *ac97,
					     unsigned short reg, unsigned short val)
{}

static unsigned short snd_cs5535audio_ac97_codec_read(struct snd_ac97 *ac97,
						      unsigned short reg)
{}

static int snd_cs5535audio_mixer(struct cs5535audio *cs5535au)
{}

static void process_bm0_irq(struct cs5535audio *cs5535au)
{}

static void process_bm1_irq(struct cs5535audio *cs5535au)
{}

static irqreturn_t snd_cs5535audio_interrupt(int irq, void *dev_id)
{}

static void snd_cs5535audio_free(struct snd_card *card)
{}

static int snd_cs5535audio_create(struct snd_card *card,
				  struct pci_dev *pci)
{}

static int __snd_cs5535audio_probe(struct pci_dev *pci,
				   const struct pci_device_id *pci_id)
{}

static int snd_cs5535audio_probe(struct pci_dev *pci,
				 const struct pci_device_id *pci_id)
{}

static struct pci_driver cs5535audio_driver =;

module_pci_driver();

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