On Fri, Jan 20, 2012 at 05:09:48PM +0100, Henrik Rydberg wrote: > Hi Benjamin, > > > @@ -389,9 +404,19 @@ static int mt_input_mapping(struct hid_device *hdev, struct hid_input *hi, > > td->last_field_index = field->index; > > return -1; > > } > > + case HID_DG_TOUCH: > > + /* Legacy devices use TIPSWITCH and not TOUCH. > > + * Let's just ignore this field. */ > > + return -1; > > /* let hid-input decide for the others */ > > return 0; > > > > + case HID_UP_BUTTON: > > + code = ((usage->hid - 1) & HID_USAGE) + BTN_MOUSE; > > Why '+' here instead of '|' is beyond me... Because it is an offset for the range. The fact that it is on power 2 boundary and we can use "|" is purely coincidential here. Maybe we should even write it as: code = BTN_MOUSE + ((usage->hid - 1) & HID_USAGE); Thanks, Dmitry -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html