Lines Matching refs:psmouse

41 static psmouse_ret_t ps2pp_process_byte(struct psmouse *psmouse)  in ps2pp_process_byte()  argument
43 struct input_dev *dev = psmouse->dev; in ps2pp_process_byte()
44 u8 *packet = psmouse->packet; in ps2pp_process_byte()
46 if (psmouse->pktcnt < 3) in ps2pp_process_byte()
87 psmouse_dbg(psmouse, in ps2pp_process_byte()
113 static int ps2pp_cmd(struct psmouse *psmouse, u8 *param, u8 command) in ps2pp_cmd() argument
117 error = ps2_sliced_command(&psmouse->ps2dev, command); in ps2pp_cmd()
121 error = ps2_command(&psmouse->ps2dev, param, PSMOUSE_CMD_POLL | 0x0300); in ps2pp_cmd()
136 static void ps2pp_set_smartscroll(struct psmouse *psmouse, bool smartscroll) in ps2pp_set_smartscroll() argument
138 struct ps2dev *ps2dev = &psmouse->ps2dev; in ps2pp_set_smartscroll()
141 ps2pp_cmd(psmouse, param, 0x32); in ps2pp_set_smartscroll()
152 static ssize_t ps2pp_attr_show_smartscroll(struct psmouse *psmouse, in ps2pp_attr_show_smartscroll() argument
155 return sprintf(buf, "%d\n", psmouse->smartscroll); in ps2pp_attr_show_smartscroll()
158 static ssize_t ps2pp_attr_set_smartscroll(struct psmouse *psmouse, void *data, in ps2pp_attr_set_smartscroll() argument
171 ps2pp_set_smartscroll(psmouse, value); in ps2pp_attr_set_smartscroll()
172 psmouse->smartscroll = value; in ps2pp_attr_set_smartscroll()
185 static void ps2pp_set_resolution(struct psmouse *psmouse, in ps2pp_set_resolution() argument
189 struct ps2dev *ps2dev = &psmouse->ps2dev; in ps2pp_set_resolution()
196 psmouse->resolution = 800; in ps2pp_set_resolution()
198 psmouse_set_resolution(psmouse, resolution); in ps2pp_set_resolution()
201 static void ps2pp_disconnect(struct psmouse *psmouse) in ps2pp_disconnect() argument
203 device_remove_file(&psmouse->ps2dev.serio->dev, in ps2pp_disconnect()
270 static void ps2pp_set_model_properties(struct psmouse *psmouse, in ps2pp_set_model_properties() argument
274 struct input_dev *input_dev = psmouse->dev; in ps2pp_set_model_properties()
299 psmouse->name = "Wheel Mouse"; in ps2pp_set_model_properties()
303 psmouse->name = "MX Mouse"; in ps2pp_set_model_properties()
307 psmouse->name = "TouchPad 3"; in ps2pp_set_model_properties()
311 psmouse->name = "TrackMan"; in ps2pp_set_model_properties()
321 psmouse->name = "Mouse"; in ps2pp_set_model_properties()
326 static int ps2pp_setup_protocol(struct psmouse *psmouse, in ps2pp_setup_protocol() argument
331 psmouse->protocol_handler = ps2pp_process_byte; in ps2pp_setup_protocol()
332 psmouse->pktsize = 3; in ps2pp_setup_protocol()
335 psmouse->set_resolution = ps2pp_set_resolution; in ps2pp_setup_protocol()
336 psmouse->disconnect = ps2pp_disconnect; in ps2pp_setup_protocol()
338 error = device_create_file(&psmouse->ps2dev.serio->dev, in ps2pp_setup_protocol()
341 psmouse_err(psmouse, in ps2pp_setup_protocol()
357 int ps2pp_detect(struct psmouse *psmouse, bool set_properties) in ps2pp_detect() argument
359 struct ps2dev *ps2dev = &psmouse->ps2dev; in ps2pp_detect()
408 ps2pp_cmd(psmouse, param, 0x39); /* Magic knock */ in ps2pp_detect()
409 ps2pp_cmd(psmouse, param, 0xDB); in ps2pp_detect()
414 ps2pp_set_smartscroll(psmouse, false); in ps2pp_detect()
420 psmouse_warn(psmouse, in ps2pp_detect()
426 psmouse->vendor = "Logitech"; in ps2pp_detect()
427 psmouse->model = model; in ps2pp_detect()
430 error = ps2pp_setup_protocol(psmouse, model_info); in ps2pp_detect()
436 input_set_capability(psmouse->dev, EV_KEY, BTN_MIDDLE); in ps2pp_detect()
439 ps2pp_set_model_properties(psmouse, model_info, use_ps2pp); in ps2pp_detect()