#include <linux/init.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <sound/core.h>
#include "vxpocket.h"
#include <pcmcia/ciscode.h>
#include <pcmcia/cisreg.h>
#include <sound/initval.h>
#include <sound/tlv.h>
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
static int index[SNDRV_CARDS] = …;
static char *id[SNDRV_CARDS] = …;
static bool enable[SNDRV_CARDS] = …;
static int ibl[SNDRV_CARDS];
module_param_array(…);
MODULE_PARM_DESC(…) …;
module_param_array(…);
MODULE_PARM_DESC(…) …;
module_param_array(…);
MODULE_PARM_DESC(…) …;
module_param_array(…);
MODULE_PARM_DESC(…) …;
static unsigned int card_alloc;
static void vxpocket_release(struct pcmcia_device *link)
{ … }
static const DECLARE_TLV_DB_SCALE(db_scale_old_vol, -11350, 50, 0);
static const struct snd_vx_hardware vxpocket_hw = …;
static const struct snd_vx_hardware vxp440_hw = …;
static int snd_vxpocket_new(struct snd_card *card, int ibl,
struct pcmcia_device *link,
struct snd_vxpocket **chip_ret)
{ … }
static int snd_vxpocket_assign_resources(struct vx_core *chip, int port, int irq)
{ … }
static int vxpocket_config(struct pcmcia_device *link)
{ … }
#ifdef CONFIG_PM
static int vxp_suspend(struct pcmcia_device *link)
{ … }
static int vxp_resume(struct pcmcia_device *link)
{ … }
#endif
static int vxpocket_probe(struct pcmcia_device *p_dev)
{ … }
static void vxpocket_detach(struct pcmcia_device *link)
{ … }
static const struct pcmcia_device_id vxp_ids[] = …;
MODULE_DEVICE_TABLE(pcmcia, vxp_ids);
static struct pcmcia_driver vxp_cs_driver = …;
module_pcmcia_driver(…);