Home
last modified time | relevance | path

Searched refs:hid (Results 1 – 25 of 296) sorted by relevance

12345678910>>...12

/linux/drivers/hid/intel-ish-hid/
H A Dishtp-hid.c21 static int ishtp_hid_parse(struct hid_device *hid) in ishtp_hid_parse() argument
23 struct ishtp_hid_data *hid_data = hid->driver_data; in ishtp_hid_parse()
27 rv = hid_parse_report(hid, client_data->report_descr[hid_data->index], in ishtp_hid_parse()
36 static int ishtp_hid_start(struct hid_device *hid) in ishtp_hid_start() argument
41 static void ishtp_hid_stop(struct hid_device *hid) in ishtp_hid_stop() argument
45 static int ishtp_hid_open(struct hid_device *hid) in ishtp_hid_open() argument
50 static void ishtp_hid_close(struct hid_device *hid) in ishtp_hid_close() argument
54 static int ishtp_raw_request(struct hid_device *hid, unsigned char reportnum, in ishtp_raw_request() argument
58 struct ishtp_hid_data *hid_data = hid->driver_data; in ishtp_raw_request()
73 hid_ishtp_get_report(hid, reportnum, rtype); in ishtp_raw_request()
[all …]
/linux/drivers/hid/intel-thc-hid/intel-quicki2c/
H A Dquicki2c-hid.c21 static int quicki2c_hid_parse(struct hid_device *hid) in quicki2c_hid_parse() argument
23 struct quicki2c_device *qcdev = hid->driver_data; in quicki2c_hid_parse()
26 return hid_parse_report(hid, qcdev->report_descriptor, in quicki2c_hid_parse()
33 static int quicki2c_hid_start(struct hid_device *hid) in quicki2c_hid_start() argument
38 static void quicki2c_hid_stop(struct hid_device *hid) in quicki2c_hid_stop() argument
42 static int quicki2c_hid_open(struct hid_device *hid) in quicki2c_hid_open() argument
47 static void quicki2c_hid_close(struct hid_device *hid) in quicki2c_hid_close() argument
51 static int quicki2c_hid_raw_request(struct hid_device *hid, in quicki2c_hid_raw_request() argument
56 struct quicki2c_device *qcdev = hid->driver_data; in quicki2c_hid_raw_request()
80 static int quicki2c_hid_power(struct hid_device *hid, int lvl) in quicki2c_hid_power() argument
[all …]
/linux/sound/soc/sdca/
H A Dsdca_hid.c13 #include <linux/hid.h>
25 static int sdwhid_parse(struct hid_device *hid) in sdwhid_parse()
27 struct sdca_function_data *function = hid->driver_data; in sdwhid_parse()
31 rsize = le16_to_cpu(function->hid.desc.rpt_desc.wDescriptorLength); in sdwhid_parse()
34 dev_err(&hid->dev, "invalid size of report descriptor (%u)\n", rsize); in sdwhid_parse()
38 ret = hid_parse_report(hid, function->hid.report_desc, rsize); in sdwhid_parse()
43 dev_err(&hid->dev, "parsing report descriptor failed\n"); in sdwhid_start() argument
47 static int sdwhid_start(struct hid_device *hid)
52 static void sdwhid_stop(struct hid_device *hid) in sdwhid_raw_request() argument
21 sdwhid_parse(struct hid_device * hid) sdwhid_parse() argument
48 sdwhid_stop(struct hid_device * hid) sdwhid_stop() argument
67 sdwhid_open(struct hid_device * hid) sdwhid_open() argument
72 sdwhid_close(struct hid_device * hid) sdwhid_close() argument
88 struct hid_device *hid; sdca_add_hid_device() local
[all...]
/linux/drivers/staging/greybus/
H A Dhid.c22 struct hid_device *hid; member
146 hid_input_report(ghid->hid, HID_INPUT_REPORT, in gb_hid_request_handler()
158 static void gb_hid_find_max_report(struct hid_device *hid, unsigned int type, in gb_hid_find_max_report() argument
164 list_for_each_entry(report, &hid->report_enum[type].report_list, list) { in gb_hid_find_max_report()
204 hid_report_raw_event(ghid->hid, report->type, ghid->inbuf, ghid->bufsize, size, 1); in gb_hid_init_report()
209 struct hid_device *hid = ghid->hid; in gb_hid_init_reports() local
213 &hid->report_enum[HID_INPUT_REPORT].report_list, in gb_hid_init_reports()
218 &hid->report_enum[HID_FEATURE_REPORT].report_list, in gb_hid_init_reports()
223 static int __gb_hid_get_raw_report(struct hid_device *hid, in __gb_hid_get_raw_report() argument
227 struct gb_hid *ghid = hid->driver_data; in __gb_hid_get_raw_report()
[all …]
/linux/drivers/hid/
H A Dhid-cmedia.c87 struct hid_device *hid; member
91 static void hp_ev(struct hid_device *hid, struct cmhid *cm, int value) in hp_ev() argument
97 static int cmhid_raw_event(struct hid_device *hid, struct hid_report *report, in cmhid_raw_event() argument
100 struct cmhid *cm = hid_get_drvdata(hid); in cmhid_raw_event()
102 if (len != CM6533_JD_RAWEV_LEN || !(hid->claimed & HID_CLAIMED_INPUT)) in cmhid_raw_event()
108 hp_ev(hid, cm, 0); in cmhid_raw_event()
112 hp_ev(hid, cm, 1); in cmhid_raw_event()
120 static int cmhid_input_configured(struct hid_device *hid, in cmhid_input_configured() argument
124 struct cmhid *cm = hid_get_drvdata(hid); in cmhid_input_configured()
136 static int cmhid_input_mapping(struct hid_device *hid, in cmhid_input_mapping() argument
[all …]
H A Dhid-appleir.c109 struct hid_device *hid; member
152 static void key_up(struct hid_device *hid, struct appleir *appleir, int key) in key_up() argument
158 static void key_down(struct hid_device *hid, struct appleir *appleir, int key) in key_down() argument
172 struct hid_device *hid = appleir->hid; in key_up_tick() local
177 key_up(hid, appleir, appleir->current_key); in key_up_tick()
183 static int appleir_raw_event(struct hid_device *hid, struct hid_report *report, in appleir_raw_event() argument
186 struct appleir *appleir = hid_get_drvdata(hid); in appleir_raw_event()
192 if (len != 5 || !(hid->claimed & HID_CLAIMED_INPUT)) in appleir_raw_event()
208 key_up(hid, appleir, appleir->current_key); in appleir_raw_event()
219 key_down(hid, appleir, appleir->current_key); in appleir_raw_event()
[all …]
H A Dhid-samsung.c94 if (ifnum != 1 || HID_UP_CONSUMER != (usage->hid & HID_USAGE_PAGE)) in samsung_kbd_mouse_input_mapping()
98 usage->hid & HID_USAGE); in samsung_kbd_mouse_input_mapping()
100 switch (usage->hid & HID_USAGE) { in samsung_kbd_mouse_input_mapping()
146 if (!(HID_UP_CONSUMER == (usage->hid & HID_USAGE_PAGE) || in samsung_kbd_input_mapping()
147 HID_UP_KEYBOARD == (usage->hid & HID_USAGE_PAGE))) in samsung_kbd_input_mapping()
151 usage->hid & HID_USAGE); in samsung_kbd_input_mapping()
153 if (HID_UP_KEYBOARD == (usage->hid & HID_USAGE_PAGE)) { in samsung_kbd_input_mapping()
155 switch (usage->hid & HID_USAGE) { in samsung_kbd_input_mapping()
171 if (HID_UP_CONSUMER == (usage->hid & HID_USAGE_PAGE)) { in samsung_kbd_input_mapping()
172 switch (usage->hid & HID_USAGE) { in samsung_kbd_input_mapping()
[all …]
H A Dhid-creative-sb0540.c119 struct hid_device *hid; member
149 static int creative_sb0540_raw_event(struct hid_device *hid, in creative_sb0540_raw_event() argument
152 struct creative_sb0540 *creative_sb0540 = hid_get_drvdata(hid); in creative_sb0540_raw_event()
156 if (len != 6 || !(hid->claimed & HID_CLAIMED_INPUT)) in creative_sb0540_raw_event()
172 hid_err(hid, "Could not get a key for main_code %llX\n", in creative_sb0540_raw_event()
185 static int creative_sb0540_input_configured(struct hid_device *hid, in creative_sb0540_input_configured() argument
189 struct creative_sb0540 *creative_sb0540 = hid_get_drvdata(hid); in creative_sb0540_input_configured()
209 static int creative_sb0540_input_mapping(struct hid_device *hid, in creative_sb0540_input_mapping() argument
220 static int creative_sb0540_probe(struct hid_device *hid, in creative_sb0540_probe() argument
226 creative_sb0540 = devm_kzalloc(&hid->dev, in creative_sb0540_probe()
[all …]
H A Dhid-core.c353 field->usage[i].hid = parser->local.usage[j]; in hid_add_field()
767 struct hid_device *hid = container_of(ref, struct hid_device, ref); in hiddev_free() local
769 hid_close_report(hid); in hiddev_free()
770 hid_free_bpf_rdesc(hid); in hiddev_free()
771 kfree(hid->dev_rdesc); in hiddev_free()
772 kfree(hid); in hiddev_free()
777 struct hid_device *hid = to_hid_device(dev); in hid_device_release() local
779 kref_put(&hid->ref, hiddev_free); in hid_device_release()
845 struct hid_device *hid = parser->device; in hid_scan_input_usage() local
848 hid->group = HID_GROUP_MULTITOUCH; in hid_scan_input_usage()
[all …]
H A Dhid-lg3ff.c47 struct hid_device *hid = input_get_drvdata(dev); in hid_lg3ff_play() local
48 struct list_head *report_list = &hid->report_enum[HID_OUTPUT_REPORT].report_list; in hid_lg3ff_play()
78 hid_hw_request(hid, report, HID_REQ_SET_REPORT); in hid_lg3ff_play()
85 struct hid_device *hid = input_get_drvdata(dev); in hid_lg3ff_set_autocenter() local
86 struct list_head *report_list = &hid->report_enum[HID_OUTPUT_REPORT].report_list; in hid_lg3ff_set_autocenter()
104 hid_hw_request(hid, report, HID_REQ_SET_REPORT); in hid_lg3ff_set_autocenter()
114 int lg3ff_init(struct hid_device *hid) in lg3ff_init() argument
122 if (list_empty(&hid->inputs)) { in lg3ff_init()
123 hid_err(hid, "no inputs found\n"); in lg3ff_init()
126 hidinput = list_entry(hid->inputs.next, struct hid_input, list); in lg3ff_init()
[all …]
H A Dhidraw.c127 dev = hidraw_table[minor]->hid; in hidraw_send_report()
206 dev = hidraw_table[minor]->hid; in hidraw_get_report()
302 err = hid_hw_power(dev->hid, PM_HINT_FULLON); in hidraw_open()
308 err = hid_hw_open(dev->hid); in hidraw_open()
310 hid_hw_power(dev->hid, PM_HINT_NORMAL); in hidraw_open()
346 hid_hw_close(hidraw->hid); in drop_ref()
360 hid_hw_close(hidraw->hid); in drop_ref()
361 hid_hw_power(hidraw->hid, PM_HINT_NORMAL); in drop_ref()
400 struct hid_device *hid = dev->hid; in hidraw_fixed_size_ioctl() local
404 if (put_user(hid->rsize, (int __user *)arg)) in hidraw_fixed_size_ioctl()
[all …]
H A Dhid-lgff.c59 struct hid_device *hid = input_get_drvdata(dev); in hid_lgff_play() local
60 struct list_head *report_list = &hid->report_enum[HID_OUTPUT_REPORT].report_list; in hid_lgff_play()
78 hid_hw_request(hid, report, HID_REQ_SET_REPORT); in hid_lgff_play()
93 hid_hw_request(hid, report, HID_REQ_SET_REPORT); in hid_lgff_play()
101 struct hid_device *hid = input_get_drvdata(dev); in hid_lgff_set_autocenter() local
102 struct list_head *report_list = &hid->report_enum[HID_OUTPUT_REPORT].report_list; in hid_lgff_set_autocenter()
113 hid_hw_request(hid, report, HID_REQ_SET_REPORT); in hid_lgff_set_autocenter()
116 int lgff_init(struct hid_device* hid) in lgff_init() argument
124 if (list_empty(&hid->inputs)) { in lgff_init()
125 hid_err(hid, "no inputs found\n"); in lgff_init()
[all …]
H A Dhid-lg2ff.c25 struct hid_device *hid = input_get_drvdata(dev); in play_effect() local
45 hid_hw_request(hid, lg2ff->report, HID_REQ_SET_REPORT); in play_effect()
49 int lg2ff_init(struct hid_device *hid) in lg2ff_init() argument
57 if (list_empty(&hid->inputs)) { in lg2ff_init()
58 hid_err(hid, "no inputs found\n"); in lg2ff_init()
61 hidinput = list_entry(hid->inputs.next, struct hid_input, list); in lg2ff_init()
65 report = hid_validate_values(hid, HID_OUTPUT_REPORT, 0, 0, 7); in lg2ff_init()
90 hid_hw_request(hid, report, HID_REQ_SET_REPORT); in lg2ff_init()
92 …hid_info(hid, "Force feedback for Logitech variant 2 rumble devices by Anssi Hannula <anssi.hannul… in lg2ff_init()
/linux/drivers/hid/surface-hid/
H A Dsurface_hid_core.c102 static int surface_hid_start(struct hid_device *hid) in surface_hid_start() argument
104 struct surface_hid_device *shid = hid->driver_data; in surface_hid_start()
109 static void surface_hid_stop(struct hid_device *hid) in surface_hid_stop() argument
111 struct surface_hid_device *shid = hid->driver_data; in surface_hid_stop()
126 static int surface_hid_open(struct hid_device *hid) in surface_hid_open() argument
131 static void surface_hid_close(struct hid_device *hid) in surface_hid_close() argument
135 static int surface_hid_parse(struct hid_device *hid) in surface_hid_parse() argument
137 struct surface_hid_device *shid = hid->driver_data; in surface_hid_parse()
151 status = hid_parse_report(hid, buf, len); in surface_hid_parse()
157 static int surface_hid_raw_request(struct hid_device *hid, unsigned char reportnum, u8 *buf, in surface_hid_raw_request() argument
[all …]
/linux/drivers/hid/usbhid/
H A Dhiddev.c56 hiddev_lookup_report(struct hid_device *hid, struct hiddev_report_info *rinfo) in hiddev_lookup_report() argument
68 report_enum = hid->report_enum + in hiddev_lookup_report()
109 hiddev_lookup_usage(struct hid_device *hid, struct hiddev_usage_ref *uref) in hiddev_lookup_usage() argument
120 report_enum = hid->report_enum + in hiddev_lookup_usage()
127 if (field->usage[j].hid == uref->usage_code) { in hiddev_lookup_usage()
140 static void hiddev_send_event(struct hid_device *hid, in hiddev_send_event() argument
143 struct hiddev *hiddev = hid->hiddev; in hiddev_send_event()
166 void hiddev_hid_event(struct hid_device *hid, struct hid_field *field, in hiddev_hid_event() argument
179 uref.usage_code = usage->hid; in hiddev_hid_event()
182 hiddev_send_event(hid, &uref); in hiddev_hid_event()
[all …]
/linux/tools/testing/selftests/hid/
H A Dhid_common.h161 static void uhid_destroy(struct __test_metadata *_metadata, struct uhid_device *hid) in uhid_destroy() argument
168 uhid_write(_metadata, hid->uhid_fd, &ev); in uhid_destroy()
302 static int uhid_send_event(struct __test_metadata *_metadata, struct uhid_device *hid, in uhid_send_event() argument
316 return uhid_write(_metadata, hid->uhid_fd, &ev); in uhid_send_event()
319 static bool match_sysfs_device(struct uhid_device *hid, const char *workdir, struct dirent *dir) in match_sysfs_device() argument
328 snprintf(target, sizeof(target), "%04X:%04X:%04X.*", hid->bus, hid->vid, hid->pid); in match_sysfs_device()
340 sprintf(phys, "PHYS=%d", hid->dev_id); in match_sysfs_device()
351 static int get_hid_id(struct uhid_device *hid) in get_hid_id() argument
366 if (!match_sysfs_device(hid, workdir, dir)) in get_hid_id()
383 static int get_hidraw(struct uhid_device *hid) in get_hidraw() argument
[all …]
H A Dhid_bpf.c9 unsigned int hid; member
17 struct uhid_device hid; in FIXTURE() local
19 struct hid *skel; in FIXTURE()
47 uhid_destroy(_metadata, &self->hid); in FIXTURE_TEARDOWN()
50 pthread_join(self->hid.tid, &uhid_err); in FIXTURE_TEARDOWN()
61 err = setup_uhid(_metadata, &self->hid, BUS_USB, 0x0001, 0x0a36, rdesc, sizeof(rdesc)); in FIXTURE_SETUP()
127 *ops_hid_id = self->hid.hid_id; in load_programs()
148 self->hidraw_fd = open_hidraw(&self->hid); in load_programs()
183 uhid_send_event(_metadata, &self->hid, buf, 6); in TEST_F()
199 uhid_send_event(_metadata, &self->hid, buf, 6); in TEST_F()
[all …]
/linux/drivers/hid/bpf/progs/
H A DREADME9 They should be loaded in the kernel by `udev-hid-bpf`:
11 https://gitlab.freedesktop.org/libevdev/udev-hid-bpf
17 Once a .bpf.c file is accepted here, it is duplicated in `udev-hid-bpf`
20 land in distributions when they update `udev-hid-bpf`
30 Just run `sudo udev-hid-bpf install ./my-awesome-fix.bpf.o`
34 - copy the `.bpf.o` you want in `/etc/udev-hid-bpf/`
37 The following should do the trick (assuming udev-hid-bpf is available in
41 $> cp xppen-ArtistPro16Gen2.bpf.o /etc/udev-hid-bpf/
42 $> udev-hid-bpf inspect xppen-ArtistPro16Gen2.bpf.o
61 $> cat <EOF > /etc/udev/rules.d/99-load-hid-bpf-xppen-ArtistPro16Gen2.rules
[all …]
/linux/include/linux/
H A Dhid.h506 unsigned hid; /* hid usage code */ member
1025 extern void hidinput_report_event(struct hid_device *hid, struct hid_report *report);
1026 extern int hidinput_connect(struct hid_device *hid, unsigned int connect_mask);
1028 void hidinput_reset_resume(struct hid_device *hid);
1033 int hid_input_report(struct hid_device *hid, enum hid_report_type type, u8 *data, u32 size,
1035 int hid_safe_input_report(struct hid_device *hid, enum hid_report_type type, u8 *data,
1037 struct hid_field *hidinput_get_led_field(struct hid_device *hid);
1038 unsigned int hidinput_count_leds(struct hid_device *hid);
1041 int __hid_request(struct hid_device *hid, struct hid_report *rep, enum hid_class_request reqtype);
1047 int hid_parse_report(struct hid_device *hid, const __u8 *start, unsigned size);
[all …]
H A Dhiddev.h29 struct hid_device *hid; member
41 int hiddev_connect(struct hid_device *hid, unsigned int force);
43 void hiddev_hid_event(struct hid_device *hid, struct hid_field *field,
45 void hiddev_report_event(struct hid_device *hid, struct hid_report *report);
47 static inline int hiddev_connect(struct hid_device *hid, in hiddev_connect() argument
50 static inline void hiddev_disconnect(struct hid_device *hid) { } in hiddev_disconnect() argument
51 static inline void hiddev_hid_event(struct hid_device *hid, struct hid_field *field, in hiddev_hid_event() argument
53 static inline void hiddev_report_event(struct hid_device *hid, struct hid_report *report) { } in hiddev_report_event() argument
/linux/net/bluetooth/hidp/
H A Dcore.c86 } else if (session->hid) { in hidp_copy_session()
87 ci->vendor = session->hid->vendor; in hidp_copy_session()
88 ci->product = session->hid->product; in hidp_copy_session()
89 ci->version = session->hid->version; in hidp_copy_session()
90 strscpy(ci->name, session->hid->name, 128); in hidp_copy_session()
243 static int hidp_get_raw_report(struct hid_device *hid, in hidp_get_raw_report() argument
248 struct hidp_session *session = hid->driver_data; in hidp_get_raw_report()
251 int numbered_reports = hid->report_enum[report_type].numbered; in hidp_get_raw_report()
328 static int hidp_set_raw_report(struct hid_device *hid, unsigned char reportnum, in hidp_set_raw_report() argument
332 struct hidp_session *session = hid->driver_data; in hidp_set_raw_report()
[all …]
/linux/drivers/hid/i2c-hid/
H A DKconfig22 will be called i2c-hid-acpi. It will also build/depend on the
23 module i2c-hid.
28 # (board-file) instantiated "hid-over-i2c" type i2c-clients.
35 well as binding to manually (board-file) instantiated i2c-hid-clients.
40 will be called i2c-hid-of. It will also build/depend on the
41 module i2c-hid.
44 tristate "Driver for Elan hid-i2c based devices on OF systems"
50 the i2c-hid protocol on Open Firmware (Device Tree)-based
56 will be called i2c-hid-of-elan. It will also build/depend on
57 the module i2c-hid.
[all …]
/linux/Documentation/ABI/testing/
H A Dsysfs-driver-hid-ntrig1 What: /sys/bus/hid/drivers/ntrig/<dev>/activate_slack
10 What: /sys/bus/hid/drivers/ntrig/<dev>/decativate_slack
24 What: /sys/bus/hid/drivers/ntrig/<dev>/activation_width
25 What: /sys/bus/hid/drivers/ntrig/<dev>/activation_height
40 What: /sys/bus/hid/drivers/ntrig/<dev>/min_width
41 What: /sys/bus/hid/drivers/ntrig/<dev>/min_height
57 What: /sys/bus/hid/drivers/ntrig/<dev>/sensor_physical_width
58 What: /sys/bus/hid/drivers/ntrig/<dev>/sensor_physical_height
67 What: /sys/bus/hid/drivers/ntrig/<dev>/sensor_logical_width
68 What: /sys/bus/hid/drivers/ntrig/<dev>/sensor_logical_height
/linux/drivers/platform/x86/
H A Dasus-tf103c-dock.c108 struct hid_device *hid; member
214 static int tf103c_dock_hid_parse(struct hid_device *hid) in tf103c_dock_hid_parse() argument
216 return hid_parse_report(hid, tf103c_dock_kbd_hid_desc, in tf103c_dock_hid_parse()
220 static int tf103c_dock_hid_start(struct hid_device *hid) in tf103c_dock_hid_start() argument
225 static void tf103c_dock_hid_stop(struct hid_device *hid) in tf103c_dock_hid_stop() argument
227 hid->claimed = 0; in tf103c_dock_hid_stop()
230 static int tf103c_dock_hid_open(struct hid_device *hid) in tf103c_dock_hid_open() argument
232 struct tf103c_dock_data *dock = hid->driver_data; in tf103c_dock_hid_open()
238 static void tf103c_dock_hid_close(struct hid_device *hid) in tf103c_dock_hid_close() argument
240 struct tf103c_dock_data *dock = hid->driver_data; in tf103c_dock_hid_close()
[all …]
/linux/drivers/macintosh/
H A Dadbhid.c756 struct adbhid *hid; in adbhid_input_register() local
767 adbhid[id] = hid = kzalloc_obj(struct adbhid); in adbhid_input_register()
769 if (!hid || !input_dev) { in adbhid_input_register()
774 sprintf(hid->phys, "adb%d:%d.%02x/input", id, default_id, original_handler_id); in adbhid_input_register()
776 hid->input = input_dev; in adbhid_input_register()
777 hid->id = default_id; in adbhid_input_register()
778 hid->original_handler_id = original_handler_id; in adbhid_input_register()
779 hid->current_handler_id = current_handler_id; in adbhid_input_register()
780 hid->mouse_kind = mouse_kind; in adbhid_input_register()
781 hid->flags = 0; in adbhid_input_register()
[all …]

12345678910>>...12