Author: cgutman
Date: Fri Feb 24 07:26:43 2012
New Revision: 55836
URL:
http://svn.reactos.org/svn/reactos?rev=55836&view=rev
Log:
[USBOHCI]
- Try to fix some real hardware OHCI initialization hangs
Modified:
trunk/reactos/drivers/usb/usbohci/hardware.cpp
Modified: trunk/reactos/drivers/usb/usbohci/hardware.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbohci/hardwa…
==============================================================================
--- trunk/reactos/drivers/usb/usbohci/hardware.cpp [iso-8859-1] (original)
+++ trunk/reactos/drivers/usb/usbohci/hardware.cpp [iso-8859-1] Fri Feb 24 07:26:43 2012
@@ -533,7 +533,10 @@
// get frame interval
//
FrameInterval = READ_REGISTER_ULONG((PULONG)((PUCHAR)m_Base +
OHCI_FRAME_INTERVAL_OFFSET));
+ m_IntervalValue = OHCI_GET_INTERVAL_VALUE(FrameInterval);
+
FrameInterval = ((FrameInterval & OHCI_FRAME_INTERVAL_TOGGLE) ^
OHCI_FRAME_INTERVAL_TOGGLE);
+
DPRINT1("FrameInterval %x IntervalValue %x\n", FrameInterval,
m_IntervalValue);
FrameInterval |= OHCI_FSMPS(m_IntervalValue) | m_IntervalValue;
DPRINT1("FrameInterval %x\n", FrameInterval);
@@ -1101,11 +1104,6 @@
if ((Reset & OHCI_HOST_CONTROLLER_RESET) == 0)
{
//
- // restore the frame interval register
- //
- WRITE_REGISTER_ULONG((PULONG)((PUCHAR)m_Base + OHCI_FRAME_INTERVAL_OFFSET),
FrameInterval);
-
- //
// controller completed reset
//
return STATUS_SUCCESS;