staging: comedi: cleanup comedi_alloc_subdevices
Access the individual comedi_subdevices using a pointer instead of directly accessing as an array. This is how the rest of the comedi core accesses them. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Cc: Ian Abbott <abbott@mev.co.uk> Cc: Frank Mori Hess <fmhess@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
8b6c56949f
Коммит
03afcf4727
|
@ -58,21 +58,24 @@ struct comedi_driver *comedi_drivers;
|
|||
|
||||
int comedi_alloc_subdevices(struct comedi_device *dev, int num_subdevices)
|
||||
{
|
||||
struct comedi_subdevice *s;
|
||||
int i;
|
||||
|
||||
if (num_subdevices < 1)
|
||||
return -EINVAL;
|
||||
dev->subdevices =
|
||||
kcalloc(num_subdevices, sizeof(struct comedi_subdevice),
|
||||
GFP_KERNEL);
|
||||
if (!dev->subdevices)
|
||||
|
||||
s = kcalloc(num_subdevices, sizeof(*s), GFP_KERNEL);
|
||||
if (!s)
|
||||
return -ENOMEM;
|
||||
dev->subdevices = s;
|
||||
dev->n_subdevices = num_subdevices;
|
||||
|
||||
for (i = 0; i < num_subdevices; ++i) {
|
||||
dev->subdevices[i].device = dev;
|
||||
dev->subdevices[i].async_dma_dir = DMA_NONE;
|
||||
spin_lock_init(&dev->subdevices[i].spin_lock);
|
||||
dev->subdevices[i].minor = -1;
|
||||
s = dev->subdevices + i;
|
||||
s->device = dev;
|
||||
s->async_dma_dir = DMA_NONE;
|
||||
spin_lock_init(&s->spin_lock);
|
||||
s->minor = -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче