1 /*********************************************************************************************************************** 2 * Copyright [2015-2017] Renesas Electronics Corporation and/or its licensors. All Rights Reserved. 3 * 4 * This file is part of Renesas SynergyTM Software Package (SSP) 5 * 6 * The contents of this file (the "contents") are proprietary and confidential to Renesas Electronics Corporation 7 * and/or its licensors ("Renesas") and subject to statutory and contractual protections. 8 * 9 * This file is subject to a Renesas SSP license agreement. Unless otherwise agreed in an SSP license agreement with 10 * Renesas: 1) you may not use, copy, modify, distribute, display, or perform the contents; 2) you may not use any name 11 * or mark of Renesas for advertising or publicity purposes or in connection with your use of the contents; 3) RENESAS 12 * MAKES NO WARRANTY OR REPRESENTATIONS ABOUT THE SUITABILITY OF THE CONTENTS FOR ANY PURPOSE; THE CONTENTS ARE PROVIDED 13 * "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 14 * PARTICULAR PURPOSE, AND NON-INFRINGEMENT; AND 4) RENESAS SHALL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, OR 15 * CONSEQUENTIAL DAMAGES, INCLUDING DAMAGES RESULTING FROM LOSS OF USE, DATA, OR PROJECTS, WHETHER IN AN ACTION OF 16 * CONTRACT OR TORT, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE CONTENTS. Third-party contents 17 * included in this file may be subject to different terms. 18 **********************************************************************************************************************/ 19 /*********************************************************************************************************************** 20 * File Name : bsp_elc.h 21 * Description : ELC Interface. 22 ***********************************************************************************************************************/ 23 24 /*******************************************************************************************************************//** 25 * @ingroup Interface_Library 26 * @addtogroup ELC_API events and peripheral definitions 27 * @brief Interface for the Event Link Controller. 28 * 29 * Related SSP architecture topics: 30 * - What is an SSP Interface? @ref ssp-interfaces 31 * - What is a SSP Layer? @ref ssp-predefined-layers 32 * - How to use SSP Interfaces and Modules? @ref using-ssp-modules 33 * 34 * Event Link Controller Interface description: @ref HALELCInterface 35 * 36 * @{ 37 **********************************************************************************************************************/ 38 39 /** @} (end addtogroup ELC_API) */ 40 41 #ifndef BSP_ELCDEFS_H_ 42 #define BSP_ELCDEFS_H_ 43 44 /*********************************************************************************************************************** 45 Macro definitions 46 ***********************************************************************************************************************/ 47 48 /*********************************************************************************************************************** 49 Typedef definitions 50 ***********************************************************************************************************************/ 51 52 /*********************************************************************************************************************** 53 Exported global variables 54 ***********************************************************************************************************************/ 55 56 /*********************************************************************************************************************** 57 Exported global functions (to be accessed by other files) 58 ***********************************************************************************************************************/ 59 /** Possible peripherals to be linked to event signals */ 60 typedef enum e_elc_peripheral 61 { 62 ELC_PERIPHERAL_GPT_A = (0), 63 ELC_PERIPHERAL_GPT_B = (1), 64 ELC_PERIPHERAL_GPT_C = (2), 65 ELC_PERIPHERAL_GPT_D = (3), 66 ELC_PERIPHERAL_ADC0 = (8), 67 ELC_PERIPHERAL_ADC0_B = (9), 68 ELC_PERIPHERAL_IOPORT1 = (14), 69 ELC_PERIPHERAL_IOPORT2 = (15), 70 ELC_PERIPHERAL_CTSU = (18), 71 ELC_PERIPHERAL_DA80 = (19), 72 ELC_PERIPHERAL_DA81 = (20), 73 ELC_PERIPHERAL_SDADC0 = (22), 74 } elc_peripheral_t; 75 76 /** Sources of event signals to be linked to other peripherals or the CPU1 77 * @note This list may change based on device. This list is for S1JA. 78 * */ 79 typedef enum e_elc_event 80 { 81 ELC_EVENT_ICU_IRQ0 = (1), 82 ELC_EVENT_ICU_IRQ1 = (2), 83 ELC_EVENT_ICU_IRQ2 = (3), 84 ELC_EVENT_ICU_IRQ3 = (4), 85 ELC_EVENT_ICU_IRQ4 = (5), 86 ELC_EVENT_ICU_IRQ5 = (6), 87 ELC_EVENT_ICU_IRQ6 = (7), 88 ELC_EVENT_ICU_IRQ7 = (8), 89 ELC_EVENT_DTC_COMPLETE = (9), 90 ELC_EVENT_DTC_END = (10), 91 ELC_EVENT_ICU_SNOOZE_CANCEL = (11), 92 ELC_EVENT_FCU_FRDYI = (12), 93 ELC_EVENT_LVD_LVD1 = (13), 94 ELC_EVENT_LVD_LVD2 = (14), 95 ELC_EVENT_CGC_MOSC_STOP = (15), 96 ELC_EVENT_LPM_SNOOZE_REQUEST = (16), 97 ELC_EVENT_AGT0_INT = (17), 98 ELC_EVENT_AGT0_COMPARE_A = (18), 99 ELC_EVENT_AGT0_COMPARE_B = (19), 100 ELC_EVENT_AGT1_INT = (20), 101 ELC_EVENT_AGT1_COMPARE_A = (21), 102 ELC_EVENT_AGT1_COMPARE_B = (22), 103 ELC_EVENT_IWDT_UNDERFLOW = (23), 104 ELC_EVENT_WDT_UNDERFLOW = (24), 105 ELC_EVENT_RTC_ALARM = (25), 106 ELC_EVENT_RTC_PERIOD = (26), 107 ELC_EVENT_RTC_CARRY = (27), 108 ELC_EVENT_ADC0_SCAN_END = (28), 109 ELC_EVENT_ADC0_SCAN_END_B = (29), 110 ELC_EVENT_ADC0_WINDOW_A = (30), 111 ELC_EVENT_ADC0_WINDOW_B = (31), 112 ELC_EVENT_ADC0_COMPARE_MATCH = (32), 113 ELC_EVENT_ADC0_COMPARE_MISMATCH = (33), 114 ELC_EVENT_COMP_HS0_INT = (34), 115 ELC_EVENT_COMP_LP0_INT = (35), 116 ELC_EVENT_COMP_LP1_INT = (36), 117 ELC_EVENT_USBFS_INT = (37), 118 ELC_EVENT_USBFS_RESUME = (38), 119 ELC_EVENT_IIC0_RXI = (39), 120 ELC_EVENT_IIC0_TXI = (40), 121 ELC_EVENT_IIC0_TEI = (41), 122 ELC_EVENT_IIC0_ERI = (42), 123 ELC_EVENT_IIC0_WUI = (43), 124 ELC_EVENT_IIC1_RXI = (44), 125 ELC_EVENT_IIC1_TXI = (45), 126 ELC_EVENT_IIC1_TEI = (46), 127 ELC_EVENT_IIC1_ERI = (47), 128 ELC_EVENT_CTSU_WRITE = (48), 129 ELC_EVENT_CTSU_READ = (49), 130 ELC_EVENT_CTSU_END = (50), 131 ELC_EVENT_KEY_INT = (51), 132 ELC_EVENT_DOC_INT = (52), 133 ELC_EVENT_CAC_FREQUENCY_ERROR = (53), 134 ELC_EVENT_CAC_MEASUREMENT_END = (54), 135 ELC_EVENT_CAC_OVERFLOW = (55), 136 ELC_EVENT_CAN0_ERROR = (56), 137 ELC_EVENT_CAN0_FIFO_RX = (57), 138 ELC_EVENT_CAN0_FIFO_TX = (58), 139 ELC_EVENT_CAN0_MAILBOX_RX = (59), 140 ELC_EVENT_CAN0_MAILBOX_TX = (60), 141 ELC_EVENT_IOPORT_EVENT_1 = (61), 142 ELC_EVENT_IOPORT_EVENT_2 = (62), 143 ELC_EVENT_ELC_SOFTWARE_EVENT_0 = (63), 144 ELC_EVENT_ELC_SOFTWARE_EVENT_1 = (64), 145 ELC_EVENT_POEG0_EVENT = (65), 146 ELC_EVENT_POEG1_EVENT = (66), 147 ELC_EVENT_SDADC0_ADI = (67), 148 ELC_EVENT_SDADC0_SCANEND = (68), 149 ELC_EVENT_SDADC0_CALIEND = (69), 150 ELC_EVENT_GPT0_CAPTURE_COMPARE_A = (70), 151 ELC_EVENT_GPT0_CAPTURE_COMPARE_B = (71), 152 ELC_EVENT_GPT0_COMPARE_C = (72), 153 ELC_EVENT_GPT0_COMPARE_D = (73), 154 ELC_EVENT_GPT0_COUNTER_OVERFLOW = (74), 155 ELC_EVENT_GPT0_COUNTER_UNDERFLOW = (75), 156 ELC_EVENT_GPT1_CAPTURE_COMPARE_A = (76), 157 ELC_EVENT_GPT1_CAPTURE_COMPARE_B = (77), 158 ELC_EVENT_GPT1_COMPARE_C = (78), 159 ELC_EVENT_GPT1_COMPARE_D = (79), 160 ELC_EVENT_GPT1_COUNTER_OVERFLOW = (80), 161 ELC_EVENT_GPT1_COUNTER_UNDERFLOW = (81), 162 ELC_EVENT_GPT2_CAPTURE_COMPARE_A = (82), 163 ELC_EVENT_GPT2_CAPTURE_COMPARE_B = (83), 164 ELC_EVENT_GPT2_COMPARE_C = (84), 165 ELC_EVENT_GPT2_COMPARE_D = (85), 166 ELC_EVENT_GPT2_COUNTER_OVERFLOW = (86), 167 ELC_EVENT_GPT2_COUNTER_UNDERFLOW = (87), 168 ELC_EVENT_GPT3_CAPTURE_COMPARE_A = (88), 169 ELC_EVENT_GPT3_CAPTURE_COMPARE_B = (89), 170 ELC_EVENT_GPT3_COMPARE_C = (90), 171 ELC_EVENT_GPT3_COMPARE_D = (91), 172 ELC_EVENT_GPT3_COUNTER_OVERFLOW = (92), 173 ELC_EVENT_GPT3_COUNTER_UNDERFLOW = (93), 174 ELC_EVENT_GPT4_CAPTURE_COMPARE_A = (94), 175 ELC_EVENT_GPT4_CAPTURE_COMPARE_B = (95), 176 ELC_EVENT_GPT4_COMPARE_C = (96), 177 ELC_EVENT_GPT4_COMPARE_D = (97), 178 ELC_EVENT_GPT4_COUNTER_OVERFLOW = (98), 179 ELC_EVENT_GPT4_COUNTER_UNDERFLOW = (99), 180 ELC_EVENT_GPT5_CAPTURE_COMPARE_A = (100), 181 ELC_EVENT_GPT5_CAPTURE_COMPARE_B = (101), 182 ELC_EVENT_GPT5_COMPARE_C = (102), 183 ELC_EVENT_GPT5_COMPARE_D = (103), 184 ELC_EVENT_GPT5_COUNTER_OVERFLOW = (104), 185 ELC_EVENT_GPT5_COUNTER_UNDERFLOW = (105), 186 ELC_EVENT_GPT6_CAPTURE_COMPARE_A = (106), 187 ELC_EVENT_GPT6_CAPTURE_COMPARE_B = (107), 188 ELC_EVENT_GPT6_COMPARE_C = (108), 189 ELC_EVENT_GPT6_COMPARE_D = (109), 190 ELC_EVENT_GPT6_COUNTER_OVERFLOW = (110), 191 ELC_EVENT_GPT6_COUNTER_UNDERFLOW = (111), 192 ELC_EVENT_OPS_UVW_EDGE = (112), 193 ELC_EVENT_SCI0_RXI = (113), 194 ELC_EVENT_SCI0_TXI = (114), 195 ELC_EVENT_SCI0_TEI = (115), 196 ELC_EVENT_SCI0_ERI = (116), 197 ELC_EVENT_SCI0_AM = (117), 198 ELC_EVENT_SCI0_RXI_OR_ERI = (118), 199 ELC_EVENT_SCI1_RXI = (119), 200 ELC_EVENT_SCI1_TXI = (120), 201 ELC_EVENT_SCI1_TEI = (121), 202 ELC_EVENT_SCI1_ERI = (122), 203 ELC_EVENT_SCI1_AM = (123), 204 ELC_EVENT_SCI9_RXI = (124), 205 ELC_EVENT_SCI9_TXI = (125), 206 ELC_EVENT_SCI9_TEI = (126), 207 ELC_EVENT_SCI9_ERI = (127), 208 ELC_EVENT_SCI9_AM = (128), 209 ELC_EVENT_SPI0_RXI = (129), 210 ELC_EVENT_SPI0_TXI = (130), 211 ELC_EVENT_SPI0_IDLE = (131), 212 ELC_EVENT_SPI0_ERI = (132), 213 ELC_EVENT_SPI0_TEI = (133), 214 ELC_EVENT_SPI1_RXI = (134), 215 ELC_EVENT_SPI1_TXI = (135), 216 ELC_EVENT_SPI1_IDLE = (136), 217 ELC_EVENT_SPI1_ERI = (137), 218 ELC_EVENT_SPI1_TEI = (138), 219 ELC_EVENT_AES_WRREQ = (139), 220 ELC_EVENT_AES_RDREQ = (140), 221 ELC_EVENT_TRNG_RDREQ = (141), 222 } elc_event_t; 223 224 #endif /* BSP_ELCDEFS_H_ */ 225