usbevent.h 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #ifndef __usb_event_h__
  2. #define __usb_event_h__
  3. /**HEADER********************************************************************
  4. *
  5. * Copyright (c) 2010 Freescale Semiconductor;
  6. * All Rights Reserved
  7. *
  8. ***************************************************************************
  9. *
  10. * THIS SOFTWARE IS PROVIDED BY FREESCALE "AS IS" AND ANY EXPRESSED OR
  11. * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  12. * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  13. * IN NO EVENT SHALL FREESCALE OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
  14. * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  15. * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
  16. * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  17. * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
  18. * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
  19. * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  20. * THE POSSIBILITY OF SUCH DAMAGE.
  21. *
  22. **************************************************************************
  23. *
  24. * $FileName: usbevent.h$
  25. * $Version : 0.0.0.1$
  26. * $Date : Nov-18-2009$
  27. *
  28. * Comments:
  29. *
  30. *
  31. *
  32. *END************************************************************************/
  33. #include "types.h"
  34. /*--------------------------------------------------------------------------*/
  35. /*
  36. ** MACRO DEFINITIONS
  37. */
  38. #define USB_EVENT_OK 0x00
  39. #define USB_EVENT_ERROR 0x01
  40. #define USB_EVENT_SET 0x02
  41. #define USB_EVENT_NOT_SET 0x03
  42. #define USB_EVENT_VALID 0x04
  43. #define USB_EVENT_INVALID 0x05
  44. /*--------------------------------------------------------------------------*/
  45. /*
  46. ** DATATYPE DECLARATIONS
  47. */
  48. #ifdef __CC_ARM
  49. #pragma push
  50. #pragma pack(1)
  51. #endif
  52. typedef struct usb_event
  53. {
  54. boolean VALID;
  55. uint_32 VALUE;
  56. } USB_EVENT_STRUCT, _PTR_ USB_EVENT_STRUCT_PTR;
  57. /*---------------------------------------------------------------------
  58. **
  59. **
  60. */
  61. /*--------------------------------------------------------------------------*/
  62. /*
  63. ** FUNCTION PROTOTYPES
  64. */
  65. #ifdef __cplusplus
  66. extern "C" {
  67. #endif
  68. extern uint_16 _usb_event_init(USB_EVENT_STRUCT_PTR);
  69. extern uint_16 _usb_event_clear(USB_EVENT_STRUCT_PTR, uint_32);
  70. extern uint_16 _usb_event_set(USB_EVENT_STRUCT_PTR, uint_32);
  71. extern uint_16 _usb_event_wait_ticks(USB_EVENT_STRUCT_PTR, uint_32, uint_8, uint_16);
  72. #ifdef __cplusplus
  73. }
  74. #endif
  75. #ifdef __CC_ARM
  76. #pragma pop
  77. #endif
  78. #endif
  79. /* EOF */