1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-11-28 09:24:14 +01:00

[PUSB] Fixed the correct number of endpoints

This commit is contained in:
Cristian Maglie 2015-09-30 20:52:00 +02:00
parent e823ef0c16
commit d1f0c6953a
3 changed files with 12 additions and 15 deletions

View File

@ -23,9 +23,6 @@
#if defined(USBCON)
#ifdef PLUGGABLE_USB_ENABLED
// TODO: set correct value for different CPUs
#define MAX_EP 6
extern uint8_t _initEndpoints[];
PluggableUSB_ PluggableUSB;
@ -64,7 +61,7 @@ bool PluggableUSB_::setup(USBSetup& setup, uint8_t j)
bool PluggableUSB_::plug(PUSBListNode *node)
{
if ((lastEp + node->numEndpoints) >= MAX_EP) {
if ((lastEp + node->numEndpoints) > USB_ENDPOINTS) {
return false;
}

View File

@ -308,20 +308,15 @@ int USB_Send(u8 ep, const void* d, int len)
return r;
}
u8 _initEndpoints[] =
u8 _initEndpoints[USB_ENDPOINTS] =
{
0,
0, // Control Endpoint
EP_TYPE_INTERRUPT_IN, // CDC_ENDPOINT_ACM
EP_TYPE_BULK_OUT, // CDC_ENDPOINT_OUT
EP_TYPE_BULK_IN, // CDC_ENDPOINT_IN
EP_TYPE_INTERRUPT_IN, // CDC_ENDPOINT_ACM
EP_TYPE_BULK_OUT, // CDC_ENDPOINT_OUT
EP_TYPE_BULK_IN, // CDC_ENDPOINT_IN
#ifdef PLUGGABLE_USB_ENABLED
//allocate 3 endpoints and remove const so they can be changed by the user
0,
0,
0,
#endif
// Following endpoints are automatically initialized to 0
};
#define EP_SINGLE_64 0x32 // EP0

View File

@ -18,6 +18,11 @@
#define PLUGGABLE_USB_ENABLED
#if defined(EPRST6)
#define USB_ENDPOINTS 7 // AtMegaxxU4
#else
#define USB_ENDPOINTS 5 // AtMegaxxU2
#endif
#define CDC_INTERFACE_COUNT 2
#define CDC_ENPOINT_COUNT 3