Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Input: psmouse - allow drivers to use psmouse_{de,}activate

Other drivers duplicate this code; no sense in having it be private
to psmouse-base.

Signed-off-by: Andres Salomon <dilinger@queued.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>

authored by

Andres Salomon and committed by
Dmitry Torokhov
bd26f3d6 023cea0e

+12 -5
+10 -5
drivers/input/mouse/psmouse-base.c
··· 1092 1092 * psmouse_activate() enables the mouse so that we get motion reports from it. 1093 1093 */ 1094 1094 1095 - static void psmouse_activate(struct psmouse *psmouse) 1095 + int psmouse_activate(struct psmouse *psmouse) 1096 1096 { 1097 - if (ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_ENABLE)) 1097 + if (ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_ENABLE)) { 1098 1098 psmouse_warn(psmouse, "Failed to enable mouse on %s\n", 1099 1099 psmouse->ps2dev.serio->phys); 1100 + return -1; 1101 + } 1100 1102 1101 1103 psmouse_set_state(psmouse, PSMOUSE_ACTIVATED); 1104 + return 0; 1102 1105 } 1103 - 1104 1106 1105 1107 /* 1106 1108 * psmouse_deactivate() puts the mouse into poll mode so that we don't get motion 1107 1109 * reports from it unless we explicitly request it. 1108 1110 */ 1109 1111 1110 - static void psmouse_deactivate(struct psmouse *psmouse) 1112 + int psmouse_deactivate(struct psmouse *psmouse) 1111 1113 { 1112 - if (ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_DISABLE)) 1114 + if (ps2_command(&psmouse->ps2dev, NULL, PSMOUSE_CMD_DISABLE)) { 1113 1115 psmouse_warn(psmouse, "Failed to deactivate mouse on %s\n", 1114 1116 psmouse->ps2dev.serio->phys); 1117 + return -1; 1118 + } 1115 1119 1116 1120 psmouse_set_state(psmouse, PSMOUSE_CMD_MODE); 1121 + return 0; 1117 1122 } 1118 1123 1119 1124
+2
drivers/input/mouse/psmouse.h
··· 105 105 void psmouse_set_state(struct psmouse *psmouse, enum psmouse_state new_state); 106 106 void psmouse_set_resolution(struct psmouse *psmouse, unsigned int resolution); 107 107 psmouse_ret_t psmouse_process_byte(struct psmouse *psmouse); 108 + int psmouse_activate(struct psmouse *psmouse); 109 + int psmouse_deactivate(struct psmouse *psmouse); 108 110 109 111 struct psmouse_attribute { 110 112 struct device_attribute dattr;