1 /*
2 * Copyright (c) 2020 - 2024 Renesas Electronics Corporation and/or its affiliates
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6 
7 #ifndef BSP_API_H
8 #define BSP_API_H
9 
10 /***********************************************************************************************************************
11  * Includes   <System Includes> , "Project Includes"
12  **********************************************************************************************************************/
13 
14 /* FSP Common Includes. */
15 #include "fsp_common_api.h"
16 
17 /* Gets MCU configuration information. */
18 #include "bsp_cfg.h"
19 
20 #if defined(__GNUC__) && !defined(__ARMCC_VERSION)
21 
22 /* Store warning settings for 'conversion' and 'sign-conversion' to as specified on command line. */
23  #pragma GCC diagnostic push
24 
25 /* CMSIS-CORE currently generates 2 warnings when compiling with GCC. One in core_cmInstr.h and one in core_cm4_simd.h.
26  * We are not modifying these files so we will ignore these warnings temporarily. */
27  #pragma GCC diagnostic ignored "-Wconversion"
28  #pragma GCC diagnostic ignored "-Wsign-conversion"
29 #endif
30 
31 /* Vector information for this project. This is generated by the tooling. */
32 #include "bsp_exceptions.h"
33 /* "vector_data.h" is not used, replace it with soc.h */
34 #include "soc.h"
35 
36 /* CMSIS-CORE Renesas Device Files. Must come after bsp_feature.h, which is included in bsp_cfg.h. */
37 #include "renesas.h"
38 #include "system.h"
39 
40 #if defined(__GNUC__) && !defined(__ARMCC_VERSION)
41 
42 /* Restore warning settings for 'conversion' and 'sign-conversion' to as specified on command line. */
43  #pragma GCC diagnostic pop
44 #endif
45 
46 #if defined(BSP_API_OVERRIDE)
47  #include BSP_API_OVERRIDE
48 #else
49 
50 /* BSP Common Includes. */
51  #include "bsp_common.h"
52 
53 /* BSP MCU Specific Includes. */
54  #include "bsp_register_protection.h"
55  #include "bsp_irq.h"
56  #include "bsp_io.h"
57  #include "bsp_group_irq.h"
58  #include "bsp_clocks.h"
59  #include "bsp_module_stop.h"
60  #include "bsp_security.h"
61 
62 /* Factory MCU information. */
63  #include "fsp_features.h"
64 
65 /* BSP Common Includes (Other than bsp_common.h) */
66  #include "bsp_delay.h"
67  #include "bsp_mcu_api.h"
68 
69 #endif
70 
71 /** Common macro for FSP header files. There is also a corresponding FSP_FOOTER macro at the end of this file. */
72 FSP_HEADER
73 
74 /***********************************************************************************************************************
75  * Typedef definitions
76  **********************************************************************************************************************/
77 
78 /***********************************************************************************************************************
79  * Exported global variables
80  **********************************************************************************************************************/
81 
82 /***********************************************************************************************************************
83  * Exported global functions (to be accessed by other files)
84  **********************************************************************************************************************/
85 
86 /*******************************************************************************************************************//**
87  * @addtogroup BSP_MCU
88  * @{
89  **********************************************************************************************************************/
90 
91 fsp_err_t R_FSP_VersionGet(fsp_pack_version_t * const p_version);
92 
93 /** @} (end addtogroup BSP_MCU) */
94 
95 /** Common macro for FSP header files. There is also a corresponding FSP_HEADER macro at the top of this file. */
96 FSP_FOOTER
97 
98 #endif
99