Initial import of work-in-progress of Poseidon port.
[cake.git] / rom / usb / classes / hub / hub.class.h
blob3a207b2e47712b60de576fb3fa40930c3b11c360
1 #ifndef HUB_CLASS_H
2 #define HUB_CLASS_H
4 /*
5 *----------------------------------------------------------------------------
6 * Includes for hub class
7 *----------------------------------------------------------------------------
8 * By Chris Hodges <chrisly@platon42.de>
9 */
11 #include "common.h"
13 #include <devices/usb_hub.h>
15 #include "hub.h"
17 /* Protos */
19 struct NepClassHub * usbAttemptDeviceBinding(struct NepHubBase *nh, struct PsdDevice *pd);
20 struct NepClassHub * usbForceDeviceBinding(struct NepHubBase * nh, struct PsdDevice *pd);
21 void usbReleaseDeviceBinding(struct NepHubBase *nh, struct NepClassHub *nch);
23 struct NepClassHub * nAllocHub(void);
24 void nFreeHub(struct NepClassHub *nch);
25 struct PsdDevice * nConfigurePort(struct NepClassHub *nch, UWORD port);
26 LONG nClearPortStatus(struct NepClassHub *nch, UWORD port);
27 BOOL nHubSuspendDevice(struct NepClassHub *nch, struct PsdDevice *pd);
28 BOOL nHubResumeDevice(struct NepClassHub *nch, struct PsdDevice *pd);
29 void nHandleHubMethod(struct NepClassHub *nch, struct NepHubMsg *nhm);
31 AROS_UFP0(void, nHubTask);
33 #endif /* HUB_CLASS_H */