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 "../../src/bsp/mcu/all/bsp_exceptions.h"
33 #include "vector_data.h"
34 
35 /* CMSIS-CORE Renesas Device Files. Must come after bsp_feature.h, which is included in bsp_cfg.h. */
36 #include "../../src/bsp/cmsis/Device/RENESAS/Include/renesas.h"
37 #include "../../src/bsp/cmsis/Device/RENESAS/Include/system.h"
38 
39 #if defined(__GNUC__) && !defined(__ARMCC_VERSION)
40 
41 /* Restore warning settings for 'conversion' and 'sign-conversion' to as specified on command line. */
42  #pragma GCC diagnostic pop
43 #endif
44 
45 #if defined(BSP_API_OVERRIDE)
46  #include BSP_API_OVERRIDE
47 #else
48 
49 /* BSP Common Includes. */
50  #include "../../src/bsp/mcu/all/bsp_common.h"
51 
52 /* BSP MCU Specific Includes. */
53  #include "../../src/bsp/mcu/all/bsp_register_protection.h"
54  #include "../../src/bsp/mcu/all/bsp_irq.h"
55  #include "../../src/bsp/mcu/all/bsp_io.h"
56  #include "../../src/bsp/mcu/all/bsp_group_irq.h"
57  #include "../../src/bsp/mcu/all/bsp_clocks.h"
58  #include "../../src/bsp/mcu/all/bsp_module_stop.h"
59  #include "../../src/bsp/mcu/all/bsp_security.h"
60 
61 /* Factory MCU information. */
62  #include "../../inc/fsp_features.h"
63 
64 /* BSP Common Includes (Other than bsp_common.h) */
65  #include "../../src/bsp/mcu/all/bsp_delay.h"
66  #include "../../src/bsp/mcu/all/bsp_mcu_api.h"
67 
68  #if __has_include("../../src/bsp/mcu/all/internal/bsp_internal.h")
69   #include "../../src/bsp/mcu/all/internal/bsp_internal.h"
70  #endif
71 
72 #endif
73 
74 /** Common macro for FSP header files. There is also a corresponding FSP_FOOTER macro at the end of this file. */
75 FSP_HEADER
76 
77 /***********************************************************************************************************************
78  * Typedef definitions
79  **********************************************************************************************************************/
80 
81 /***********************************************************************************************************************
82  * Exported global variables
83  **********************************************************************************************************************/
84 
85 /***********************************************************************************************************************
86  * Exported global functions (to be accessed by other files)
87  **********************************************************************************************************************/
88 
89 /*******************************************************************************************************************//**
90  * @addtogroup BSP_MCU
91  * @{
92  **********************************************************************************************************************/
93 
94 fsp_err_t R_FSP_VersionGet(fsp_pack_version_t * const p_version);
95 
96 /** @} (end addtogroup BSP_MCU) */
97 
98 /** Common macro for FSP header files. There is also a corresponding FSP_HEADER macro at the top of this file. */
99 FSP_FOOTER
100 
101 #endif
102