From 43db062afe993fbfed184d78293527679fef9784 Mon Sep 17 00:00:00 2001 From: H Hartley Sweeten Date: Mon, 23 Feb 2015 14:57:29 -0700 Subject: [PATCH] staging: comedi: add 'pacer' member to struct comedi_device Add a new member to the comedi_device struct for a comedi_8254 'pacer'. This provides a convient place to store the data allocated by the comedi_8254 module for boards that use an 8254 device to create the data acquisition pacer clock. Automatically free this pointer in comedi_device_detach_cleanup() so that the drivers don't need to do it when then are detached. Signed-off-by: H Hartley Sweeten Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- drivers/staging/comedi/comedidev.h | 1 + drivers/staging/comedi/drivers.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/drivers/staging/comedi/comedidev.h b/drivers/staging/comedi/comedidev.h index e138eb0dc374..30595c0cd5b0 100644 --- a/drivers/staging/comedi/comedidev.h +++ b/drivers/staging/comedi/comedidev.h @@ -256,6 +256,7 @@ struct comedi_driver { struct comedi_device { int use_count; struct comedi_driver *driver; + struct comedi_8254 *pacer; void *private; struct device *class_dev; diff --git a/drivers/staging/comedi/drivers.c b/drivers/staging/comedi/drivers.c index f32e71438948..e87c68cf11d4 100644 --- a/drivers/staging/comedi/drivers.c +++ b/drivers/staging/comedi/drivers.c @@ -139,7 +139,9 @@ static void comedi_device_detach_cleanup(struct comedi_device *dev) dev->n_subdevices = 0; } kfree(dev->private); + kfree(dev->pacer); dev->private = NULL; + dev->pacer = NULL; dev->driver = NULL; dev->board_name = NULL; dev->board_ptr = NULL; -- 2.39.5