Kernel - Slight reworks to timer code
[tpg/acess2.git] / Modules / USB / Core / usb.h
index c293c7d..5a13363 100644 (file)
@@ -1,6 +1,9 @@
 /*
- * AcessOS Version 1
- * USB Stack
+ * Acess2 USB Stack
+ * - By John Hodge (thePowersGang)
+ * 
+ * usb.h
+ * - USB Internal definitions
  */
 #ifndef _USB_H_
 #define _USB_H_
@@ -19,9 +22,7 @@ typedef struct sUSBEndpoint   tUSBEndpoint;
  */
 struct sUSBHub
 {
-       tUSBDevice      *Device;
-       
-       tUSB_HubPoll    CheckPorts;
+       tUSBInterface   *Interface;
        
         int    nPorts;
        tUSBDevice      *Devices[];
@@ -29,14 +30,17 @@ struct sUSBHub
 
 struct sUSBEndpoint
 {
+       tUSBEndpoint    *Next;  // (usb_poll.c) Clock list
        tUSBInterface   *Interface;
-       tUSBEndpoint    *Next;  // In the poll list
+        int    EndpointIdx;    // Interface endpoint index
+        int    EndpointNum;    // Device endpoint num
+       
         int    PollingPeriod;  // In 1ms intervals
         int    MaxPacketSize;  // In bytes
-
-       char    Direction;      // 1 Polled Input, 0 Output
+       Uint8   Type;   // Same as sUSBDriver.Endpoints.Type
        
-       Uint8   Type;   // Same as sDescriptor_Endpoint.Type
+        int    PollingAtoms;   // (usb_poll.c) Period in clock list
+       void    *InputData;
 };
 
 /**
@@ -44,7 +48,7 @@ struct sUSBEndpoint
  */
 struct sUSBInterface
 {
-       tUSBInterface   *Next;
+//     tUSBInterface   *Next;
        tUSBDevice      *Dev;
 
        tUSBDriver      *Driver;
@@ -81,9 +85,10 @@ struct sUSBHost
        Uint8   AddressBitmap[128/8];
        
        tUSBDevice      RootHubDev;
+       tUSBInterface   RootHubIf;
        tUSBHub RootHub;
 };
 
-extern void    USB_NewDevice(tUSBHub *Hub);
+extern tUSBDriver      *USB_int_FindDriverByClass(Uint32 ClassCode);
 
 #endif

UCC git Repository :: git.ucc.asn.au