LPCOpen Platform
LPCOpen Platform for NXP LPC Microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
EndpointStream_LPC.h
Go to the documentation of this file.
1 /*
2  * @brief Endpoint data stream transmission and reception management for the LPC microcontrollers
3  *
4  * @note
5  * Copyright(C) NXP Semiconductors, 2012
6  * All rights reserved.
7  *
8  * @par
9  * Software that is described herein is for illustrative purposes only
10  * which provides customers with programming information regarding the
11  * LPC products. This software is supplied "AS IS" without any warranties of
12  * any kind, and NXP Semiconductors and its licensor disclaim any and
13  * all warranties, express or implied, including all implied warranties of
14  * merchantability, fitness for a particular purpose and non-infringement of
15  * intellectual property rights. NXP Semiconductors assumes no responsibility
16  * or liability for the use of the software, conveys no license or rights under any
17  * patent, copyright, mask work right, or any other intellectual property rights in
18  * or to any products. NXP Semiconductors reserves the right to make changes
19  * in the software without notification. NXP Semiconductors also makes no
20  * representation or warranty that such application will be suitable for the
21  * specified use without further testing or modification.
22  *
23  * @par
24  * Permission to use, copy, modify, and distribute this software and its
25  * documentation is hereby granted, under NXP Semiconductors' and its
26  * licensor's relevant copyrights in the software, without fee, provided that it
27  * is used in conjunction with NXP Semiconductors microcontrollers. This
28  * copyright, permission, and disclaimer notice must appear in all copies of
29  * this code.
30  */
31 
42 #ifndef __ENDPOINT_STREAM_LPC_H__
43 #define __ENDPOINT_STREAM_LPC_H__
44 
45 /* Includes: */
46  #include "../../../../Common/Common.h"
47  #include "../USBMode.h"
48  #include "../USBTask.h"
49 
50 /* Enable C linkage for C++ Compilers: */
51  #if defined(__cplusplus)
52 extern "C" {
53  #endif
54 
55 /* Preprocessor Checks: */
56  #if !defined(__INCLUDE_FROM_USB_DRIVER)
57  #error Do not include this file directly. Include lpcroot/libraries/LPCUSBlib/Drivers/USB/USB.h instead.
58  #endif
59 
60 /* Public Interface - May be used in end-application: */
61 /* Function Prototypes: */
118 uint8_t Endpoint_Discard_Stream(uint16_t Length,
119  uint16_t *const BytesProcessed);
120 
175 uint8_t Endpoint_Null_Stream(uint16_t Length,
176  uint16_t *const BytesProcessed);
177 
179 
182 
242 uint8_t Endpoint_Write_Stream_LE(const void *const Buffer,
243  uint16_t Length,
244  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
245 
260 uint8_t Endpoint_Write_Stream_BE(const void *const Buffer,
261  uint16_t Length,
262  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
263 
324 uint8_t Endpoint_Read_Stream_LE(void *const Buffer,
325  uint16_t Length,
326  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
327 
342 uint8_t Endpoint_Read_Stream_BE(void *const Buffer,
343  uint16_t Length,
344  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
345 
365 uint8_t Endpoint_Write_Control_Stream_LE(const void *const Buffer,
366  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
367 
387 uint8_t Endpoint_Write_Control_Stream_BE(const void *const Buffer,
388  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
389 
409 uint8_t Endpoint_Read_Control_Stream_LE(void *const Buffer,
410  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
411 
431 uint8_t Endpoint_Read_Control_Stream_BE(void *const Buffer,
432  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
434 
445 uint8_t Endpoint_Write_EStream_LE(const void *const Buffer,
446  uint16_t Length,
447  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
448 
457 uint8_t Endpoint_Write_EStream_BE(const void *const Buffer,
458  uint16_t Length,
459  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
460 
469 uint8_t Endpoint_Read_EStream_LE(void *const Buffer,
470  uint16_t Length,
471  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
472 
481 uint8_t Endpoint_Read_EStream_BE(void *const Buffer,
482  uint16_t Length,
483  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
484 
502 uint8_t Endpoint_Write_Control_EStream_LE(const void *const Buffer,
503  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
504 
522 uint8_t Endpoint_Write_Control_EStream_BE(const void *const Buffer,
523  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
524 
542 uint8_t Endpoint_Read_Control_EStream_LE(void *const Buffer,
543  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
544 
562 uint8_t Endpoint_Read_Control_EStream_BE(void *const Buffer,
563  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
565 
568 
574 uint8_t Endpoint_Write_PStream_LE(const void *const Buffer,
575  uint16_t Length,
576  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
577 
586 uint8_t Endpoint_Write_PStream_BE(const void *const Buffer,
587  uint16_t Length,
588  uint16_t *const BytesProcessed) ATTR_NON_NULL_PTR_ARG(1);
589 
596 uint8_t Endpoint_Write_Control_PStream_LE(const void *const Buffer,
597  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
598 
605 uint8_t Endpoint_Write_Control_PStream_BE(const void *const Buffer,
606  uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
608 
609 /* Disable C linkage for C++ Compilers: */
610  #if defined(__cplusplus)
611 }
612  #endif
613 
614 #endif
615