1 /* 2 * Copyright (c) 2020 - 2024 Renesas Electronics Corporation and/or its affiliates 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /*******************************************************************************************************************//** 8 * @addtogroup BSP_MCU_RA8M1 9 * @{ 10 **********************************************************************************************************************/ 11 12 /** @} (end addtogroup BSP_MCU_RA8M1) */ 13 14 #ifndef BSP_OVERRIDE_H 15 #define BSP_OVERRIDE_H 16 17 /*********************************************************************************************************************** 18 * Includes <System Includes> , "Project Includes" 19 **********************************************************************************************************************/ 20 21 /*********************************************************************************************************************** 22 * Macro definitions 23 **********************************************************************************************************************/ 24 25 /* Define overrides required for this MCU. */ 26 27 #define BSP_OVERRIDE_CGC_SYS_CLOCK_DIV_T 28 #define BSP_OVERRIDE_GROUP_IRQ_T 29 30 /*********************************************************************************************************************** 31 * Typedef definitions 32 **********************************************************************************************************************/ 33 34 /** System clock divider values - The individually selectable divider of each of the system clocks, ICLK, BCLK, FCLK, 35 * PCLKS A-D. */ 36 typedef enum e_cgc_sys_clock_div 37 { 38 CGC_SYS_CLOCK_DIV_1 = 0, ///< System clock divided by 1 39 CGC_SYS_CLOCK_DIV_2 = 1, ///< System clock divided by 2 40 CGC_SYS_CLOCK_DIV_4 = 2, ///< System clock divided by 4 41 CGC_SYS_CLOCK_DIV_8 = 3, ///< System clock divided by 8 42 CGC_SYS_CLOCK_DIV_16 = 4, ///< System clock divided by 16 43 CGC_SYS_CLOCK_DIV_32 = 5, ///< System clock divided by 32 44 CGC_SYS_CLOCK_DIV_64 = 6, ///< System clock divided by 64 45 CGC_SYS_CLOCK_DIV_3 = 8, ///< System clock divided by 3 46 CGC_SYS_CLOCK_DIV_6 = 9, ///< System clock divided by 6 47 CGC_SYS_CLOCK_DIV_12 = 10, ///< System clock divided by 12 48 } cgc_sys_clock_div_t; 49 50 /* Which interrupts can have callbacks registered. */ 51 typedef enum e_bsp_grp_irq 52 { 53 BSP_GRP_IRQ_IWDT_ERROR = 0, ///< IWDT underflow/refresh error has occurred 54 BSP_GRP_IRQ_WDT_ERROR = 1, ///< WDT underflow/refresh error has occurred 55 BSP_GRP_IRQ_LVD1 = 2, ///< Voltage monitoring 1 interrupt 56 BSP_GRP_IRQ_LVD2 = 3, ///< Voltage monitoring 2 interrupt 57 BSP_GRP_IRQ_OSC_STOP_DETECT = 6, ///< Oscillation stop is detected 58 BSP_GRP_IRQ_NMI_PIN = 7, ///< NMI Pin interrupt 59 BSP_GRP_IRQ_MPU_BUS_TZF = 12, ///< MPU Bus or TrustZone Filter Error 60 BSP_GRP_IRQ_COMMON_MEMORY = 13, ///< SRAM ECC or SRAM Parity Error 61 BSP_GRP_IRQ_LOCKUP = 15, ///< LockUp Error 62 } bsp_grp_irq_t; 63 64 /*********************************************************************************************************************** 65 * Exported global variables 66 **********************************************************************************************************************/ 67 68 /*********************************************************************************************************************** 69 * Exported global functions (to be accessed by other files) 70 **********************************************************************************************************************/ 71 72 #endif 73