Lines Matching refs:drv
35 struct dongle_driver *drv; in irda_register_dongle() local
42 drv = list_entry(entry, struct dongle_driver, dongle_list); in irda_register_dongle()
43 if (new->type == drv->type) { in irda_register_dongle()
54 int irda_unregister_dongle(struct dongle_driver *drv) in irda_unregister_dongle() argument
57 list_del(&drv->dongle_list); in irda_unregister_dongle()
66 const struct dongle_driver *drv = NULL; in sirdev_get_dongle() local
78 drv = list_entry(entry, struct dongle_driver, dongle_list); in sirdev_get_dongle()
79 if (drv->type == type) in sirdev_get_dongle()
82 drv = NULL; in sirdev_get_dongle()
85 if (!drv) { in sirdev_get_dongle()
100 if (!try_module_get(drv->owner)) { in sirdev_get_dongle()
104 dev->dongle_drv = drv; in sirdev_get_dongle()
106 if (!drv->open || (err=drv->open(dev))!=0) in sirdev_get_dongle()
114 module_put(drv->owner); in sirdev_get_dongle()
122 const struct dongle_driver *drv = dev->dongle_drv; in sirdev_put_dongle() local
124 if (drv) { in sirdev_put_dongle()
125 if (drv->close) in sirdev_put_dongle()
126 drv->close(dev); /* close this dongle instance */ in sirdev_put_dongle()
129 module_put(drv->owner);/* decrement driver's module refcount */ in sirdev_put_dongle()