mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			
		
			
				
	
	
		
			63 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C
		
	
	
/* mbed Microcontroller Library
 | 
						|
 * Copyright (c) 2018-2018 ARM Limited
 | 
						|
 * SPDX-License-Identifier: Apache-2.0
 | 
						|
 *
 | 
						|
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
 * you may not use this file except in compliance with the License.
 | 
						|
 * You may obtain a copy of the License at
 | 
						|
 *
 | 
						|
 *     http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
 *
 | 
						|
 * Unless required by applicable law or agreed to in writing, software
 | 
						|
 * distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
 * See the License for the specific language governing permissions and
 | 
						|
 * limitations under the License.
 | 
						|
 */
 | 
						|
 | 
						|
#define NUMBER_OF_LOGICAL_ENDPOINTS (4)
 | 
						|
#define NUMBER_OF_PHYSICAL_ENDPOINTS (NUMBER_OF_LOGICAL_ENDPOINTS * 2)
 | 
						|
 | 
						|
/* Define physical endpoint numbers */
 | 
						|
 | 
						|
/*      Endpoint    No.   */
 | 
						|
/*      ----------------  */
 | 
						|
#define EP0OUT      (0x00)
 | 
						|
#define EP0IN       (0x80)
 | 
						|
#define EP1OUT      (0x01)
 | 
						|
#define EP1IN       (0x81)
 | 
						|
#define EP2OUT      (0x02)
 | 
						|
#define EP2IN       (0x82)
 | 
						|
#define EP3OUT      (0x03)
 | 
						|
#define EP3IN       (0x83)
 | 
						|
 | 
						|
/* Maximum Packet sizes */
 | 
						|
 | 
						|
#define MAX_PACKET_SIZE_EP0  (64)
 | 
						|
#define MAX_PACKET_SIZE_EP1  (64)
 | 
						|
#define MAX_PACKET_SIZE_EP2  (64)
 | 
						|
#define MAX_PACKET_SIZE_EP3  (1023)
 | 
						|
 | 
						|
/* Generic endpoints - intended to be portable accross devices */
 | 
						|
/* and be suitable for simple USB devices. */
 | 
						|
 | 
						|
/* Bulk endpoints */
 | 
						|
#define EPBULK_OUT  (EP2OUT)
 | 
						|
#define EPBULK_IN   (EP2IN)
 | 
						|
#define EPBULK_OUT_callback   EP2_OUT_callback
 | 
						|
#define EPBULK_IN_callback    EP2_IN_callback
 | 
						|
/* Interrupt endpoints */
 | 
						|
#define EPINT_OUT   (EP1OUT)
 | 
						|
#define EPINT_IN    (EP1IN)
 | 
						|
#define EPINT_OUT_callback    EP1_OUT_callback
 | 
						|
#define EPINT_IN_callback     EP1_IN_callback
 | 
						|
/* Isochronous endpoints */
 | 
						|
#define EPISO_OUT   (EP3OUT)
 | 
						|
#define EPISO_IN    (EP3IN)
 | 
						|
#define EPISO_OUT_callback    EP3_OUT_callback
 | 
						|
#define EPISO_IN_callback     EP3_IN_callback
 | 
						|
 | 
						|
#define MAX_PACKET_SIZE_EPBULK  (MAX_PACKET_SIZE_EP2)
 | 
						|
#define MAX_PACKET_SIZE_EPINT   (MAX_PACKET_SIZE_EP1)
 | 
						|
#define MAX_PACKET_SIZE_EPISO   (MAX_PACKET_SIZE_EP3)
 |