Эх сурвалжийг харах

staging: comedi: drivers: introduce comedi_alloc_devpriv()

Introduce a helper function to allocate memory and set the
comedi_device private data pointer.

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>
H Hartley Sweeten 12 жил өмнө
parent
commit
54db996e6d

+ 1 - 0
drivers/staging/comedi/comedidev.h

@@ -357,6 +357,7 @@ void comedi_buf_memcpy_from(struct comedi_async *async, unsigned int offset,
 
 
 /* drivers.c - general comedi driver functions */
 /* drivers.c - general comedi driver functions */
 
 
+void *comedi_alloc_devpriv(struct comedi_device *, size_t);
 int comedi_alloc_subdevices(struct comedi_device *, int);
 int comedi_alloc_subdevices(struct comedi_device *, int);
 
 
 int comedi_load_firmware(struct comedi_device *, struct device *,
 int comedi_load_firmware(struct comedi_device *, struct device *,

+ 12 - 0
drivers/staging/comedi/drivers.c

@@ -57,6 +57,18 @@ static void comedi_clear_hw_dev(struct comedi_device *dev)
 	dev->hw_dev = NULL;
 	dev->hw_dev = NULL;
 }
 }
 
 
+/**
+ * comedi_alloc_devpriv() - Allocate memory for the device private data.
+ * @dev: comedi_device struct
+ * @size: size of the memory to allocate
+ */
+void *comedi_alloc_devpriv(struct comedi_device *dev, size_t size)
+{
+	dev->private = kzalloc(size, GFP_KERNEL);
+	return dev->private;
+}
+EXPORT_SYMBOL_GPL(comedi_alloc_devpriv);
+
 int comedi_alloc_subdevices(struct comedi_device *dev, int num_subdevices)
 int comedi_alloc_subdevices(struct comedi_device *dev, int num_subdevices)
 {
 {
 	struct comedi_subdevice *s;
 	struct comedi_subdevice *s;