diff options
author | Zach Eveland <zeveland@blacklabel-development.com> | 2011-11-09 14:04:59 -0500 |
---|---|---|
committer | Zach Eveland <zeveland@blacklabel-development.com> | 2011-11-09 14:04:59 -0500 |
commit | 4b7771a8159f47891311bbac6d97eac33868bc65 (patch) | |
tree | 729f0940bad89ec074aeb4cdb189f1b2839e744a /bootloaders/diskloader/src/USBDesc.h | |
parent | bca358b9739c8bf7e4dd9808b97acc90cf0b6ab3 (diff) |
restored original non-interrupt-driven DiskLoader
Interrupt-driven version was a dead-end - too many bugs with that approach.
Diffstat (limited to 'bootloaders/diskloader/src/USBDesc.h')
-rw-r--r-- | bootloaders/diskloader/src/USBDesc.h | 45 |
1 files changed, 37 insertions, 8 deletions
diff --git a/bootloaders/diskloader/src/USBDesc.h b/bootloaders/diskloader/src/USBDesc.h index 588a40c..094dba5 100644 --- a/bootloaders/diskloader/src/USBDesc.h +++ b/bootloaders/diskloader/src/USBDesc.h @@ -16,19 +16,48 @@ ** SOFTWARE. */ -#define CDC_INTERFACE_COUNT 2 -#define CDC_ENPOINT_COUNT 3 + +#ifdef CDC_ENABLED #define CDC_ACM_INTERFACE 0 // CDC ACM #define CDC_DATA_INTERFACE 1 // CDC Data -#define CDC_FIRST_ENDPOINT 1 -#define CDC_ENDPOINT_ACM (CDC_FIRST_ENDPOINT) // CDC First -#define CDC_ENDPOINT_OUT (CDC_FIRST_ENDPOINT+1) -#define CDC_ENDPOINT_IN (CDC_FIRST_ENDPOINT+2) +#define CDC_ENDPOINT_ACM 1 +#define CDC_ENDPOINT_OUT 2 +#define CDC_ENDPOINT_IN 3 -#define CDC_RX CDC_ENDPOINT_OUT -#define CDC_TX CDC_ENDPOINT_IN +#define HID_INTERFACE 2 // HID Interface +#define HID_ENDPOINT_INT 4 + +#define INTERFACE_COUNT 3 // 2 for cdc + 1 for hid + +#else + +#define HID_INTERFACE 2 // HID Interface +#define HID_ENDPOINT_INT 4 + +#define INTERFACE_COUNT 1 // 1 for hid + +#endif + +typedef struct +{ + ConfigDescriptor config; +#ifdef CDC_ENABLED + CDCDescriptor cdc; +#endif + HIDDescriptor hid; +} Config; + +extern Config USB_ConfigDescriptor PROGMEM; +extern DeviceDescriptor USB_DeviceDescriptor PROGMEM; +extern DeviceDescriptor USB_DeviceDescriptorA PROGMEM; + +extern const u16 STRING_LANGUAGE[2] PROGMEM; +extern const u16 STRING_IPRODUCT[28] PROGMEM; +extern const u16 STRING_IMANUFACTURER[12] PROGMEM; #define IMANUFACTURER 1 #define IPRODUCT 2 +#define CDC_TX CDC_ENDPOINT_IN +#define CDC_RX CDC_ENDPOINT_OUT
\ No newline at end of file |