Author: cwittich
Date: Sun Mar 16 12:57:39 2014
New Revision: 62517
URL:
http://svn.reactos.org/svn/reactos?rev=62517&view=rev
Log:
[i8042prt]
fix keyboard detection on Dell D531 notebook and on other devices with PS/2 multiplexing
controllers
Modified:
trunk/reactos/drivers/input/i8042prt/pnp.c
trunk/reactos/drivers/usb/usbd/usbd.c
trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c
Modified: trunk/reactos/drivers/input/i8042prt/pnp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/i8042prt/pnp…
==============================================================================
--- trunk/reactos/drivers/input/i8042prt/pnp.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/input/i8042prt/pnp.c [iso-8859-1] Sun Mar 16 12:57:39 2014
@@ -437,6 +437,7 @@
Status = EnableInterrupts(DeviceExtension, FlagsToDisable, FlagsToEnable);
if (!NT_SUCCESS(Status))
{
+ WARN_(I8042PRT, "EnableInterrupts failed: %lx\n", Status);
DeviceExtension->Flags &= ~(KEYBOARD_PRESENT | MOUSE_PRESENT);
return Status;
}
@@ -454,6 +455,10 @@
{
DeviceExtension->Flags |= KEYBOARD_INITIALIZED;
}
+ else
+ {
+ WARN_(I8042PRT, "i8042ConnectKeyboardInterrupt failed: %lx\n",
Status);
+ }
}
if (DeviceExtension->Flags & MOUSE_PRESENT &&
@@ -467,7 +472,11 @@
{
DeviceExtension->Flags |= MOUSE_INITIALIZED;
}
-
+ else
+ {
+ WARN_(I8042PRT, "i8042ConnectMouseInterrupt failed: %lx\n",
Status);
+ }
+
/* Start the mouse */
Irql = KeAcquireInterruptSpinLock(DeviceExtension->HighestDIRQLInterrupt);
i8042IsrWritePort(DeviceExtension, MOU_CMD_RESET, CTRL_WRITE_MOUSE);
@@ -533,7 +542,7 @@
{
if (ResourceDescriptor->u.Port.Length == 1)
{
- /* We assume that the first ressource will
+ /* We assume that the first resource will
* be the control port and the second one
* will be the data port...
*/
@@ -551,8 +560,8 @@
}
else
{
- WARN_(I8042PRT, "Too much I/O ranges provided:
0x%lx\n", ResourceDescriptor->u.Port.Length);
- return STATUS_INVALID_PARAMETER;
+ /* FIXME: implement PS/2 Active Multiplexing */
+ ERR_(I8042PRT, "Unhandled I/O ranges provided:
0x%lx\n", ResourceDescriptor->u.Port.Length);
}
}
else
Modified: trunk/reactos/drivers/usb/usbd/usbd.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbd/usbd.c?re…
==============================================================================
--- trunk/reactos/drivers/usb/usbd/usbd.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/usb/usbd/usbd.c [iso-8859-1] Sun Mar 16 12:57:39 2014
@@ -17,7 +17,7 @@
* Notes:
* This driver was obsoleted in Windows XP and most functions
* became pure stubs. But some of them were retained for backward
- * compatibilty with existing drivers.
+ * compatibility with existing drivers.
*
* Preserved functions:
*
Modified: trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.…
==============================================================================
--- trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/io/pnpmgr/pnpmgr.c [iso-8859-1] Sun Mar 16 12:57:39 2014
@@ -648,7 +648,7 @@
ASSERT(!(DeviceNode->Flags & DNF_DISABLED));
- /* Build the I/O stack locaiton */
+ /* Build the I/O stack location */
RtlZeroMemory(&Stack, sizeof(IO_STACK_LOCATION));
Stack.MajorFunction = IRP_MJ_PNP;
Stack.MinorFunction = IRP_MN_START_DEVICE;