Commit 5f1514bf authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman

staging: comedi: pcm3724: remove boardinfo

This driver only supports a single "boardtype". Remove the unneeded
boardinfo struct and its use in the driver.
Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 43fc365f
...@@ -62,14 +62,6 @@ Copy/pasted/hacked from pcm724.c ...@@ -62,14 +62,6 @@ Copy/pasted/hacked from pcm724.c
#define CR_A_MODE(a) ((a)<<5) #define CR_A_MODE(a) ((a)<<5)
#define CR_CW 0x80 #define CR_CW 0x80
struct pcm3724_board {
const char *name; /* driver name */
int dio; /* num of DIO */
int numofports; /* num of 8255 subdevices */
unsigned int IRQbits; /* allowed interrupts */
unsigned int io_range; /* len of IO space */
};
/* used to track configured dios */ /* used to track configured dios */
struct priv_pcm3724 { struct priv_pcm3724 {
int dio_1; int dio_1;
...@@ -233,14 +225,15 @@ static int subdev_3724_insn_config(struct comedi_device *dev, ...@@ -233,14 +225,15 @@ static int subdev_3724_insn_config(struct comedi_device *dev,
static int pcm3724_attach(struct comedi_device *dev, static int pcm3724_attach(struct comedi_device *dev,
struct comedi_devconfig *it) struct comedi_devconfig *it)
{ {
const struct pcm3724_board *board = comedi_board(dev);
struct comedi_subdevice *s; struct comedi_subdevice *s;
unsigned long iobase; unsigned long iobase;
unsigned int iorange; unsigned int iorange;
int ret, i, n_subdevices; int ret, i;
dev->board_name = dev->driver->driver_name;
iobase = it->options[0]; iobase = it->options[0];
iorange = board->io_range; iorange = PCM3724_SIZE;
ret = alloc_private(dev, sizeof(struct priv_pcm3724)); ret = alloc_private(dev, sizeof(struct priv_pcm3724));
if (ret < 0) if (ret < 0)
...@@ -250,19 +243,16 @@ static int pcm3724_attach(struct comedi_device *dev, ...@@ -250,19 +243,16 @@ static int pcm3724_attach(struct comedi_device *dev,
((struct priv_pcm3724 *)(dev->private))->dio_2 = 0; ((struct priv_pcm3724 *)(dev->private))->dio_2 = 0;
printk(KERN_INFO "comedi%d: pcm3724: board=%s, 0x%03lx ", dev->minor, printk(KERN_INFO "comedi%d: pcm3724: board=%s, 0x%03lx ", dev->minor,
board->name, iobase); dev->board_name, iobase);
if (!iobase || !request_region(iobase, iorange, "pcm3724")) { if (!iobase || !request_region(iobase, iorange, "pcm3724")) {
printk("I/O port conflict\n"); printk("I/O port conflict\n");
return -EIO; return -EIO;
} }
dev->iobase = iobase; dev->iobase = iobase;
dev->board_name = board->name;
printk(KERN_INFO "\n"); printk(KERN_INFO "\n");
n_subdevices = board->numofports; ret = comedi_alloc_subdevices(dev, 2);
ret = comedi_alloc_subdevices(dev, n_subdevices);
if (ret) if (ret)
return ret; return ret;
...@@ -277,7 +267,6 @@ static int pcm3724_attach(struct comedi_device *dev, ...@@ -277,7 +267,6 @@ static int pcm3724_attach(struct comedi_device *dev,
static void pcm3724_detach(struct comedi_device *dev) static void pcm3724_detach(struct comedi_device *dev)
{ {
const struct pcm3724_board *board = comedi_board(dev);
struct comedi_subdevice *s; struct comedi_subdevice *s;
int i; int i;
...@@ -288,21 +277,14 @@ static void pcm3724_detach(struct comedi_device *dev) ...@@ -288,21 +277,14 @@ static void pcm3724_detach(struct comedi_device *dev)
} }
} }
if (dev->iobase) if (dev->iobase)
release_region(dev->iobase, board->io_range); release_region(dev->iobase, PCM3724_SIZE);
} }
static const struct pcm3724_board boardtypes[] = {
{ "pcm3724", 48, 2, 0x00fc, PCM3724_SIZE, },
};
static struct comedi_driver pcm3724_driver = { static struct comedi_driver pcm3724_driver = {
.driver_name = "pcm3724", .driver_name = "pcm3724",
.module = THIS_MODULE, .module = THIS_MODULE,
.attach = pcm3724_attach, .attach = pcm3724_attach,
.detach = pcm3724_detach, .detach = pcm3724_detach,
.board_name = &boardtypes[0].name,
.num_names = ARRAY_SIZE(boardtypes),
.offset = sizeof(struct pcm3724_board),
}; };
module_comedi_driver(pcm3724_driver); module_comedi_driver(pcm3724_driver);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment