3 * - By John Hodge (thePowersGang)
6 * - Core Hub Definitions
13 typedef struct sUSBHub tUSBHub;
16 * \brief Register a device as a hub
18 * Used by the hub class initialisation routine.
20 extern tUSBHub *USB_RegisterHub(tUSBInterface *Device, int nPorts);
21 extern void USB_RemoveHub(tUSBHub *Hub);
23 extern void USB_DeviceConnected(tUSBHub *Hub, int Port);
24 extern void USB_DeviceDisconnected(tUSBHub *Hub, int Port);
26 #define PORT_CONNECTION 0
28 #define PORT_SUSPEND 2
29 #define PORT_OVER_CURRENT 3
32 #define PORT_LOW_SPEED 9
33 #define C_PORT_CONNECTION 16
34 #define C_PORT_ENABLE 17
35 #define C_PORT_SUSPEND 18
36 #define C_PORT_OVER_CURRENT 19
37 #define C_PORT_RESET 20
39 #define PORT_INDICATOR 21
41 extern void Hub_SetPortFeature(tUSBInterface *HubDev, int Port, int Feat);
42 extern void Hub_ClearPortFeature(tUSBInterface *HubDev, int Port, int Feat);
43 extern int Hub_GetPortStatus(tUSBInterface *HubDev, int Port, int Flag);
45 extern void USB_PortCtl_BeginReset(tUSBHub *Hub, int Port);