From 14c42c37834c22ec722b28bb5462d494dac9b23c Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Thu, 4 Dec 2014 08:39:13 +0100 Subject: [PATCH] Synaptics: remove useless delay. As pointed by Axel and explained in Synaptic docs, the touchpad should delay the first command itself until it's ready, so an arbitrary delay should not be needed after reset. Note: I don't have a touchpad on my machine. Please test this :) --- src/add-ons/kernel/bus_managers/ps2/ps2_synaptics.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/add-ons/kernel/bus_managers/ps2/ps2_synaptics.cpp b/src/add-ons/kernel/bus_managers/ps2/ps2_synaptics.cpp index cba23a3f07..81cffc1514 100644 --- a/src/add-ons/kernel/bus_managers/ps2/ps2_synaptics.cpp +++ b/src/add-ons/kernel/bus_managers/ps2/ps2_synaptics.cpp @@ -283,16 +283,16 @@ probe_synaptics(ps2_dev *dev) // We reset the device here because it may have been left in a confused // state by a previous probing attempt. Some synaptics touchpads are known - // to lockup when we attempt to detect them as IBM trackoints. + // to lockup when we attempt to detect them as IBM trackpoints. ps2_reset_mouse(dev); - // And after resetting we must wait a little for the device to become ready - // again... - snooze(400000); - + // Request "Identify touchpad" + // The touchpad will delay this, until it's ready and calibrated. status = send_touchpad_arg(dev, 0x00); if (status != B_OK) return status; + + // "Status request" (executes "Identify touchpad") status = ps2_dev_command(dev, 0xE9, NULL, 0, val, 3); if (status != B_OK) return status;