From a8ed06f0c182a8244394cb43d9dbe5e892eed345 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Sun, 5 Apr 2009 17:25:29 +0000 Subject: [PATCH] Patch by Clemens Zeidler: * Enable the Synaptics driver again. * After performing the checks for the Synaptics device, issue a reset to avoid the device being left in a weird state. This fixes at least the weird mouse in VMWare with enabled Synaptics driver. Please report if there are any other problems! :-) Thanks a lot! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29944 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/bus_managers/ps2/ps2_dev.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/add-ons/kernel/bus_managers/ps2/ps2_dev.c b/src/add-ons/kernel/bus_managers/ps2/ps2_dev.c index 708cee2d45..e4a64716b0 100644 --- a/src/add-ons/kernel/bus_managers/ps2/ps2_dev.c +++ b/src/add-ons/kernel/bus_managers/ps2/ps2_dev.c @@ -6,6 +6,7 @@ * * Authors (in chronological order): * Marcus Overhagen (marcus@overhagen.de) + * Clemens Zeidler (haiku@clemens-zeidler.de) */ @@ -102,7 +103,6 @@ ps2_dev_detect_pointing(ps2_dev *dev, device_hooks **hooks) // probe devices // the probe function has to set the dev name and the dev packet size -#if 0 status = probe_trackpoint(dev); if (status == B_OK) { *hooks = &gStandardMouseDeviceHooks; @@ -114,7 +114,14 @@ ps2_dev_detect_pointing(ps2_dev *dev, device_hooks **hooks) *hooks = &gSynapticsDeviceHooks; goto dev_found; } -#endif + + // reset the mouse for the case that the previous probes leaf the mouse in + // a undefined state + status = ps2_reset_mouse(dev); + if (status != B_OK) { + INFO("ps2: reset after probe failed\n"); + return B_ERROR; + } status = probe_standard_mouse(dev); if (status == B_OK) { @@ -180,8 +187,6 @@ ps2_dev_publish(ps2_dev *dev) if (status == B_OK) { status = devfs_publish_device(dev->name, hooks); } - - //status = devfs_publish_device(dev->name, &gPointingDeviceHooks); } dev->active = true;