#include <linux/module.h>
#include <linux/init.h>
#include <linux/ioport.h>
#include <linux/delay.h>
#include <linux/videodev2.h>
#include <linux/mutex.h>
#include <linux/io.h>
#include <linux/slab.h>
#include <media/v4l2-device.h>
#include <media/v4l2-ioctl.h>
#include "radio-isa.h"
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_VERSION(…) …;
#ifndef CONFIG_RADIO_RTRACK2_PORT
#define CONFIG_RADIO_RTRACK2_PORT …
#endif
#define RTRACK2_MAX …
static int io[RTRACK2_MAX] = …;
static int radio_nr[RTRACK2_MAX] = …;
module_param_array(…);
MODULE_PARM_DESC(…) …;
module_param_array(…);
MODULE_PARM_DESC(…) …;
static struct radio_isa_card *rtrack2_alloc(void)
{ … }
static void zero(struct radio_isa_card *isa)
{ … }
static void one(struct radio_isa_card *isa)
{ … }
static int rtrack2_s_frequency(struct radio_isa_card *isa, u32 freq)
{ … }
static u32 rtrack2_g_signal(struct radio_isa_card *isa)
{ … }
static int rtrack2_s_mute_volume(struct radio_isa_card *isa, bool mute, int vol)
{ … }
static const struct radio_isa_ops rtrack2_ops = …;
static const int rtrack2_ioports[] = …;
static struct radio_isa_driver rtrack2_driver = …;
static int __init rtrack2_init(void)
{ … }
static void __exit rtrack2_exit(void)
{ … }
module_init(…) …;
module_exit(rtrack2_exit);