Lines Matching refs:hdrv
1259 struct hid_driver *hdrv = hid->driver; in hid_process_event() local
1265 if (hdrv && hdrv->event && hid_match_usage(hid, usage)) { in hid_process_event()
1266 ret = hdrv->event(hid, field, usage, value); in hid_process_event()
1270 hdrv->name, ret); in hid_process_event()
1488 struct hid_driver *hdrv; in hid_report_raw_event() local
1525 hdrv = hid->driver; in hid_report_raw_event()
1526 if (hdrv && hdrv->report) in hid_report_raw_event()
1527 hdrv->report(hid, report); in hid_report_raw_event()
1551 struct hid_driver *hdrv; in hid_input_report() local
1566 hdrv = hid->driver; in hid_input_report()
1585 if (hdrv && hdrv->raw_event && hid_match_report(hid, report)) { in hid_input_report()
1586 ret = hdrv->raw_event(hid, report, data, size); in hid_input_report()
1881 struct hid_driver *hdrv = to_hid_driver(drv); in new_id_store() local
1902 spin_lock(&hdrv->dyn_lock); in new_id_store()
1903 list_add_tail(&dynid->list, &hdrv->dyn_list); in new_id_store()
1904 spin_unlock(&hdrv->dyn_lock); in new_id_store()
1906 ret = driver_attach(&hdrv->driver); in new_id_store()
1918 static void hid_free_dynids(struct hid_driver *hdrv) in hid_free_dynids() argument
1922 spin_lock(&hdrv->dyn_lock); in hid_free_dynids()
1923 list_for_each_entry_safe(dynid, n, &hdrv->dyn_list, list) { in hid_free_dynids()
1927 spin_unlock(&hdrv->dyn_lock); in hid_free_dynids()
1931 struct hid_driver *hdrv) in hid_match_device() argument
1935 spin_lock(&hdrv->dyn_lock); in hid_match_device()
1936 list_for_each_entry(dynid, &hdrv->dyn_list, list) { in hid_match_device()
1938 spin_unlock(&hdrv->dyn_lock); in hid_match_device()
1942 spin_unlock(&hdrv->dyn_lock); in hid_match_device()
1944 return hid_match_id(hdev, hdrv->id_table); in hid_match_device()
1950 struct hid_driver *hdrv = to_hid_driver(drv); in hid_bus_match() local
1953 return hid_match_device(hdev, hdrv) != NULL; in hid_bus_match()
1981 struct hid_driver *hdrv = to_hid_driver(dev->driver); in hid_device_probe() local
1995 id = hid_match_device(hdev, hdrv); in hid_device_probe()
2001 if (hdrv->match) { in hid_device_probe()
2002 if (!hdrv->match(hdev, hid_ignore_special_drivers)) { in hid_device_probe()
2020 hdev->driver = hdrv; in hid_device_probe()
2021 if (hdrv->probe) { in hid_device_probe()
2022 ret = hdrv->probe(hdev, id); in hid_device_probe()
2043 struct hid_driver *hdrv; in hid_device_remove() local
2052 hdrv = hdev->driver; in hid_device_remove()
2053 if (hdrv) { in hid_device_remove()
2054 if (hdrv->remove) in hid_device_remove()
2055 hdrv->remove(hdev); in hid_device_remove()
2253 struct hid_driver *hdrv = data; in __hid_bus_reprobe_drivers() local
2256 if (hdev->driver == hdrv && in __hid_bus_reprobe_drivers()
2257 !hdrv->match(hdev, hid_ignore_special_drivers) && in __hid_bus_reprobe_drivers()
2266 struct hid_driver *hdrv = to_hid_driver(drv); in __hid_bus_driver_added() local
2268 if (hdrv->match) { in __hid_bus_driver_added()
2269 bus_for_each_dev(&hid_bus_type, NULL, hdrv, in __hid_bus_driver_added()
2281 int __hid_register_driver(struct hid_driver *hdrv, struct module *owner, in __hid_register_driver() argument
2286 hdrv->driver.name = hdrv->name; in __hid_register_driver()
2287 hdrv->driver.bus = &hid_bus_type; in __hid_register_driver()
2288 hdrv->driver.owner = owner; in __hid_register_driver()
2289 hdrv->driver.mod_name = mod_name; in __hid_register_driver()
2291 INIT_LIST_HEAD(&hdrv->dyn_list); in __hid_register_driver()
2292 spin_lock_init(&hdrv->dyn_lock); in __hid_register_driver()
2294 ret = driver_register(&hdrv->driver); in __hid_register_driver()
2304 void hid_unregister_driver(struct hid_driver *hdrv) in hid_unregister_driver() argument
2306 driver_unregister(&hdrv->driver); in hid_unregister_driver()
2307 hid_free_dynids(hdrv); in hid_unregister_driver()
2309 bus_for_each_drv(&hid_bus_type, NULL, hdrv, __bus_removed_driver); in hid_unregister_driver()