]> git.karo-electronics.de Git - linux-beck.git/commitdiff
staging: comedi: drivers: set dev->board_name before attaching
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Mon, 8 Apr 2013 17:55:29 +0000 (10:55 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 8 Apr 2013 18:39:19 +0000 (11:39 -0700)
The comedi (*attach) and (*auto_attach) functions are used to attach
legacy and PnP type devices to the comedi subsystem. If we can set the
dev->board_name before doing the attach, the drivers will not have to
worry about doing it.

Drivers that do additional probing can still change the dev->board_name
if necessary.

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>
drivers/staging/comedi/drivers.c

index 8db9deed3bc653b04e6fc28639df21c14ab2c4c4..09d67dac74bc98c9c09f4ae8b602a4ffc24b3acb 100644 (file)
@@ -383,6 +383,8 @@ int comedi_device_attach(struct comedi_device *dev, struct comedi_devconfig *it)
        /* initialize dev->driver here so
         * comedi_error() can be called from attach */
        dev->driver = driv;
+       dev->board_name = dev->board_ptr ? *(const char **)dev->board_ptr
+                                        : dev->driver->driver_name;
        ret = driv->attach(dev, it);
        if (ret >= 0)
                ret = comedi_device_postconfig(dev);
@@ -423,6 +425,7 @@ int comedi_auto_config(struct device *hardware_device,
        /* Note: comedi_alloc_board_minor() locked dev->mutex. */
 
        dev->driver = driver;
+       dev->board_name = dev->driver->driver_name;
        ret = driver->auto_attach(dev, context);
        if (ret >= 0)
                ret = comedi_device_postconfig(dev);