Lines Matching full:drv
12 static char *make_driver_name(const struct device_driver *drv) in make_driver_name() argument
16 driver_name = kasprintf(GFP_KERNEL, "%s:%s", drv->bus->name, drv->name); in make_driver_name()
33 int module_add_driver(struct module *mod, const struct device_driver *drv) in module_add_driver() argument
39 if (!drv) in module_add_driver()
44 else if (drv->mod_name) { in module_add_driver()
46 mk = lookup_or_create_module_kobject(drv->mod_name); in module_add_driver()
49 drv->p->mkobj = mk; in module_add_driver()
58 ret = sysfs_create_link(&drv->p->kobj, &mk->kobj, "module"); in module_add_driver()
62 driver_name = make_driver_name(drv); in module_add_driver()
74 ret = sysfs_create_link(mk->drivers_dir, &drv->p->kobj, driver_name); in module_add_driver()
89 sysfs_remove_link(&drv->p->kobj, "module"); in module_add_driver()
93 void module_remove_driver(const struct device_driver *drv) in module_remove_driver() argument
98 if (!drv) in module_remove_driver()
101 sysfs_remove_link(&drv->p->kobj, "module"); in module_remove_driver()
103 if (drv->owner) in module_remove_driver()
104 mk = &drv->owner->mkobj; in module_remove_driver()
105 else if (drv->p->mkobj) in module_remove_driver()
106 mk = drv->p->mkobj; in module_remove_driver()
108 driver_name = make_driver_name(drv); in module_remove_driver()