lkml.org 
[lkml]   [2012]   [Jun]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 07/15] staging: comedi: 8255: refactor subdev_8255_init
    Date
    Refactor the initialization of the 8255 so that the private data
    allocation is done before the subdevice is setup. This makes sure
    that the setup is complete.

    Also, add a bit of whitespace to improve the readability.

    Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
    Cc: Ian Abbott <abbotti@mev.co.uk>
    Cc: Frank Mori Hess <fmhess@users.sourceforge.net>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/staging/comedi/drivers/8255.c | 31 +++++++++++++++----------------
    1 files changed, 15 insertions(+), 16 deletions(-)

    diff --git a/drivers/staging/comedi/drivers/8255.c b/drivers/staging/comedi/drivers/8255.c
    index 80ef031..52b9817 100644
    --- a/drivers/staging/comedi/drivers/8255.c
    +++ b/drivers/staging/comedi/drivers/8255.c
    @@ -310,27 +310,26 @@ int subdev_8255_init(struct comedi_device *dev, struct comedi_subdevice *s,
    {
    struct subdev_8255_private *spriv;

    - s->type = COMEDI_SUBD_DIO;
    - s->subdev_flags = SDF_READABLE | SDF_WRITABLE;
    - s->n_chan = 24;
    - s->range_table = &range_digital;
    - s->maxdata = 1;
    -
    spriv = kmalloc(sizeof(*spriv), GFP_KERNEL);
    if (!spriv)
    return -ENOMEM;
    - s->private = spriv;

    - spriv->iobase = iobase;
    - if (io == NULL)
    - spriv->io = subdev_8255_io;
    - else
    - spriv->io = io;
    - s->insn_bits = subdev_8255_insn;
    - s->insn_config = subdev_8255_insn_config;
    + spriv->iobase = iobase;
    + spriv->io = io ? io : subdev_8255_io;
    +
    + s->private = spriv;
    +
    + s->type = COMEDI_SUBD_DIO;
    + s->subdev_flags = SDF_READABLE | SDF_WRITABLE;
    + s->n_chan = 24;
    + s->range_table = &range_digital;
    + s->maxdata = 1;
    + s->insn_bits = subdev_8255_insn;
    + s->insn_config = subdev_8255_insn_config;
    +
    + s->state = 0;
    + s->io_bits = 0;

    - s->state = 0;
    - s->io_bits = 0;
    do_config(dev, s);

    return 0;
    --
    1.7.7


    \
     
     \ /
      Last update: 2012-06-14 01:21    [W:0.039 / U:31.692 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site