Re: [PATCH] staging: comedi: remove this_board macro in the s526driver
From: Dan Carpenter
Date: Wed May 23 2012 - 14:47:42 EST
On Wed, May 23, 2012 at 11:06:39AM -0500, H Hartley Sweeten wrote:
> On Tuesday, May 22, 2012 10:49 PM, Dan Carpenter wrote:
> > On Tue, May 22, 2012 at 06:20:10PM -0700, H Hartley Sweeten wrote:
> >> The 'thisboard' macro depends on having a local variable with
> >> a magic name. The CodingStyle document suggests not doing this
> >> to avoid confusion. Remove the macro and use the comedi_board()
> >> inline helper to get the dev->board_ptr information.
> >>
> >> Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
> >> Cc: Ian Abbott <abbotti@xxxxxxxxx>
> >> Cc: Mori Hess <fmhess@xxxxxxxxxxxxxxxxxxxxx>
> >> Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> >>
> >> ---
> >> @@ -769,13 +765,7 @@ static int s526_attach(struct comedi_device *dev, struct comedi_devconfig *it)
> >> }
> >> ***/
> >>
> >> -/*
> >> - * Initialize dev->board_name. Note that we can use the "thisboard"
> >> - * macro now, since we just initialized it in the last line.
> >> - */
> >> - dev->board_ptr = &s526_boards[0];
> >
> > Was this intended? Most of the boards have auto probing so the
> > ->board_ptr gets set automatically. We already called
> > comedi_board() so I wonder if the autoprobed board is the same as
> > the &s526_boards[0];? NULL pointer perhaps? I don't know.
>
> Yes, removing the line was intended. Sorry I didn't mention it in the
> commit message.
>
> The dev->board_ptr will already be set by comedi_device_attach()
> before the drivers attach() method is called.
>
> I think the author of this driver misunderstood the skel driver and
> thought this was needed in order to simulate a "probe". See this
> comment in the skel.c driver:
>
> /*
> * If you can probe the device to determine what device in a series
> * it is, this is the place to do it. Otherwise, dev->board_ptr
> * should already be initialized.
> */
> /* dev->board_ptr = skel_probe(dev, it); */
>
Heh. Yeah. I saw you removed a bunch of these comments and this
was the only one that wasn't commented so I wondered.
Ian already explained how the probing works. Looks good.
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/