Lines Matching refs:hdrv

1502 	struct hid_driver *hdrv = hid->driver;  in hid_process_event()  local
1508 if (hdrv && hdrv->event && hid_match_usage(hid, usage)) { in hid_process_event()
1509 ret = hdrv->event(hid, field, usage, value); in hid_process_event()
1513 hdrv->name, ret); in hid_process_event()
1745 struct hid_driver *hdrv; in hid_report_raw_event() local
1784 hdrv = hid->driver; in hid_report_raw_event()
1785 if (hdrv && hdrv->report) in hid_report_raw_event()
1786 hdrv->report(hid, report); in hid_report_raw_event()
1810 struct hid_driver *hdrv; in hid_input_report() local
1825 hdrv = hid->driver; in hid_input_report()
1844 if (hdrv && hdrv->raw_event && hid_match_report(hid, report)) { in hid_input_report()
1845 ret = hdrv->raw_event(hid, report, data, size); in hid_input_report()
2140 struct hid_driver *hdrv = to_hid_driver(drv); in new_id_store() local
2161 spin_lock(&hdrv->dyn_lock); in new_id_store()
2162 list_add_tail(&dynid->list, &hdrv->dyn_list); in new_id_store()
2163 spin_unlock(&hdrv->dyn_lock); in new_id_store()
2165 ret = driver_attach(&hdrv->driver); in new_id_store()
2177 static void hid_free_dynids(struct hid_driver *hdrv) in hid_free_dynids() argument
2181 spin_lock(&hdrv->dyn_lock); in hid_free_dynids()
2182 list_for_each_entry_safe(dynid, n, &hdrv->dyn_list, list) { in hid_free_dynids()
2186 spin_unlock(&hdrv->dyn_lock); in hid_free_dynids()
2190 struct hid_driver *hdrv) in hid_match_device() argument
2194 spin_lock(&hdrv->dyn_lock); in hid_match_device()
2195 list_for_each_entry(dynid, &hdrv->dyn_list, list) { in hid_match_device()
2197 spin_unlock(&hdrv->dyn_lock); in hid_match_device()
2201 spin_unlock(&hdrv->dyn_lock); in hid_match_device()
2203 return hid_match_id(hdev, hdrv->id_table); in hid_match_device()
2209 struct hid_driver *hdrv = to_hid_driver(drv); in hid_bus_match() local
2212 return hid_match_device(hdev, hdrv) != NULL; in hid_bus_match()
2240 struct hid_driver *hdrv = to_hid_driver(dev->driver); in hid_device_probe() local
2254 id = hid_match_device(hdev, hdrv); in hid_device_probe()
2260 if (hdrv->match) { in hid_device_probe()
2261 if (!hdrv->match(hdev, hid_ignore_special_drivers)) { in hid_device_probe()
2279 hdev->driver = hdrv; in hid_device_probe()
2280 if (hdrv->probe) { in hid_device_probe()
2281 ret = hdrv->probe(hdev, id); in hid_device_probe()
2302 struct hid_driver *hdrv; in hid_device_remove() local
2311 hdrv = hdev->driver; in hid_device_remove()
2312 if (hdrv) { in hid_device_remove()
2313 if (hdrv->remove) in hid_device_remove()
2314 hdrv->remove(hdev); in hid_device_remove()
2512 struct hid_driver *hdrv = data; in __hid_bus_reprobe_drivers() local
2515 if (hdev->driver == hdrv && in __hid_bus_reprobe_drivers()
2516 !hdrv->match(hdev, hid_ignore_special_drivers) && in __hid_bus_reprobe_drivers()
2525 struct hid_driver *hdrv = to_hid_driver(drv); in __hid_bus_driver_added() local
2527 if (hdrv->match) { in __hid_bus_driver_added()
2528 bus_for_each_dev(&hid_bus_type, NULL, hdrv, in __hid_bus_driver_added()
2540 int __hid_register_driver(struct hid_driver *hdrv, struct module *owner, in __hid_register_driver() argument
2545 hdrv->driver.name = hdrv->name; in __hid_register_driver()
2546 hdrv->driver.bus = &hid_bus_type; in __hid_register_driver()
2547 hdrv->driver.owner = owner; in __hid_register_driver()
2548 hdrv->driver.mod_name = mod_name; in __hid_register_driver()
2550 INIT_LIST_HEAD(&hdrv->dyn_list); in __hid_register_driver()
2551 spin_lock_init(&hdrv->dyn_lock); in __hid_register_driver()
2553 ret = driver_register(&hdrv->driver); in __hid_register_driver()
2563 void hid_unregister_driver(struct hid_driver *hdrv) in hid_unregister_driver() argument
2565 driver_unregister(&hdrv->driver); in hid_unregister_driver()
2566 hid_free_dynids(hdrv); in hid_unregister_driver()
2568 bus_for_each_drv(&hid_bus_type, NULL, hdrv, __bus_removed_driver); in hid_unregister_driver()