[ros-diffs] [cgutman] 55568: [USB] - Merge r55564 and r55567 from usb-bringup-trunk - USB development should now be done in trunk exclusively (UHCI implementation may be an exception)

cgutman at svn.reactos.org cgutman at svn.reactos.org
Sun Feb 12 18:28:53 UTC 2012


Author: cgutman
Date: Sun Feb 12 18:28:52 2012
New Revision: 55568

URL: http://svn.reactos.org/svn/reactos?rev=55568&view=rev
Log:
[USB]
- Merge r55564 and r55567 from usb-bringup-trunk
- USB development should now be done in trunk exclusively (UHCI implementation may be an exception)

Modified:
    trunk/reactos/   (props changed)
    trunk/reactos/drivers/usb/usbehci/   (props changed)
    trunk/reactos/drivers/usb/usbehci/hardware.cpp
    trunk/reactos/drivers/usb/usbehci/hardware.h

Propchange: trunk/reactos/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sun Feb 12 18:28:52 2012
@@ -11,5 +11,5 @@
 /branches/shell32_new-bringup:51893-53652,53661,53700
 /branches/tcp-rewrite-branch:48720,48840-48841,49424-49426,49454
 /branches/usb-bringup:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859
-/branches/usb-bringup-trunk:55019-55543,55548-55554
+/branches/usb-bringup-trunk:55019-55543,55548-55554,55556-55567
 /branches/wlan-bringup:54809-54998

Propchange: trunk/reactos/drivers/usb/usbehci/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Sun Feb 12 18:28:52 2012
@@ -24,6 +24,6 @@
 /branches/tcp-rewrite-branch/drivers/usb/usbehci_new:48720,48840-48841,49424-49426,49454
 /branches/usb-bringup/drivers/usb/usbehci:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859
 /branches/usb-bringup/drivers/usb/usbehci_new:51335,51337,51341-51343,51348,51350,51353,51355,51365-51369,51372,51384-54388,54396-54398,54736-54737,54752-54754,54756-54760,54762,54764-54765,54767-54768,54772,54774-54777,54781,54787,54790-54792,54797-54798,54806,54808,54834-54838,54843,54850,54852,54856,54858-54859
-/branches/usb-bringup-trunk/drivers/usb/usbehci:55524-55543,55548-55554
+/branches/usb-bringup-trunk/drivers/usb/usbehci:55524-55543,55548-55554,55556-55567
 /branches/wlan-bringup/drivers/usb/usbehci:54809-54998
 /branches/wlan-bringup/drivers/usb/usbehci_new:54809-54998

Modified: trunk/reactos/drivers/usb/usbehci/hardware.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbehci/hardware.cpp?rev=55568&r1=55567&r2=55568&view=diff
==============================================================================
--- trunk/reactos/drivers/usb/usbehci/hardware.cpp [iso-8859-1] (original)
+++ trunk/reactos/drivers/usb/usbehci/hardware.cpp [iso-8859-1] Sun Feb 12 18:28:52 2012
@@ -89,6 +89,7 @@
 
     // local
     BOOLEAN InterruptService();
+    VOID PrintCapabilities();
 
     // friend function
     friend BOOLEAN NTAPI InterruptServiceRoutine(IN PKINTERRUPT  Interrupt, IN PVOID  ServiceContext);
@@ -292,6 +293,49 @@
     WRITE_REGISTER_ULONG((PULONG)((ULONG)m_Base + Offset), Value);
 }
 
+VOID
+CUSBHardwareDevice::PrintCapabilities()
+{
+    if (m_Capabilities.HCSParams.PortPowerControl)
+    {
+        DPRINT1("Controler EHCI has Port Power Control\n");
+    }
+
+    DPRINT1("Controller Port Routing Rules %d\n", m_Capabilities.HCSParams.PortRouteRules);
+    DPRINT1("Number of Ports per Companion Controller %d\n", m_Capabilities.HCSParams.PortPerCHC);
+    DPRINT1("Number of Companion Controller %d\n", m_Capabilities.HCSParams.CHCCount);
+
+    if (m_Capabilities.HCSParams.PortIndicator)
+    {
+        DPRINT1("Controller has Port Indicators Support\n");
+    }
+
+    if (m_Capabilities.HCSParams.DbgPortNum)
+    {
+        DPRINT1("Controller has Debug Port Support At Port %x\n", m_Capabilities.HCSParams.DbgPortNum);
+    }
+
+    if (m_Capabilities.HCCParams.EECPCapable)
+    {
+        DPRINT1("Controller has Extended Capabilities Support\n");
+    }
+
+    if (m_Capabilities.HCCParams.ParkMode)
+    {
+        DPRINT1("Controller supports Asynchronous Schedule Park\n");
+    }
+
+    if (m_Capabilities.HCCParams.VarFrameList)
+    {
+        DPRINT1("Controller supports Programmable Frame List Size\n");
+    }
+
+    if (m_Capabilities.HCCParams.CurAddrBits)
+    {
+        DPRINT1("Controller uses 64-Bit Addressing\n");
+    }
+}
+
 NTSTATUS
 CUSBHardwareDevice::PnpStart(
     PCM_RESOURCE_LIST RawResources,
@@ -368,11 +412,15 @@
                 m_Capabilities.HCCParamsLong = READ_REGISTER_ULONG((PULONG)((ULONG)ResourceBase + EHCI_HCCPARAMS));
 
                 DPRINT1("Controller has %d Length\n", m_Capabilities.Length);
-                DPRINT1("Controller has %d Ports\n", m_Capabilities.HCSParams.PortCount);
                 DPRINT1("Controller EHCI Version %x\n", m_Capabilities.HCIVersion);
                 DPRINT1("Controler EHCI Caps HCSParamsLong %x\n", m_Capabilities.HCSParamsLong);
                 DPRINT1("Controler EHCI Caps HCCParamsLong %x\n", m_Capabilities.HCCParamsLong);
-                DPRINT1("Controler EHCI Caps PowerControl %x\n", m_Capabilities.HCSParams.PortPowerControl);
+                DPRINT1("Controller has %d Ports\n", m_Capabilities.HCSParams.PortCount);
+
+                //
+                // print capabilities
+                //
+                PrintCapabilities();
 
                 if (m_Capabilities.HCSParams.PortRouteRules)
                 {

Modified: trunk/reactos/drivers/usb/usbehci/hardware.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/usbehci/hardware.h?rev=55568&r1=55567&r2=55568&view=diff
==============================================================================
--- trunk/reactos/drivers/usb/usbehci/hardware.h [iso-8859-1] (original)
+++ trunk/reactos/drivers/usb/usbehci/hardware.h [iso-8859-1] Sun Feb 12 18:28:52 2012
@@ -145,14 +145,15 @@
         ULONG DWord;
     } Token;
     ULONG BufferPointer[5];
-    
+    ULONG ExtendedBufferPointer[5];
+
     //Software
     ULONG PhysicalAddr;
     LIST_ENTRY DescriptorEntry;
     ULONG TotalBytesToTransfer;
 } QUEUE_TRANSFER_DESCRIPTOR, *PQUEUE_TRANSFER_DESCRIPTOR;
 
-C_ASSERT(FIELD_OFFSET(QUEUE_TRANSFER_DESCRIPTOR, PhysicalAddr) == 0x20);
+C_ASSERT(FIELD_OFFSET(QUEUE_TRANSFER_DESCRIPTOR, PhysicalAddr) == 0x34);
 
 //
 // EndPointSpeeds Flags and END_POINT_CHARACTERISTICS
@@ -212,6 +213,7 @@
         ULONG DWord;
     } Token;
     ULONG BufferPointer[5];
+    ULONG ExtendedBufferPointer[5];
 
     //Software
     ULONG PhysicalAddr;
@@ -231,7 +233,7 @@
 C_ASSERT(FIELD_OFFSET(QUEUE_HEAD, AlternateNextPointer) == 0x14);
 C_ASSERT(FIELD_OFFSET(QUEUE_HEAD, Token) == 0x18);
 C_ASSERT(FIELD_OFFSET(QUEUE_HEAD, BufferPointer) == 0x1C);
-C_ASSERT(FIELD_OFFSET(QUEUE_HEAD, PhysicalAddr) == 0x30);
+C_ASSERT(FIELD_OFFSET(QUEUE_HEAD, PhysicalAddr) == 0x44);
 
 
 //




More information about the Ros-diffs mailing list