| 1 | /* USBEndpoints_LPC17_LPC23.h */\r |
| 2 | /* Endpoint configuration for LPC1768 and LPC2368 */\r |
| 3 | /* Copyright (c) 2011 ARM Limited. All rights reserved. */\r |
| 4 | \r |
| 5 | #define NUMBER_OF_LOGICAL_ENDPOINTS (16)\r |
| 6 | #define NUMBER_OF_PHYSICAL_ENDPOINTS (NUMBER_OF_LOGICAL_ENDPOINTS * 2)\r |
| 7 | \r |
| 8 | /* Define physical endpoint numbers */\r |
| 9 | \r |
| 10 | /* Endpoint No. Type(s) MaxPacket DoubleBuffer */\r |
| 11 | /* ---------------- ------------ ---------- --- */\r |
| 12 | #define EP0OUT (0) /* Control 64 No */\r |
| 13 | #define EP0IN (1) /* Control 64 No */\r |
| 14 | #define EP1OUT (2) /* Interrupt 64 No */\r |
| 15 | #define EP1IN (3) /* Interrupt 64 No */\r |
| 16 | #define EP2OUT (4) /* Bulk 64 Yes */\r |
| 17 | #define EP2IN (5) /* Bulk 64 Yes */\r |
| 18 | #define EP3OUT (6) /* Isochronous 1023 Yes */\r |
| 19 | #define EP3IN (7) /* Isochronous 1023 Yes */\r |
| 20 | #define EP4OUT (8) /* Interrupt 64 No */\r |
| 21 | #define EP4IN (9) /* Interrupt 64 No */\r |
| 22 | #define EP5OUT (10) /* Bulk 64 Yes */\r |
| 23 | #define EP5IN (11) /* Bulk 64 Yes */\r |
| 24 | #define EP6OUT (12) /* Isochronous 1023 Yes */\r |
| 25 | #define EP6IN (13) /* Isochronous 1023 Yes */\r |
| 26 | #define EP7OUT (14) /* Interrupt 64 No */\r |
| 27 | #define EP7IN (15) /* Interrupt 64 No */\r |
| 28 | #define EP8OUT (16) /* Bulk 64 Yes */\r |
| 29 | #define EP8IN (17) /* Bulk 64 Yes */\r |
| 30 | #define EP9OUT (18) /* Isochronous 1023 Yes */\r |
| 31 | #define EP9IN (19) /* Isochronous 1023 Yes */\r |
| 32 | #define EP10OUT (20) /* Interrupt 64 No */\r |
| 33 | #define EP10IN (21) /* Interrupt 64 No */\r |
| 34 | #define EP11OUT (22) /* Bulk 64 Yes */\r |
| 35 | #define EP11IN (23) /* Bulk 64 Yes */\r |
| 36 | #define EP12OUT (24) /* Isochronous 1023 Yes */\r |
| 37 | #define EP12IN (25) /* Isochronous 1023 Yes */\r |
| 38 | #define EP13OUT (26) /* Interrupt 64 No */\r |
| 39 | #define EP13IN (27) /* Interrupt 64 No */\r |
| 40 | #define EP14OUT (28) /* Bulk 64 Yes */\r |
| 41 | #define EP14IN (29) /* Bulk 64 Yes */\r |
| 42 | #define EP15OUT (30) /* Bulk 64 Yes */\r |
| 43 | #define EP15IN (31) /* Bulk 64 Yes */\r |
| 44 | \r |
| 45 | /* Maximum Packet sizes */\r |
| 46 | \r |
| 47 | #define MAX_PACKET_SIZE_EP0 (64)\r |
| 48 | #define MAX_PACKET_SIZE_EP1 (64)\r |
| 49 | #define MAX_PACKET_SIZE_EP2 (64)\r |
| 50 | #define MAX_PACKET_SIZE_EP3 (1023)\r |
| 51 | #define MAX_PACKET_SIZE_EP4 (64)\r |
| 52 | #define MAX_PACKET_SIZE_EP5 (64)\r |
| 53 | #define MAX_PACKET_SIZE_EP6 (1023)\r |
| 54 | #define MAX_PACKET_SIZE_EP7 (64)\r |
| 55 | #define MAX_PACKET_SIZE_EP8 (64)\r |
| 56 | #define MAX_PACKET_SIZE_EP9 (1023)\r |
| 57 | #define MAX_PACKET_SIZE_EP10 (64)\r |
| 58 | #define MAX_PACKET_SIZE_EP11 (64)\r |
| 59 | #define MAX_PACKET_SIZE_EP12 (1023)\r |
| 60 | #define MAX_PACKET_SIZE_EP13 (64)\r |
| 61 | #define MAX_PACKET_SIZE_EP14 (64)\r |
| 62 | #define MAX_PACKET_SIZE_EP15 (64)\r |
| 63 | \r |
| 64 | /* Generic endpoints - intended to be portable accross devices */\r |
| 65 | /* and be suitable for simple USB devices. */\r |
| 66 | \r |
| 67 | /* Bulk endpoints */\r |
| 68 | #define EPBULK_OUT (EP2OUT)\r |
| 69 | #define EPBULK_IN (EP2IN)\r |
| 70 | /* Interrupt endpoints */\r |
| 71 | #define EPINT_OUT (EP1OUT)\r |
| 72 | #define EPINT_IN (EP1IN)\r |
| 73 | /* Isochronous endpoints */\r |
| 74 | #define EPISO_OUT (EP3OUT)\r |
| 75 | #define EPISO_IN (EP3IN)\r |
| 76 | \r |
| 77 | #define MAX_PACKET_SIZE_EPBULK (MAX_PACKET_SIZE_EP2)\r |
| 78 | #define MAX_PACKET_SIZE_EPINT (MAX_PACKET_SIZE_EP1)\r |
| 79 | #define MAX_PACKET_SIZE_EPISO (MAX_PACKET_SIZE_EP3)\r |