Skip to content

Commit

Permalink
staging: comedi: export comedi_set_hw_dev()
Browse files Browse the repository at this point in the history
Chnage the inline `comedi_set_hw_dev()` to an exported function and
change it's return type from `void` to `int` so we can impose some
restrictions (in a later patch) and return an error if necessary.

Only a few comedi drivers call this, although they don't need to if the
hardware device has been attached automatically via
`comedi_auto_config()` and the comedi driver's `auto_attach()` method.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Ian Abbott authored and Greg Kroah-Hartman committed Feb 4, 2013
1 parent f65cc54 commit da71751
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 8 deletions.
9 changes: 1 addition & 8 deletions drivers/staging/comedi/comedidev.h
Original file line number Diff line number Diff line change
Expand Up @@ -324,14 +324,7 @@ static inline unsigned int bytes_per_sample(const struct comedi_subdevice *subd)
* known bus type. Set automatically for auto-configured devices.
* Automatically set to NULL when detaching hardware device.
*/
static inline void comedi_set_hw_dev(struct comedi_device *dev,
struct device *hw_dev)
{
struct device *old_hw_dev = dev->hw_dev;

dev->hw_dev = get_device(hw_dev);
put_device(old_hw_dev);
}
int comedi_set_hw_dev(struct comedi_device *dev, struct device *hw_dev);

unsigned int comedi_buf_write_alloc(struct comedi_async *, unsigned int);
unsigned int comedi_buf_write_free(struct comedi_async *, unsigned int);
Expand Down
10 changes: 10 additions & 0 deletions drivers/staging/comedi/drivers.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,16 @@

struct comedi_driver *comedi_drivers;

int comedi_set_hw_dev(struct comedi_device *dev, struct device *hw_dev)
{
struct device *old_hw_dev = dev->hw_dev;

dev->hw_dev = get_device(hw_dev);
put_device(old_hw_dev);
return 0;
}
EXPORT_SYMBOL_GPL(comedi_set_hw_dev);

int comedi_alloc_subdevices(struct comedi_device *dev, int num_subdevices)
{
struct comedi_subdevice *s;
Expand Down

0 comments on commit da71751

Please sign in to comment.