diff options
author | Ian Abbott | 2013-04-04 15:59:12 +0200 |
---|---|---|
committer | Greg Kroah-Hartman | 2013-04-05 23:33:20 +0200 |
commit | f3abc831386e3606fbb21acf0ee5231df0d0185f (patch) | |
tree | 483bb4cced3c62813fbbafb370c24ef95de3bdc9 /drivers/staging/comedi/comedi_fops.c | |
parent | staging: comedi: reduce use of struct comedi_file_info (diff) | |
download | kernel-qcow2-linux-f3abc831386e3606fbb21acf0ee5231df0d0185f.tar.gz kernel-qcow2-linux-f3abc831386e3606fbb21acf0ee5231df0d0185f.tar.xz kernel-qcow2-linux-f3abc831386e3606fbb21acf0ee5231df0d0185f.zip |
staging: comedi: refactor comedi_dev_from_minor()
Refactor `comedi_dev_from_minor()` to call one of two new functions
`comedi_dev_from_board_minor()` (for minor device numbers less than
`COMEDI_NUM_BOARD_MINORS`) or `comedi_dev_from_subdevice_minor()` (for
minor device numbers greater than or equal to `COMEDI_NUM_BOARD_MINORS`,
which are subdevice minor device numbers).
Remove `comedi_file_info_from_minor()` as it is no longer used.
This is a step towards removing `struct comedi_file_info`.
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/comedi/comedi_fops.c')
-rw-r--r-- | drivers/staging/comedi/comedi_fops.c | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/drivers/staging/comedi/comedi_fops.c b/drivers/staging/comedi/comedi_fops.c index beb579ddab63..5f3b1524e07d 100644 --- a/drivers/staging/comedi/comedi_fops.c +++ b/drivers/staging/comedi/comedi_fops.c @@ -190,23 +190,34 @@ static struct comedi_file_info return info; } -static struct comedi_file_info *comedi_file_info_from_minor(unsigned minor) -{ - if (minor < COMEDI_NUM_BOARD_MINORS) - return comedi_file_info_from_board_minor(minor); - else - return comedi_file_info_from_subdevice_minor(minor); -} - static struct comedi_device * comedi_dev_from_file_info(struct comedi_file_info *info) { return info ? info->device : NULL; } +static struct comedi_device *comedi_dev_from_board_minor(unsigned minor) +{ + struct comedi_file_info *info; + + info = comedi_file_info_from_board_minor(minor); + return comedi_dev_from_file_info(info); +} + +static struct comedi_device *comedi_dev_from_subdevice_minor(unsigned minor) +{ + struct comedi_file_info *info; + + info = comedi_file_info_from_subdevice_minor(minor); + return comedi_dev_from_file_info(info); +} + struct comedi_device *comedi_dev_from_minor(unsigned minor) { - return comedi_dev_from_file_info(comedi_file_info_from_minor(minor)); + if (minor < COMEDI_NUM_BOARD_MINORS) + return comedi_dev_from_board_minor(minor); + else + return comedi_dev_from_subdevice_minor(minor); } EXPORT_SYMBOL_GPL(comedi_dev_from_minor); |