Lines Matching refs:hat_dir
688 case HID_GD_UP: usage->hat_dir = 1; break; in hidinput_configure_usage()
689 case HID_GD_DOWN: usage->hat_dir = 5; break; in hidinput_configure_usage()
690 case HID_GD_RIGHT: usage->hat_dir = 3; break; in hidinput_configure_usage()
691 case HID_GD_LEFT: usage->hat_dir = 7; break; in hidinput_configure_usage()
1165 (usage->hat_min < usage->hat_max || usage->hat_dir)) { in hidinput_configure_usage()
1171 if (usage->hat_dir && !field->dpad) in hidinput_configure_usage()
1213 if (usage->hat_min < usage->hat_max || usage->hat_dir) { in hidinput_hid_event()
1214 int hat_dir = usage->hat_dir; in hidinput_hid_event() local
1215 if (!hat_dir) in hidinput_hid_event()
1216 hat_dir = (value - usage->hat_min) * 8 / (usage->hat_max - usage->hat_min + 1) + 1; in hidinput_hid_event()
1217 if (hat_dir < 0 || hat_dir > 8) hat_dir = 0; in hidinput_hid_event()
1218 input_event(input, usage->type, usage->code , hid_hat_to_axis[hat_dir].x); in hidinput_hid_event()
1219 input_event(input, usage->type, usage->code + 1, hid_hat_to_axis[hat_dir].y); in hidinput_hid_event()