2 Copyright © 2014, The AROS Development Team. All rights reserved.
8 #ifndef VUSB2OTG_DEVICE_H
9 #define VUSB2OTG_DEVICE_H
11 #include <aros/debug.h>
12 #include <aros/macros.h>
14 #include <proto/exec.h>
15 #include <proto/stdc.h>
16 #include <proto/arossupport.h>
18 #include <devices/usb.h>
19 #include <devices/usb_hub.h>
20 #include <devices/newstyle.h>
21 #include <devices/usbhardware.h>
24 #define RC_DONTREPLY -1
27 #define mybug(l, x) D(if ((l>=MYBUG_LEVEL)||(l==-1)) { do { { bug x; } } while (0); } )
28 #define mybug_unit(l, x) D(if ((l>=MYBUG_LEVEL)||(l==-1)) { do { { bug("%s %s: ", unit->name, __FUNCTION__); bug x; } } while (0); } )
30 BOOL
cmdAbortIO(struct IOUsbHWReq
*ioreq
);
31 WORD
cmdUsbReset(struct IOUsbHWReq
*ioreq
);
32 WORD
cmdNSDeviceQuery(struct IOStdReq
*ioreq
);
33 WORD
cmdQueryDevice(struct IOUsbHWReq
*ioreq
);
34 WORD
cmdControlXFer(struct IOUsbHWReq
*ioreq
);
35 WORD
cmdControlXFerRootHub(struct IOUsbHWReq
*ioreq
);
36 WORD
cmdIntXFer(struct IOUsbHWReq
*ioreq
);
37 WORD
cmdIntXFerRootHub(struct IOUsbHWReq
*ioreq
);
38 WORD
cmdGetString(struct IOUsbHWReq
*ioreq
, char *cstring
);
56 struct VUSB2OTGRootHub
{
57 struct List port_list
;
62 struct UsbStdDevDesc devdesc
;
64 /* FIXME: add OTG descriptor if host controller supports USB2OTG */
66 struct UsbStdCfgDesc cfgdesc
;
67 struct UsbStdIfDesc ifdesc
;
68 struct UsbStdEPDesc epdesc
;
71 struct UsbHubDesc hubdesc
;
80 struct List unit_list
;
85 #endif /* VUSB2OTG_DEVICE_H */