[PATCH 25/37] staging: comedi: remove hardware_device from struct comedi_device_info

Ian Abbott abbotti at mev.co.uk
Thu Apr 4 13:59:06 UTC 2013

The `hardware_device` member of `struct comedi_device_info` is only set
to point to a hardware device by the auto-configuration code (specifically
`comedi_alloc_board_minor() with a non-NULL `hardware_device` parameter)
so that it can be found again by the auto-unconfiguration code
(specifically `comedi_release_hardware_device()`).  However, as
`info->device->hw_dev` (where `info` is a pointer to the `struct
comedi_device_info`) is set to the same value as `info->hardware_device`
(by calling `comedi_set_hw_dev()` with the same hardware device pointer)
we can look for that instead, so there is no need for the
`hardware_device` member any more.  Get rid of it.

Signed-off-by: Ian Abbott <abbotti at mev.co.uk>
 drivers/staging/comedi/comedi_fops.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/staging/comedi/comedi_fops.c b/drivers/staging/comedi/comedi_fops.c
index 0048135..b73d806 100644
--- a/drivers/staging/comedi/comedi_fops.c
+++ b/drivers/staging/comedi/comedi_fops.c
@@ -85,7 +85,6 @@ struct comedi_file_info {
 	struct comedi_device *device;
 	struct comedi_subdevice *read_subdevice;
 	struct comedi_subdevice *write_subdevice;
-	struct device *hardware_device;
 static DEFINE_MUTEX(comedi_board_minor_table_lock);
@@ -2368,7 +2367,6 @@ struct comedi_device *comedi_alloc_board_minor(struct device *hardware_device)
 		return ERR_PTR(-ENOMEM);
 	info->device = dev;
-	info->hardware_device = hardware_device;
 	comedi_set_hw_dev(dev, hardware_device);
@@ -2415,7 +2413,7 @@ void comedi_release_hardware_device(struct device *hardware_device)
 	     minor++) {
 		info = comedi_board_minor_table[minor];
-		if (info && info->hardware_device == hardware_device) {
+		if (info && info->device->hw_dev == hardware_device) {
 			comedi_board_minor_table[minor] = NULL;

More information about the devel mailing list