Lines Matching defs:hdev
106 static __u8 *cougar_report_fixup(struct hid_device *hdev, __u8 *rdesc,
111 hid_info(hdev,
119 static struct cougar_shared *cougar_get_shared_data(struct hid_device *hdev)
125 if (hid_compare_device_paths(hdev, shared->dev, '/')) {
159 static int cougar_bind_shared_data(struct hid_device *hdev,
167 shared = cougar_get_shared_data(hdev);
176 shared->dev = hdev;
182 error = devm_add_action(&hdev->dev, cougar_remove_shared_data, cougar);
194 static int cougar_probe(struct hid_device *hdev,
202 cougar = devm_kzalloc(&hdev->dev, sizeof(*cougar), GFP_KERNEL);
205 hid_set_drvdata(hdev, cougar);
207 error = hid_parse(hdev);
209 hid_err(hdev, "parse failed\n");
213 if (hdev->collection->usage == COUGAR_VENDOR_USAGE) {
219 error = hid_hw_start(hdev, connect_mask);
221 hid_err(hdev, "hw start failed\n");
225 error = cougar_bind_shared_data(hdev, cougar);
233 if (hdev->collection->usage == HID_GD_KEYBOARD) {
234 list_for_each_entry_safe(hidinput, next, &hdev->inputs, list) {
241 } else if (hdev->collection->usage == COUGAR_VENDOR_USAGE) {
244 error = hid_hw_open(hdev);
251 hid_hw_stop(hdev);
258 static int cougar_raw_event(struct hid_device *hdev, struct hid_report *report,
266 cougar = hid_get_drvdata(hdev);
286 hid_warn(hdev, "unmapped special key code %0x: ignoring\n", code);
290 static void cougar_remove(struct hid_device *hdev)
292 struct cougar *cougar = hid_get_drvdata(hdev);
299 hid_hw_close(hdev);
301 hid_hw_stop(hdev);