} VendorDev;
} Match;
- void (*Connected)(tUSBInterface *Dev);
+ void (*Connected)(tUSBInterface *Dev, void *Descriptors, size_t Size);
void (*Disconnected)(tUSBInterface *Dev);
int MaxEndpoints;
} Endpoints[];
};
+extern void USB_RegisterDriver(tUSBDriver *Driver);
+
extern void *USB_GetDeviceDataPtr(tUSBInterface *Dev);
extern void USB_SetDeviceDataPtr(tUSBInterface *Dev, void *Ptr);
extern void USB_ReadDescriptor(tUSBInterface *Dev, int Type, int Index, int Length, void *Data);
extern void USB_Request(tUSBInterface *Dev, int Endpoint, int Type, int Req, int Value, int Index, int Len, void *Data);
// TODO: Async
-extern void USB_SendData(tUSBInterface *Dev, int Endpoint, int Length, void *Data);
-extern void USB_RecvData(tUSBInterface *Dev, int Endpoint, int Length, void *Data);
+extern void USB_SendData(tUSBInterface *Dev, int Endpoint, size_t Length, const void *Data);
+extern void USB_RecvData(tUSBInterface *Dev, int Endpoint, size_t Length, void *Data);
extern void USB_RecvDataA(tUSBInterface *Dev, int Endpoint, int Length, void *DataBuf, tUSB_DataCallback Callback);
#endif