1 /**
2   **************************************************************************
3   * @file     usb_int.h
4   * @brief    usb header file
5   **************************************************************************
6   *                       Copyright notice & Disclaimer
7   *
8   * The software Board Support Package (BSP) that is made available to
9   * download from Artery official website is the copyrighted work of Artery.
10   * Artery authorizes customers to use, copy, and distribute the BSP
11   * software and its related documentation for the purpose of design and
12   * development in conjunction with Artery microcontrollers. Use of the
13   * software is governed by this copyright notice and the following disclaimer.
14   *
15   * THIS SOFTWARE IS PROVIDED ON "AS IS" BASIS WITHOUT WARRANTIES,
16   * GUARANTEES OR REPRESENTATIONS OF ANY KIND. ARTERY EXPRESSLY DISCLAIMS,
17   * TO THE FULLEST EXTENT PERMITTED BY LAW, ALL EXPRESS, IMPLIED OR
18   * STATUTORY OR OTHER WARRANTIES, GUARANTEES OR REPRESENTATIONS,
19   * INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,
20   * FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.
21   *
22   **************************************************************************
23   */
24 
25 /* define to prevent recursive inclusion -------------------------------------*/
26 #ifndef __USB_INT_H
27 #define __USB_INT_H
28 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 /* includes ------------------------------------------------------------------*/
34 #include "usbd_core.h"
35 
36 /** @addtogroup USBD_drivers_interrupt
37   * @{
38   */
39 
40 /** @defgroup USBD_int_exported_functions
41   * @{
42   */
43 
44 #ifdef BSP_USING_USBD
45 
46 void usbd_irq_handler(usbd_core_type *udev);
47 void usbd_ept_loop_handler(usbd_core_type *udev);
48 void usbd_eptn_handler(usbd_core_type *udev, usb_ept_number_type ept_num);
49 void usbd_reset_handler(usbd_core_type *udev);
50 void usbd_sof_handler(usbd_core_type *udev);
51 void usbd_suspend_handler(usbd_core_type *udev);
52 void usbd_wakeup_handler(usbd_core_type *udev);
53 
54 /* callback for rt-thread */
55 void usbd_reset_callback(usbd_core_type *udev);
56 void usbd_setup_phase_done_callback(usbd_core_type *udev);
57 void usbd_data_in_stage_callback(usbd_core_type *udev, uint32_t ept_num);
58 void usbd_sof_callback(usbd_core_type *udev);
59 void usbd_data_out_stage_callback(usbd_core_type *udev, uint32_t ept_num);
60 void usbd_connectCallback(usbd_core_type *udev);
61 void usbd_disconnectCallback(usbd_core_type *udev);
62 
63 #endif
64 
65 /**
66   * @}
67   */
68 
69 /**
70   * @}
71   */
72 
73 #ifdef __cplusplus
74 }
75 #endif
76 #endif
77 
78