diff options
author | H Hartley Sweeten <hartleys@visionengravers.com> | 2012-09-11 16:49:06 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-09-12 09:30:34 -0700 |
commit | 5c1eb3857a7fada597f6dc2746f5f700bdb780ee (patch) | |
tree | 28ce22662987a6a48ce7511d4a00583f11351d75 /drivers | |
parent | 22d4b56f5b4185db609f5c94113d8ee6ca8807dc (diff) |
staging: comedi: adq12b: remove devpriv macro
This macro relies on a local variable having a specific name.
Also, remove the kfree in the detach. The comedi core handles
the kfree of dev->private.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/comedi/drivers/adq12b.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/drivers/staging/comedi/drivers/adq12b.c b/drivers/staging/comedi/drivers/adq12b.c index 0340c9ccc748..3a2aa5628be3 100644 --- a/drivers/staging/comedi/drivers/adq12b.c +++ b/drivers/staging/comedi/drivers/adq12b.c @@ -133,8 +133,6 @@ struct adq12b_private { unsigned int digital_state; }; -#define devpriv ((struct adq12b_private *)dev->private) - /* * "instructions" read/write data in "one-shot" or "software-triggered" * mode. @@ -144,6 +142,7 @@ static int adq12b_ai_rinsn(struct comedi_device *dev, struct comedi_subdevice *s, struct comedi_insn *insn, unsigned int *data) { + struct adq12b_private *devpriv = dev->private; int n, i; int range, channel; unsigned char hi, lo, status; @@ -200,6 +199,7 @@ static int adq12b_do_insn_bits(struct comedi_device *dev, struct comedi_subdevice *s, struct comedi_insn *insn, unsigned int *data) { + struct adq12b_private *devpriv = dev->private; int channel; for (channel = 0; channel < 8; channel++) @@ -221,6 +221,7 @@ static int adq12b_do_insn_bits(struct comedi_device *dev, static int adq12b_attach(struct comedi_device *dev, struct comedi_devconfig *it) { const struct adq12b_board *board = comedi_board(dev); + struct adq12b_private *devpriv; struct comedi_subdevice *s; unsigned long iobase; int unipolar, differential; @@ -252,19 +253,18 @@ static int adq12b_attach(struct comedi_device *dev, struct comedi_devconfig *it) dev->board_name = board->name; -/* - * Allocate the private structure area. alloc_private() is a - * convenient macro defined in comedidev.h. - */ - if (alloc_private(dev, sizeof(struct adq12b_private)) < 0) - return -ENOMEM; + ret = alloc_private(dev, sizeof(*devpriv)); + if (ret) + return ret; + devpriv = dev->private; -/* fill in devpriv structure */ devpriv->unipolar = unipolar; devpriv->differential = differential; devpriv->digital_state = 0; -/* initialize channel and range to -1 so we make sure we always write - at least once to the CTREG in the instruction */ + /* + * initialize channel and range to -1 so we make sure we + * always write at least once to the CTREG in the instruction + */ devpriv->last_channel = -1; devpriv->last_range = -1; @@ -321,7 +321,6 @@ static void adq12b_detach(struct comedi_device *dev) { if (dev->iobase) release_region(dev->iobase, ADQ12B_SIZE); - kfree(devpriv); } static const struct adq12b_board adq12b_boards[] = { |