xref: /btstack/port/stm32-wb55xx-nucleo-freertos/Drivers/CMSIS/Device/ST/STM32WBxx/Include/system_stm32wbxx.h (revision 0561b2d8d5dba972c7daa57d5e677f7a1327edfd)
1 /**
2   ******************************************************************************
3   * @file    system_stm32wbxx.h
4   * @author  MCD Application Team
5   * @brief   CMSIS Cortex Device System Source File for STM32WBxx devices.
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 /** @addtogroup CMSIS
21   * @{
22   */
23 
24 /** @addtogroup stm32wbxx_system
25   * @{
26   */
27 
28 /**
29   * @brief Define to prevent recursive inclusion
30   */
31 #ifndef __SYSTEM_STM32WBXX_H
32 #define __SYSTEM_STM32WBXX_H
33 
34 #ifdef __cplusplus
35  extern "C" {
36 #endif
37 
38 #include <stdint.h>
39 
40 /** @addtogroup STM32WBxx_System_Includes
41   * @{
42   */
43 
44 /**
45   * @}
46   */
47 
48 
49 /** @addtogroup STM32WBxx_System_Exported_types
50   * @{
51   */
52   /* The SystemCoreClock variable is updated in three ways:
53       1) by calling CMSIS function SystemCoreClockUpdate()
54       2) by calling HAL API function HAL_RCC_GetSysClockFreq()
55       3) each time HAL_RCC_ClockConfig() is called to configure the system clock frequency
56          Note: If you use this function to configure the system clock; then there
57                is no need to call the 2 first functions listed above, since SystemCoreClock
58                variable is updated automatically.
59   */
60 
61 extern uint32_t SystemCoreClock;            /*!< System Clock Frequency */
62 
63 extern const uint32_t AHBPrescTable[16];    /*!< AHB prescalers table values */
64 extern const uint32_t APBPrescTable[8];     /*!< APB prescalers table values */
65 extern const uint32_t MSIRangeTable[16];    /*!< MSI ranges table values     */
66 
67 #if defined(STM32WB55xx)
68 extern const uint32_t SmpsPrescalerTable[4][6];  /*!< SMPS factor ranges table values     */
69 #endif
70 /**
71   * @}
72   */
73 
74 /** @addtogroup STM32WBxx_System_Exported_Constants
75   * @{
76   */
77 
78 /**
79   * @}
80   */
81 
82 /** @addtogroup STM32WBxx_System_Exported_Macros
83   * @{
84   */
85 
86 /**
87   * @}
88   */
89 
90 /** @addtogroup STM32WBxx_System_Exported_Functions
91   * @{
92   */
93 
94 extern void SystemInit(void);
95 extern void SystemCoreClockUpdate(void);
96 /**
97   * @}
98   */
99 
100 #ifdef __cplusplus
101 }
102 #endif
103 
104 #endif /*__SYSTEM_STM32WBXX_H */
105 
106 /**
107   * @}
108   */
109 
110 /**
111   * @}
112   */
113 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
114