Lines Matching refs:field
109 for (j = 0; j < report->field[i]->maxusage; j++) { in hidinput_find_key()
110 usage = report->field[i]->usage + j; in hidinput_find_key()
211 __s32 hidinput_calc_abs_res(const struct hid_field *field, __u16 code) in hidinput_calc_abs_res() argument
213 __s32 unit_exponent = field->unit_exponent; in hidinput_calc_abs_res()
214 __s32 logical_extents = field->logical_maximum - in hidinput_calc_abs_res()
215 field->logical_minimum; in hidinput_calc_abs_res()
216 __s32 physical_extents = field->physical_maximum - in hidinput_calc_abs_res()
217 field->physical_minimum; in hidinput_calc_abs_res()
238 if (field->unit == 0x11) { /* If centimeters */ in hidinput_calc_abs_res()
241 } else if (field->unit == 0x13) { /* If inches */ in hidinput_calc_abs_res()
259 if (field->unit == 0x14) { /* If degrees */ in hidinput_calc_abs_res()
266 } else if (field->unit != 0x12) { /* If not radians */ in hidinput_calc_abs_res()
437 …c int hidinput_setup_battery(struct hid_device *dev, unsigned report_type, struct hid_field *field) in hidinput_setup_battery() argument
474 min = field->logical_minimum; in hidinput_setup_battery()
475 max = field->logical_maximum; in hidinput_setup_battery()
488 dev->battery_report_id = field->report->id; in hidinput_setup_battery()
496 field->physical == HID_DG_STYLUS; in hidinput_setup_battery()
551 struct hid_field *field) in hidinput_setup_battery() argument
565 static void hidinput_configure_usage(struct hid_input *hidinput, struct hid_field *field, in hidinput_configure_usage() argument
573 field->hidinput = hidinput; in hidinput_configure_usage()
575 if (field->flags & HID_MAIN_ITEM_CONSTANT) in hidinput_configure_usage()
579 if (field->report_count < 1) in hidinput_configure_usage()
583 if (field->report_type == HID_OUTPUT_REPORT && in hidinput_configure_usage()
589 int ret = device->driver->input_mapping(device, hidinput, field, in hidinput_configure_usage()
615 switch (field->application) { in hidinput_configure_usage()
631 switch (field->physical) { in hidinput_configure_usage()
683 if (field->application == HID_GD_SYSTEM_CONTROL) in hidinput_configure_usage()
694 if (field->dpad) { in hidinput_configure_usage()
695 map_abs(field->dpad); in hidinput_configure_usage()
706 if (field->flags & HID_MAIN_ITEM_RELATIVE) in hidinput_configure_usage()
713 if (field->flags & HID_MAIN_ITEM_RELATIVE) in hidinput_configure_usage()
720 usage->hat_min = field->logical_minimum; in hidinput_configure_usage()
721 usage->hat_max = field->logical_maximum; in hidinput_configure_usage()
730 if (field->application == HID_GD_WIRELESS_RADIO_CTLS) { in hidinput_configure_usage()
733 field->flags |= HID_MAIN_ITEM_RELATIVE; in hidinput_configure_usage()
775 switch (field->physical & 0xff) { in hidinput_configure_usage()
783 hidinput_setup_battery(device, HID_INPUT_REPORT, field); in hidinput_configure_usage()
1032 hidinput_setup_battery(device, HID_INPUT_REPORT, field); in hidinput_configure_usage()
1090 if (field->report_size == 1) { in hidinput_configure_usage()
1091 if (field->report->type == HID_OUTPUT_REPORT) { in hidinput_configure_usage()
1098 if (field->flags & HID_MAIN_ITEM_RELATIVE) { in hidinput_configure_usage()
1108 hidinput, field, usage, &bit, &max) < 0) in hidinput_configure_usage()
1144 int a = field->logical_minimum; in hidinput_configure_usage()
1145 int b = field->logical_maximum; in hidinput_configure_usage()
1148 a = field->logical_minimum = 0; in hidinput_configure_usage()
1149 b = field->logical_maximum = 255; in hidinput_configure_usage()
1152 if (field->application == HID_GD_GAMEPAD || field->application == HID_GD_JOYSTICK) in hidinput_configure_usage()
1157 hidinput_calc_abs_res(field, usage->code)); in hidinput_configure_usage()
1171 if (usage->hat_dir && !field->dpad) in hidinput_configure_usage()
1172 field->dpad = usage->code; in hidinput_configure_usage()
1179 if ((usage->type == EV_ABS) && (field->flags & HID_MAIN_ITEM_RELATIVE) && in hidinput_configure_usage()
1195 void hidinput_hid_event(struct hid_device *hid, struct hid_field *field, struct hid_usage *usage, _… in hidinput_hid_event() argument
1208 if (!field->hidinput) in hidinput_hid_event()
1211 input = field->hidinput->input; in hidinput_hid_event()
1239 int a = field->logical_minimum; in hidinput_hid_event()
1240 int b = field->logical_maximum; in hidinput_hid_event()
1257 if ((usage->type == EV_ABS) && (field->flags & HID_MAIN_ITEM_RELATIVE) && in hidinput_hid_event()
1283 if ((field->flags & HID_MAIN_ITEM_VARIABLE) && in hidinput_hid_event()
1284 (field->logical_minimum < field->logical_maximum)) { in hidinput_hid_event()
1285 if (field->flags & HID_MAIN_ITEM_NULL_STATE && in hidinput_hid_event()
1286 (value < field->logical_minimum || in hidinput_hid_event()
1287 value > field->logical_maximum)) { in hidinput_hid_event()
1292 field->logical_minimum, in hidinput_hid_event()
1293 field->logical_maximum); in hidinput_hid_event()
1306 if (!(field->flags & (HID_MAIN_ITEM_RELATIVE | in hidinput_hid_event()
1308 (field->flags & HID_MAIN_ITEM_VARIABLE) && in hidinput_hid_event()
1309 usage->usage_index < field->maxusage && in hidinput_hid_event()
1310 value == field->value[usage->usage_index]) in hidinput_hid_event()
1320 if ((field->flags & HID_MAIN_ITEM_RELATIVE) && in hidinput_hid_event()
1339 …_find_field(struct hid_device *hid, unsigned int type, unsigned int code, struct hid_field **field) in hidinput_find_field() argument
1346 *field = report->field[i]; in hidinput_find_field()
1347 for (j = 0; j < (*field)->maxusage; j++) in hidinput_find_field()
1348 if ((*field)->usage[j].type == type && (*field)->usage[j].code == code) in hidinput_find_field()
1359 struct hid_field *field; in hidinput_get_led_field() local
1366 field = report->field[i]; in hidinput_get_led_field()
1367 for (j = 0; j < field->maxusage; j++) in hidinput_get_led_field()
1368 if (field->usage[j].type == EV_LED) in hidinput_get_led_field()
1369 return field; in hidinput_get_led_field()
1379 struct hid_field *field; in hidinput_count_leds() local
1387 field = report->field[i]; in hidinput_count_leds()
1388 for (j = 0; j < field->maxusage; j++) in hidinput_count_leds()
1389 if (field->usage[j].type == EV_LED && in hidinput_count_leds()
1390 field->value[j]) in hidinput_count_leds()
1402 struct hid_field *field; in hidinput_led_worker() local
1408 field = hidinput_get_led_field(hid); in hidinput_led_worker()
1409 if (!field) in hidinput_led_worker()
1425 report = field->report; in hidinput_led_worker()
1450 struct hid_field *field; in hidinput_input_event() local
1459 if ((offset = hidinput_find_field(hid, type, code, &field)) == -1) { in hidinput_input_event()
1464 hid_set_field(field, offset, value); in hidinput_input_event()
1496 if (rep->field[i]->report_count < 1) in report_features()
1499 for (j = 0; j < rep->field[i]->maxusage; j++) { in report_features()
1500 usage = &rep->field[i]->usage[j]; in report_features()
1505 rep->field[i]); in report_features()
1508 drv->feature_mapping(hid, rep->field[i], usage); in report_features()
1653 if (report->field[i]->hidinput == hidinput) in hidinput_cleanup_hidinput()
1654 report->field[i]->hidinput = NULL; in hidinput_cleanup_hidinput()
1694 for (j = 0; j < report->field[i]->maxusage; j++) in hidinput_configure_usages()
1695 hidinput_configure_usage(hidinput, report->field[i], in hidinput_configure_usages()
1696 report->field[i]->usage + j); in hidinput_configure_usages()