Lines Matching defs:psmouse

21 #include "psmouse.h"
104 * @psmouse: Pointer to the psmouse struct
115 static void vmmouse_report_button(struct psmouse *psmouse,
132 * @psmouse: Pointer to the psmouse struct
137 * psmouse commands, the function returns PSMOUSE_FULL_PACKET. If there is a
141 static psmouse_ret_t vmmouse_report_events(struct psmouse *psmouse)
143 struct input_dev *rel_dev = psmouse->dev;
144 struct vmmouse_data *priv = psmouse->private;
157 psmouse_err(psmouse, "failed to fetch status data\n");
170 psmouse_err(psmouse, "invalid queue length\n");
197 vmmouse_report_button(psmouse, abs_dev, rel_dev,
200 vmmouse_report_button(psmouse, abs_dev, rel_dev,
203 vmmouse_report_button(psmouse, abs_dev, rel_dev,
216 * @psmouse: Pointer to the psmouse struct
223 static psmouse_ret_t vmmouse_process_byte(struct psmouse *psmouse)
225 unsigned char *packet = psmouse->packet;
227 switch (psmouse->pktcnt) {
236 return vmmouse_report_events(psmouse);
243 * @psmouse: Pointer to the psmouse struct
247 static void vmmouse_disable(struct psmouse *psmouse)
259 psmouse_warn(psmouse, "failed to disable vmmouse device\n");
265 * @psmouse: Pointer to the psmouse struct
271 static int vmmouse_enable(struct psmouse *psmouse)
288 psmouse_dbg(psmouse, "empty flags - assuming no device\n");
295 psmouse_dbg(psmouse, "Unexpected version value: %u vs %u\n",
297 vmmouse_disable(psmouse);
338 * @psmouse: Pointer to the psmouse struct
339 * @set_properties: Whether to set psmouse name and vendor
343 int vmmouse_detect(struct psmouse *psmouse, bool set_properties)
348 psmouse_dbg(psmouse,
360 psmouse->vendor = VMMOUSE_VENDOR;
361 psmouse->name = VMMOUSE_NAME;
362 psmouse->model = version;
371 * @psmouse: Pointer to the psmouse struct
375 static void vmmouse_disconnect(struct psmouse *psmouse)
377 struct vmmouse_data *priv = psmouse->private;
379 vmmouse_disable(psmouse);
380 psmouse_reset(psmouse);
388 * @psmouse: Pointer to the psmouse struct
393 static int vmmouse_reconnect(struct psmouse *psmouse)
397 psmouse_reset(psmouse);
398 vmmouse_disable(psmouse);
399 error = vmmouse_enable(psmouse);
401 psmouse_err(psmouse,
413 * @psmouse: Pointer to the psmouse struct
420 int vmmouse_init(struct psmouse *psmouse)
423 struct input_dev *rel_dev = psmouse->dev, *abs_dev;
426 psmouse_reset(psmouse);
427 error = vmmouse_enable(psmouse);
439 psmouse->private = priv;
443 psmouse->ps2dev.serio->phys);
445 /* Mimic name setup for relative device in psmouse-base.c */
453 abs_dev->id.version = psmouse->model;
454 abs_dev->dev.parent = &psmouse->ps2dev.serio->dev;
472 psmouse->protocol_handler = vmmouse_process_byte;
473 psmouse->disconnect = vmmouse_disconnect;
474 psmouse->reconnect = vmmouse_reconnect;
479 vmmouse_disable(psmouse);
480 psmouse_reset(psmouse);
483 psmouse->private = NULL;