diff options
author | H Hartley Sweeten <hsweeten@visionengravers.com> | 2015-01-21 22:11:44 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-01-25 11:59:12 (GMT) |
commit | 83d682bda16b515c61a99ff830964c1461b837a2 (patch) | |
tree | e9cdc493d631bb4dd691ae5273dded6d1084712c /drivers/staging/comedi | |
parent | c0e4a8decb2e519789537896d2f75ef979e8cf05 (diff) | |
download | linux-83d682bda16b515c61a99ff830964c1461b837a2.tar.xz |
staging: comedi: ni_labpc_common: move comedi_alloc_devpriv() to common code
The ni_labpc_common module is used by the ni_labpc, ni_labpc_pci, and ni_labpc_cs
drivers to provide the common code support. Those drivers currently all call
comedi_alloc_devpriv() to allocate the private data before calling the common
attach function.
For aesthetics, move the private data allocation into the common code.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/comedi')
-rw-r--r-- | drivers/staging/comedi/drivers/ni_labpc.c | 5 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/ni_labpc_common.c | 6 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/ni_labpc_cs.c | 5 | ||||
-rw-r--r-- | drivers/staging/comedi/drivers/ni_labpc_pci.c | 5 |
4 files changed, 5 insertions, 16 deletions
diff --git a/drivers/staging/comedi/drivers/ni_labpc.c b/drivers/staging/comedi/drivers/ni_labpc.c index 59da404..e7b25e8 100644 --- a/drivers/staging/comedi/drivers/ni_labpc.c +++ b/drivers/staging/comedi/drivers/ni_labpc.c @@ -84,15 +84,10 @@ static const struct labpc_boardinfo labpc_boards[] = { static int labpc_attach(struct comedi_device *dev, struct comedi_devconfig *it) { - struct labpc_private *devpriv; unsigned int irq = it->options[1]; unsigned int dma_chan = it->options[2]; int ret; - devpriv = comedi_alloc_devpriv(dev, sizeof(*devpriv)); - if (!devpriv) - return -ENOMEM; - ret = comedi_request_region(dev, it->options[0], 0x20); if (ret) return ret; diff --git a/drivers/staging/comedi/drivers/ni_labpc_common.c b/drivers/staging/comedi/drivers/ni_labpc_common.c index 8fb5c1f..3cd200a 100644 --- a/drivers/staging/comedi/drivers/ni_labpc_common.c +++ b/drivers/staging/comedi/drivers/ni_labpc_common.c @@ -1215,11 +1215,15 @@ int labpc_common_attach(struct comedi_device *dev, unsigned int irq, unsigned long isr_flags) { const struct labpc_boardinfo *board = dev->board_ptr; - struct labpc_private *devpriv = dev->private; + struct labpc_private *devpriv; struct comedi_subdevice *s; int ret; int i; + devpriv = comedi_alloc_devpriv(dev, sizeof(*devpriv)); + if (!devpriv) + return -ENOMEM; + if (dev->mmio) { devpriv->read_byte = labpc_readb; devpriv->write_byte = labpc_writeb; diff --git a/drivers/staging/comedi/drivers/ni_labpc_cs.c b/drivers/staging/comedi/drivers/ni_labpc_cs.c index 0a8b322..d58f1f9 100644 --- a/drivers/staging/comedi/drivers/ni_labpc_cs.c +++ b/drivers/staging/comedi/drivers/ni_labpc_cs.c @@ -80,7 +80,6 @@ static int labpc_auto_attach(struct comedi_device *dev, unsigned long context) { struct pcmcia_device *link = comedi_to_pcmcia_dev(dev); - struct labpc_private *devpriv; int ret; /* The ni_labpc driver needs the board_ptr */ @@ -96,10 +95,6 @@ static int labpc_auto_attach(struct comedi_device *dev, if (!link->irq) return -EINVAL; - devpriv = comedi_alloc_devpriv(dev, sizeof(*devpriv)); - if (!devpriv) - return -ENOMEM; - return labpc_common_attach(dev, link->irq, IRQF_SHARED); } diff --git a/drivers/staging/comedi/drivers/ni_labpc_pci.c b/drivers/staging/comedi/drivers/ni_labpc_pci.c index a9f408a..0407ff6 100644 --- a/drivers/staging/comedi/drivers/ni_labpc_pci.c +++ b/drivers/staging/comedi/drivers/ni_labpc_pci.c @@ -79,7 +79,6 @@ static int labpc_pci_auto_attach(struct comedi_device *dev, { struct pci_dev *pcidev = comedi_to_pci_dev(dev); const struct labpc_boardinfo *board = NULL; - struct labpc_private *devpriv; int ret; if (context < ARRAY_SIZE(labpc_pci_boards)) @@ -101,10 +100,6 @@ static int labpc_pci_auto_attach(struct comedi_device *dev, if (!dev->mmio) return -ENOMEM; - devpriv = comedi_alloc_devpriv(dev, sizeof(*devpriv)); - if (!devpriv) - return -ENOMEM; - return labpc_common_attach(dev, pcidev->irq, IRQF_SHARED); } |