X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Modules%2FUSB%2FCore%2Fmain.c;h=36a1363be49caa91f6f6bdf351cdcdd5cacb3181;hb=4c717bb526a0a7b1aa44ed7fc4f07a6b7da5d2f9;hp=5744c29d02cd140b9f51017b54e643edb54c22c4;hpb=351dd3b194833c923bad0292e9019320fb2a41fa;p=tpg%2Facess2.git diff --git a/Modules/USB/Core/main.c b/Modules/USB/Core/main.c index 5744c29d..36a1363b 100644 --- a/Modules/USB/Core/main.c +++ b/Modules/USB/Core/main.c @@ -11,17 +11,18 @@ #include "usb.h" // === IMPORTS === - int UHCI_Initialise(); +extern void USB_PollThread(void *unused); +extern void USB_AsyncThread(void *Unused); // === PROTOTYPES === int USB_Install(char **Arguments); -void USB_Cleanup(); +void USB_Cleanup(void); char *USB_ReadDir(tVFS_Node *Node, int Pos); -tVFS_Node *USB_FindDir(tVFS_Node *Node, char *Name); +tVFS_Node *USB_FindDir(tVFS_Node *Node, const char *Name); int USB_IOCtl(tVFS_Node *Node, int Id, void *Data); // === GLOBALS === -MODULE_DEFINE(0, VERSION, USB, USB_Install, NULL, NULL); +MODULE_DEFINE(0, VERSION, USB_Core, USB_Install, NULL, NULL); tDevFS_Driver gUSB_DrvInfo = { NULL, "usb", { .NumACLs = 1, @@ -32,23 +33,23 @@ tDevFS_Driver gUSB_DrvInfo = { .IOCtl = USB_IOCtl } }; -tUSBDevice *gUSB_Devices = NULL; tUSBHost *gUSB_Hosts = NULL; // === CODE === /** - * \fn int ModuleLoad() * \brief Called once module is loaded */ int USB_Install(char **Arguments) { - UHCI_Initialise(); - Warning("[USB ] Not Complete - Devel Only"); + Log_Warning("USB", "Not Complete - Devel Only"); + + Proc_SpawnWorker(USB_PollThread, NULL); + Proc_SpawnWorker(USB_AsyncThread, NULL); + return MODULE_ERR_OK; } /** - * \fn void USB_Cleanup() * \brief Called just before module is unloaded */ void USB_Cleanup() @@ -65,10 +66,10 @@ char *USB_ReadDir(tVFS_Node *Node, int Pos) } /** - * \fn tVFS_Node *USB_FindDir(tVFS_Node *Node, char *Name) + * \fn tVFS_Node *USB_FindDir(tVFS_Node *Node, const char *Name) * \brief Locate an entry in the USB root */ -tVFS_Node *USB_FindDir(tVFS_Node *Node, char *Name) +tVFS_Node *USB_FindDir(tVFS_Node *Node, const char *Name) { return NULL; }