Lines Matching refs:hid

17 #include <linux/hid.h>
19 #include "hid-ids.h"
175 struct hid_device *hid;
235 hid_hw_raw_request(bigben->hid, bigben->report->id, buf, len,
259 hid_hw_raw_request(bigben->hid, bigben->report->id, buf, len,
269 struct hid_device *hid = input_get_drvdata(dev);
270 struct bigben_device *bigben = hid_get_drvdata(hid);
276 hid_err(hid, "no device data\n");
304 struct hid_device *hid = to_hid_device(dev);
305 struct bigben_device *bigben = hid_get_drvdata(hid);
311 hid_err(hid, "no device data\n");
339 struct hid_device *hid = to_hid_device(dev);
340 struct bigben_device *bigben = hid_get_drvdata(hid);
344 hid_err(hid, "no device data\n");
356 static void bigben_remove(struct hid_device *hid)
358 struct bigben_device *bigben = hid_get_drvdata(hid);
366 hid_hw_stop(hid);
369 static int bigben_probe(struct hid_device *hid,
379 bigben = devm_kzalloc(&hid->dev, sizeof(*bigben), GFP_KERNEL);
382 hid_set_drvdata(hid, bigben);
383 bigben->hid = hid;
386 error = hid_parse(hid);
388 hid_err(hid, "parse failed\n");
392 error = hid_hw_start(hid, HID_CONNECT_DEFAULT & ~HID_CONNECT_FF);
394 hid_err(hid, "hw start failed\n");
398 bigben->report = hid_validate_values(hid, HID_OUTPUT_REPORT, 0, 0, 8);
400 hid_err(hid, "no output report found\n");
405 if (list_empty(&hid->inputs)) {
406 hid_err(hid, "no inputs found\n");
411 hidinput = list_first_entry(&hid->inputs, struct hid_input, list);
422 name_sz = strlen(dev_name(&hid->dev)) + strlen(":red:bigben#") + 1;
426 &hid->dev,
437 dev_name(&hid->dev), n + 1
445 error = devm_led_classdev_register(&hid->dev, led);
458 hid_info(hid, "LED and force feedback support for BigBen gamepad\n");
463 hid_hw_stop(hid);
467 static __u8 *bigben_report_fixup(struct hid_device *hid, __u8 *rdesc,
474 hid_warn(hid, "unexpected rdesc, please submit for review\n");
482 MODULE_DEVICE_TABLE(hid, bigben_devices);