[PATCH] staging: comedi: remove this_board macro in the s526 driver

Ian Abbott abbotti at mev.co.uk
Wed May 23 09:18:08 UTC 2012


On 2012-05-23 06:48, 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 at visionengravers.com>
>> Cc: Ian Abbott<abbotti at mev.co.uk>
>> Cc: Mori Hess<fmhess at users.sourceforge.net>
>> Cc: Greg Kroah-Hartman<gregkh at linuxfoundation.org>
>>
>> ---
>> @@ -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.

If .num_names in struct comedi_driver is non-zero, the core comedi 
module will set dev->board_ptr to something non-NULL and meaningful to 
the driver before it calls the driver's ->attach() method.  (This is 
done by the comedi_recognize() function.)  The driver can change 
dev->board_ptr to something else if it wants.  In this case, 
dev->board_ptr will already be set to &s526_boards[0] so there is no 
point setting it again.

-- 
-=( Ian Abbott @ MEV Ltd.    E-mail: <abbotti at mev.co.uk>        )=-
-=( Tel: +44 (0)161 477 1898   FAX: +44 (0)161 718 3587         )=-



More information about the devel mailing list