1 /**
2   ******************************************************************************
3   * @file    stm32wbxx_hal_pcd_ex.h
4   * @author  MCD Application Team
5   * @brief   Header file of PCD HAL Extension module.
6   ******************************************************************************
7   * @attention
8   *
9   * <h2><center>&copy; Copyright (c) 2019 STMicroelectronics.
10   * All rights reserved.</center></h2>
11   *
12   * This software component is licensed by ST under BSD 3-Clause license,
13   * the "License"; You may not use this file except in compliance with the
14   * License. You may obtain a copy of the License at:
15   *                        opensource.org/licenses/BSD-3-Clause
16   *
17   ******************************************************************************
18   */
19 
20 /* Define to prevent recursive inclusion -------------------------------------*/
21 #ifndef STM32WBxx_HAL_PCD_EX_H
22 #define STM32WBxx_HAL_PCD_EX_H
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 /* Includes ------------------------------------------------------------------*/
29 #include "stm32wbxx_hal_def.h"
30 
31 #if defined (USB)
32 /** @addtogroup STM32WBxx_HAL_Driver
33   * @{
34   */
35 
36 /** @addtogroup PCDEx
37   * @{
38   */
39 /* Exported types ------------------------------------------------------------*/
40 /* Exported constants --------------------------------------------------------*/
41 /* Exported macros -----------------------------------------------------------*/
42 /* Exported functions --------------------------------------------------------*/
43 /** @addtogroup PCDEx_Exported_Functions PCDEx Exported Functions
44   * @{
45   */
46 /** @addtogroup PCDEx_Exported_Functions_Group1 Peripheral Control functions
47   * @{
48   */
49 
50 
51 
52 HAL_StatusTypeDef  HAL_PCDEx_PMAConfig(PCD_HandleTypeDef *hpcd, uint16_t ep_addr,
53                                        uint16_t ep_kind, uint32_t pmaadress);
54 
55 
56 HAL_StatusTypeDef HAL_PCDEx_ActivateLPM(PCD_HandleTypeDef *hpcd);
57 HAL_StatusTypeDef HAL_PCDEx_DeActivateLPM(PCD_HandleTypeDef *hpcd);
58 
59 
60 HAL_StatusTypeDef HAL_PCDEx_ActivateBCD(PCD_HandleTypeDef *hpcd);
61 HAL_StatusTypeDef HAL_PCDEx_DeActivateBCD(PCD_HandleTypeDef *hpcd);
62 void HAL_PCDEx_BCD_VBUSDetect(PCD_HandleTypeDef *hpcd);
63 
64 void HAL_PCDEx_LPM_Callback(PCD_HandleTypeDef *hpcd, PCD_LPM_MsgTypeDef msg);
65 void HAL_PCDEx_BCD_Callback(PCD_HandleTypeDef *hpcd, PCD_BCD_MsgTypeDef msg);
66 
67 /**
68   * @}
69   */
70 
71 /**
72   * @}
73   */
74 
75 /**
76   * @}
77   */
78 
79 /**
80   * @}
81   */
82 #endif /* defined (USB) */
83 
84 #ifdef __cplusplus
85 }
86 #endif
87 
88 
89 #endif /* STM32WBxx_HAL_PCD_EX_H */
90 
91 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
92