linux/sound/isa/sb/jazz16.c


/*
 * jazz16.c - driver for Media Vision Jazz16 based soundcards.
 * Copyright (C) 2009 Krzysztof Helt <[email protected]>
 * Based on patches posted by Rask Ingemann Lambertsen and Rene Herman.
 * Based on OSS Sound Blaster driver.
 *
 * This file is subject to the terms and conditions of the GNU General Public
 * License.  See the file COPYING in the main directory of this archive for
 * more details.
 *
 */

#include <linux/init.h>
#include <linux/module.h>
#include <linux/io.h>
#include <linux/delay.h>
#include <asm/dma.h>
#include <linux/isa.h>
#include <sound/core.h>
#include <sound/mpu401.h>
#include <sound/opl3.h>
#include <sound/sb.h>
#define SNDRV_LEGACY_FIND_FREE_IRQ
#define SNDRV_LEGACY_FIND_FREE_DMA
#include <sound/initval.h>

#define PFX

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

static int index[SNDRV_CARDS] =;	/* Index 0-MAX */
static char *id[SNDRV_CARDS] =;	/* ID for this card */
static bool enable[SNDRV_CARDS] =;	/* Enable this card */
static unsigned long port[SNDRV_CARDS] =;
static unsigned long mpu_port[SNDRV_CARDS] =;
static int irq[SNDRV_CARDS] =;
static int mpu_irq[SNDRV_CARDS] =;
static int dma8[SNDRV_CARDS] =;
static int dma16[SNDRV_CARDS] =;

module_param_array();
MODULE_PARM_DESC();
module_param_array();
MODULE_PARM_DESC();
module_param_array();
MODULE_PARM_DESC();
module_param_hw_array(port, long, ioport, NULL, 0444);
MODULE_PARM_DESC();
module_param_hw_array(mpu_port, long, ioport, NULL, 0444);
MODULE_PARM_DESC();
module_param_hw_array(irq, int, irq, NULL, 0444);
MODULE_PARM_DESC();
module_param_hw_array(mpu_irq, int, irq, NULL, 0444);
MODULE_PARM_DESC();
module_param_hw_array(dma8, int, dma, NULL, 0444);
MODULE_PARM_DESC();
module_param_hw_array(dma16, int, dma, NULL, 0444);
MODULE_PARM_DESC();

#define SB_JAZZ16_WAKEUP
#define SB_JAZZ16_SET_PORTS
#define SB_DSP_GET_JAZZ_BRD_REV
#define SB_JAZZ16_SET_DMAINTR
#define SB_DSP_GET_JAZZ_MODEL

struct snd_card_jazz16 {};

static irqreturn_t jazz16_interrupt(int irq, void *chip)
{}

static int jazz16_configure_ports(unsigned long port,
				  unsigned long mpu_port, int idx)
{}

static int jazz16_detect_board(unsigned long port,
			       unsigned long mpu_port)
{}

static int jazz16_configure_board(struct snd_sb *chip, int mpu_irq)
{}

static int snd_jazz16_match(struct device *devptr, unsigned int dev)
{}

static int snd_jazz16_probe(struct device *devptr, unsigned int dev)
{}

#ifdef CONFIG_PM
static int snd_jazz16_suspend(struct device *pdev, unsigned int n,
			       pm_message_t state)
{}

static int snd_jazz16_resume(struct device *pdev, unsigned int n)
{}
#endif

static struct isa_driver snd_jazz16_driver =;

module_isa_driver(snd_jazz16_driver, SNDRV_CARDS);