Lines Matching refs:psmouse

39 int focaltech_detect(struct psmouse *psmouse, bool set_properties)  in focaltech_detect()  argument
41 if (!psmouse_matches_pnp_id(psmouse, focaltech_pnp_ids)) in focaltech_detect()
45 psmouse->vendor = "FocalTech"; in focaltech_detect()
46 psmouse->name = "FocalTech Touchpad"; in focaltech_detect()
52 static void focaltech_reset(struct psmouse *psmouse) in focaltech_reset() argument
54 ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_RESET_DIS); in focaltech_reset()
55 psmouse_reset(psmouse); in focaltech_reset()
115 static void focaltech_report_state(struct psmouse *psmouse) in focaltech_report_state() argument
117 struct focaltech_data *priv = psmouse->private; in focaltech_report_state()
119 struct input_dev *dev = psmouse->dev; in focaltech_report_state()
144 input_report_key(psmouse->dev, BTN_LEFT, state->pressed); in focaltech_report_state()
145 input_sync(psmouse->dev); in focaltech_report_state()
148 static void focaltech_process_touch_packet(struct psmouse *psmouse, in focaltech_process_touch_packet() argument
151 struct focaltech_data *priv = psmouse->private; in focaltech_process_touch_packet()
172 static void focaltech_process_abs_packet(struct psmouse *psmouse, in focaltech_process_abs_packet() argument
175 struct focaltech_data *priv = psmouse->private; in focaltech_process_abs_packet()
181 psmouse_err(psmouse, "Invalid finger in abs packet: %d\n", in focaltech_process_abs_packet()
193 static void focaltech_process_rel_packet(struct psmouse *psmouse, in focaltech_process_rel_packet() argument
196 struct focaltech_data *priv = psmouse->private; in focaltech_process_rel_packet()
206 psmouse_err(psmouse, "First finger in rel packet invalid: %d\n", in focaltech_process_rel_packet()
224 static void focaltech_process_packet(struct psmouse *psmouse) in focaltech_process_packet() argument
226 unsigned char *packet = psmouse->packet; in focaltech_process_packet()
230 focaltech_process_touch_packet(psmouse, packet); in focaltech_process_packet()
234 focaltech_process_abs_packet(psmouse, packet); in focaltech_process_packet()
238 focaltech_process_rel_packet(psmouse, packet); in focaltech_process_packet()
242 psmouse_err(psmouse, "Unknown packet type: %02x\n", packet[0]); in focaltech_process_packet()
246 focaltech_report_state(psmouse); in focaltech_process_packet()
249 static psmouse_ret_t focaltech_process_byte(struct psmouse *psmouse) in focaltech_process_byte() argument
251 if (psmouse->pktcnt >= 6) { /* Full packet received */ in focaltech_process_byte()
252 focaltech_process_packet(psmouse); in focaltech_process_byte()
263 static int focaltech_switch_protocol(struct psmouse *psmouse) in focaltech_switch_protocol() argument
265 struct ps2dev *ps2dev = &psmouse->ps2dev; in focaltech_switch_protocol()
291 static void focaltech_disconnect(struct psmouse *psmouse) in focaltech_disconnect() argument
293 focaltech_reset(psmouse); in focaltech_disconnect()
294 kfree(psmouse->private); in focaltech_disconnect()
295 psmouse->private = NULL; in focaltech_disconnect()
298 static int focaltech_reconnect(struct psmouse *psmouse) in focaltech_reconnect() argument
302 focaltech_reset(psmouse); in focaltech_reconnect()
304 error = focaltech_switch_protocol(psmouse); in focaltech_reconnect()
306 psmouse_err(psmouse, "Unable to initialize the device\n"); in focaltech_reconnect()
313 static void focaltech_set_input_params(struct psmouse *psmouse) in focaltech_set_input_params() argument
315 struct input_dev *dev = psmouse->dev; in focaltech_set_input_params()
316 struct focaltech_data *priv = psmouse->private; in focaltech_set_input_params()
364 static int focaltech_read_size(struct psmouse *psmouse) in focaltech_read_size() argument
366 struct ps2dev *ps2dev = &psmouse->ps2dev; in focaltech_read_size()
367 struct focaltech_data *priv = psmouse->private; in focaltech_read_size()
380 void focaltech_set_resolution(struct psmouse *psmouse, unsigned int resolution) in focaltech_set_resolution() argument
385 static void focaltech_set_rate(struct psmouse *psmouse, unsigned int rate) in focaltech_set_rate() argument
390 static void focaltech_set_scale(struct psmouse *psmouse, in focaltech_set_scale() argument
396 int focaltech_init(struct psmouse *psmouse) in focaltech_init() argument
401 psmouse->private = priv = kzalloc(sizeof(struct focaltech_data), in focaltech_init()
406 focaltech_reset(psmouse); in focaltech_init()
408 error = focaltech_read_size(psmouse); in focaltech_init()
410 psmouse_err(psmouse, in focaltech_init()
415 error = focaltech_switch_protocol(psmouse); in focaltech_init()
417 psmouse_err(psmouse, "Unable to initialize the device\n"); in focaltech_init()
421 focaltech_set_input_params(psmouse); in focaltech_init()
423 psmouse->protocol_handler = focaltech_process_byte; in focaltech_init()
424 psmouse->pktsize = 6; in focaltech_init()
425 psmouse->disconnect = focaltech_disconnect; in focaltech_init()
426 psmouse->reconnect = focaltech_reconnect; in focaltech_init()
427 psmouse->cleanup = focaltech_reset; in focaltech_init()
429 psmouse->resync_time = 0; in focaltech_init()
435 psmouse->set_resolution = focaltech_set_resolution; in focaltech_init()
436 psmouse->set_rate = focaltech_set_rate; in focaltech_init()
437 psmouse->set_scale = focaltech_set_scale; in focaltech_init()
442 focaltech_reset(psmouse); in focaltech_init()
449 int focaltech_init(struct psmouse *psmouse) in focaltech_init() argument
451 focaltech_reset(psmouse); in focaltech_init()