AM261x MCU+ SDK  11.00.00
sdl_ecc_bus_safety_soc.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2022-25 Texas Instruments Incorporated
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *
11  * Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the
14  * distribution.
15  *
16  * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  *
32  */
33 
39 #ifndef SDL_MSS_CR5_SOC_H_
40 #define SDL_MSS_CR5_SOC_H_
41 
42 /* ========================================================================== */
43 /* Include Files */
44 /* ========================================================================== */
45 
46 #include <sdl/include/am261x/sdlr_soc_baseaddress.h>
47 #include <sdl/include/am261x/sdlr_mss_ctrl.h>
48 
49 #ifdef _cplusplus
50 extern "C" {
51 #endif
52 
53 /* ========================================================================== */
54 /* Macros & Typedefs */
55 /* ========================================================================== */
56 #define SDL_ECC_BUS_SAFETY_MSS_BUS_CFG (uint32_t)SDL_MSS_CTRL_U_BASE
57 #define DWORD (0x20U)
58 #define SDL_MSS_CTRL_MSS_CR5A0_AHB_BASE (SDL_MSS_CTRL_R5SS0_CORE0_AHB_BASE)
59 #define SDL_MSS_CTRL_MSS_CR5B0_AHB_BASE (SDL_MSS_CTRL_R5SS0_CORE1_AHB_BASE)
60 #define SDL_MSS_CTRL_MSS_CR5A0_AHB_END (SDL_MSS_CTRL_R5SS0_CORE0_AHB_BASE + SDL_MSS_CTRL_R5SS0_CORE0_AHB_SIZE)
61 #define SDL_MSS_CTRL_MSS_CR5B0_AHB_END (SDL_MSS_CTRL_R5SS0_CORE1_AHB_BASE + SDL_MSS_CTRL_R5SS0_CORE1_AHB_SIZE)
62 
63 #define SDL_R5SS0_CORE0_TCMA_U_SIZE (0x000000020U)
64 #define SDL_R5SS0_CORE0_TCMB_U_SIZE (0x000000020U)
65 #define SDL_MSS_CR5A_TCM_U_BASE (SDL_R5SS0_CORE0_TCMA_U_BASE)
66 #define SDL_MSS_CR5B_TCM_U_BASE (SDL_R5SS0_CORE0_TCMB_U_BASE)
67 #define SDL_MSS_CR5A_TCM_U_END (SDL_R5SS0_CORE0_TCMA_U_BASE + SDL_R5SS0_CORE0_TCMA_U_SIZE)
68 #define SDL_MSS_CR5B_TCM_U_END (SDL_R5SS0_CORE0_TCMB_U_BASE + SDL_R5SS0_CORE0_TCMB_U_SIZE)
69 #define SDL_MBOX_SRAM_U_BASE_END (SDL_MBOX_SRAM_U_BASE+0x3FFFU)
70 #define SDL_MMC0_U_BASE_END (SDL_MMC0_U_BASE+0X1FFCU-DWORD)
71 #define SDL_CORE_VBUSP_START (0x50800000U)
72 #define SDL_CORE_VBUSP_START_END (SDL_CORE_VBUSP_START+0X1FFCU)
73 #define SDL_PERI_VBUSP_START (0x50200000U)
74 #define SDL_PERI_VBUSP_START_END (SDL_PERI_VBUSP_START+0X7FFFFCU)
75 #define SDL_MPU_L2OCRAM_BANK0 (0x40020000U)
76 #define SDL_MPU_L2OCRAM_BANK0_END (0x40020FFFU-DWORD)
77 #define SDL_MPU_L2OCRAM_BANK1 (0x40040000U)
78 #define SDL_MPU_L2OCRAM_BANK1_END (0x40040FFFU-DWORD)
79 #define SDL_MPU_L2OCRAM_BANK2 (0x40060000U)
80 #define SDL_MPU_L2OCRAM_BANK2_END (0x40060FFFU-DWORD)
81 #define SDL_MPU_L2OCRAM_BANK3 (0x40080000U)
82 #define SDL_MPU_L2OCRAM_BANK3_END (0x40080FFFU-DWORD)
83 #define SDL_MSS_QSPI_U_BASE (SDL_QSPI0_U_BASE)
84 #define SDL_MSS_QSPI_U_SIZE (0x000001D8U)
85 #define SDL_MSS_QSPI_U_END (SDL_MSS_QSPI_U_BASE + SDL_MSS_QSPI_U_SIZE)
86 #define SDL_MSS_MCRC_U_BASE (SDL_MCRC0_U_BASE)
87 #define SDL_MSS_MCRC_U_SIZE (0x000001E4U)
88 #define SDL_MSS_MCRC_U_END (SDL_MSS_MCRC_U_BASE + SDL_MSS_MCRC_U_SIZE)
89 #define SDL_STIM_U_BASE (0x53500000U)
90 #define SDL_STIM_U_END (0x535001FFU-8U)
91 
92 #define SDL_MSS_CR5A_AXI_RD_START (0x35000000U)
93 #define SDL_MSS_CR5A_AXI_RD_END (0x350003FFU-8U)
94 #define SDL_MSS_CR5A_AXI_WR_START (0x35000000U)
95 #define SDL_MSS_CR5A_AXI_WR_END (0x350003FFU-8U)
96 #define SDL_MSS_CR5A_AXI_S_START (0x0U)
97 #define SDL_MSS_CR5A_AXI_S_END (0x0001FFFFU-8U)
98 
99 #define SDL_MSS_CR5B_AXI_RD_START (0x35000000U)
100 #define SDL_MSS_CR5B_AXI_RD_END (0x350003FFU-8U)
101 #define SDL_MSS_CR5B_AXI_WR_START (0x35000000U)
102 #define SDL_MSS_CR5B_AXI_WR_END (0x350003FFU-8U)
103 #define SDL_MSS_CR5B_AXI_S_START (0x0U)
104 #define SDL_MSS_CR5B_AXI_S_END (0x0001FFFFU-8U)
105 
106 #define SDL_MSS_CR5C_AXI_RD_START (0x35000000U)
107 #define SDL_MSS_CR5C_AXI_RD_END (0x350003FFU-8U)
108 #define SDL_MSS_CR5C_AXI_WR_START (0x35000000U)
109 #define SDL_MSS_CR5C_AXI_WR_END (0x350003FFU-8U)
110 #define SDL_MSS_CR5C_AXI_S_START (0x0U)
111 #define SDL_MSS_CR5C_AXI_S_END (0x0001FFFFU-8U)
112 
113 #define SDL_MSS_CR5D_AXI_RD_START (0x35000000U)
114 #define SDL_MSS_CR5D_AXI_RD_END (0x350003FFU-8U)
115 #define SDL_MSS_CR5D_AXI_WR_START (0x35000000U)
116 #define SDL_MSS_CR5D_AXI_WR_END (0x350003FFU-8U)
117 #define SDL_MSS_CR5D_AXI_S_START (0x0U)
118 #define SDL_MSS_CR5D_AXI_S_END (0x0001FFFFU-8U)
119 
120 #define SDL_MSS_CTRL_TPCC_A0_WR_BASE (0x52A40000U)
121 #define SDL_MSS_CTRL_TPCC_A0_WR_END (0x52A40400U-8U)
122 
123 #define SDL_MSS_CTRL_TPCC_A1_WR_BASE (0x52A60000U)
124 #define SDL_MSS_CTRL_TPCC_A1_WR_END (0x52A60400U-8U)
125 
126 #define SDL_MSS_CTRL_TPCC_A0_RD_BASE (0x52A40000U)
127 #define SDL_MSS_CTRL_TPCC_A0_RD_END (0x52A40400U-8U)
128 
129 #define SDL_MSS_CTRL_TPCC_A1_RD_BASE (0x52A60000U)
130 #define SDL_MSS_CTRL_TPCC_A1_RD_END (0x52A60400U-8U)
131 
132 #define SDL_MSS_VBUSP_BASE (0x35000000U)
133 #define SDL_MSS_VBUSP_BASE_END (0x350003FFU-8U)
134 
135 #define SDL_MSS_VBUSP_PERI_BASE (0x35000000U)
136 #define SDL_MSS_VBUSP_PERI_BASE_END (0x350003FFU-8U)
137 
138 #define SDL_MSS_CPSW_BASE (0x52800000U)
139 #define SDL_MSS_CPSW_BASE_END (0x52800400U-8U)
140 
141 #define SDL_QSPI_U_BASE (0x48200000U)
142 #define SDL_QSPI_U_BASE_END (0x482001FFU-8U)
143 
144 #define SDL_MCRC_U_BASE (0x35000000U)
145 #define SDL_MCRC_U_BASE_END (0x350003FFU-8U)
146 
147 #define SDL_SCRP0_U_BASE (0x48000000U)
148 #define SDL_SCRP0_U_BASE_END (0x4803FFFFU-8U)
149 
150 #define SDL_SCRP1_U_BASE (0x48000000U)
151 #define SDL_SCRP1_U_BASE_END (0x4803FFFFU-8U)
152 
153 #define SDL_ICSSM0_PDSP0_U_BASE (SDL_ICSSM0_INTERNAL_U_BASE)
154 #define SDL_ICSSM0_PDSP0_U_SIZE (0x000000FFU)
155 #define SDL_ICSSM0_PDSP0_U_BASE_END (0x48038000U-8U)
156 
157 #define SDL_ICSSM0_PDSP1_U_BASE (SDL_ICSSM0_INTERNAL_U_BASE)
158 #define SDL_ICSSM0_PDSP1_U_SIZE (0x000000FFU)
159 #define SDL_ICSSM0_PDSP1_U_BASE_END (0x48038000U-8U)
160 
161 #define SDL_ICSSM0_S_BASE (SDL_ICSSM0_INTERNAL_U_BASE)
162 #define SDL_ICSSM0_S_SIZE (0x000000FFU)
163 #define SDL_ICSSM0_S_BASE_END (0x48038000U-8U)
164 
165 #define SDL_ICSSM1_PDSP0_U_BASE (SDL_ICSS_M_ICSSM_1_PR1_PDSP0_IRAM_U_BASE)
166 #define SDL_ICSSM1_PDSP0_U_SIZE (0x000000FFU)
167 #define SDL_ICSSM1_PDSP0_U_BASE_END (SDL_ICSS_M_ICSSM_1_PR1_PDSP0_IRAM_U_BASE+SDL_ICSSM1_PDSP0_U_SIZE)
168 
169 #define SDL_ICSSM1_PDSP1_U_BASE (SDL_ICSS_M_ICSSM_1_PR1_PDSP1_IRAM_U_BASE)
170 #define SDL_ICSSM1_PDSP1_U_SIZE (0x000000FFU)
171 #define SDL_ICSSM1_PDSP1_U_BASE_END (SDL_ICSS_M_ICSSM_1_PR1_PDSP1_IRAM_U_BASE+SDL_ICSSM1_PDSP1_U_SIZE)
172 
173 #define SDL_ICSSM1_S_BASE (SDL_ICSS_M_ICSSM_1_PR1_CFG_SLV_U_BASE)
174 #define SDL_ICSSM1_S_SIZE (0x000000FFU)
175 #define SDL_ICSSM1_S_BASE_END (SDL_ICSS_M_ICSSM_1_PR1_CFG_SLV_U_BASE+SDL_ICSSM1_S_SIZE)
176 
177 #define SDL_DAP_U_BASE (0x48000000U)
178 #define SDL_DAP_U_BASE_END (0x4803FFFFU-8U)
179 
180 #define SDL_GPMC0_CFG_U_BASE_END (SDL_GPMC0_CFG_U_BASE+0X3FCU-DWORD)
181 
182 #define SDL_OSPI0_U_BASE SDL_FLASH_CONFIG_REG6_U_BASE
183 #define SDL_OSPI0_U_BASE_END (SDL_FLASH_CONFIG_REG6_U_BASE+0x00001FFU)
184 
185 #define SDL_USB_RD_U_BASE (SDL_USB_RAM0_U_BASE)
186 #define SDL_USB_RD_U_BASE_END (SDL_USB_RAM0_U_BASE + 0x00007FFCU)
187 
188 #define SDL_USB_WR_U_BASE (SDL_USB_RAM0_U_BASE)
189 #define SDL_USB_WR_U_BASE_END (SDL_USB_RAM0_U_BASE + 0x00007FFCU)
190 
191 /* Macro defines Ecc Bus Safety Nodes in the MSS Subsystem */
192 
193 #define SDL_ECC_BUS_SAFETY_MSS_MBOX 0U
194 #define SDL_ECC_BUS_SAFETY_MSS_TPTC_A0_RD 1U
195 #define SDL_ECC_BUS_SAFETY_MSS_TPTC_A1_RD 2U
196 #define SDL_ECC_BUS_SAFETY_MSS_CR5A_AXI_RD 3U
197 #define SDL_ECC_BUS_SAFETY_MSS_CR5B_AXI_RD 4U
198 #define SDL_ECC_BUS_SAFETY_MSS_CR5A_AXI_S 5U
199 #define SDL_ECC_BUS_SAFETY_MSS_CR5B_AXI_S 6U
200 #define SDL_ECC_BUS_SAFETY_MSS_TPTC_A0_WR 7U
201 #define SDL_ECC_BUS_SAFETY_MSS_TPTC_A1_WR 8U
202 #define SDL_ECC_BUS_SAFETY_MSS_CR5A_AHB 9U
203 #define SDL_ECC_BUS_SAFETY_MSS_CR5B_AHB 10U
204 #define SDL_ECC_BUS_SAFETY_MSS_CR5A_AXI_WR 11U
205 #define SDL_ECC_BUS_SAFETY_MSS_CR5B_AXI_WR 12U
206 #define SDL_ECC_BUS_SAFETY_MSS_MAIN_VBUSP 13U
207 #define SDL_ECC_BUS_SAFETY_MSS_PERI_VBUSP 14U
208 #define SDL_ECC_BUS_SAFETY_MSS_OSPI 15U
209 #define SDL_ECC_BUS_SAFETY_MSS_CPSW 16U
210 #define SDL_ECC_BUS_SAFETY_MSS_MCRC 17U
211 #define SDL_ECC_BUS_SAFETY_MSS_L2_A 18U
212 #define SDL_ECC_BUS_SAFETY_MSS_L2_B 19U
213 #define SDL_ECC_BUS_SAFETY_MSS_L2_C 20U
214 #define SDL_ECC_BUS_SAFETY_DAP 21U
215 #define SDL_ECC_BUS_SAFETY_MSS_MMC 22U
216 #define SDL_ECC_BUS_SAFETY_MSS_SCRP0 23U
217 #define SDL_ECC_BUS_SAFETY_MSS_SCRP1 24U
218 #define SDL_ECC_BUS_SAFETY_MSS_ICSSM0_PDSP0 25U
219 #define SDL_ECC_BUS_SAFETY_MSS_ICSSM0_PDSP1 26U
220 #define SDL_ECC_BUS_SAFETY_MSS_ICSSM0_S 27U
221 #define SDL_ECC_BUS_SAFETY_MSS_ICSSM1_PDSP0 28U
222 #define SDL_ECC_BUS_SAFETY_MSS_ICSSM1_PDSP1 29U
223 #define SDL_ECC_BUS_SAFETY_MSS_ICSSM1_S 30U
224 #define SDL_ECC_BUS_SAFETY_MSS_USBSS_RD 31U
225 #define SDL_ECC_BUS_SAFETY_MSS_USBSS_WR 32U
226 #define SDL_ECC_BUS_SAFETY_MSS_GPMC 33U
227 #define SDL_ECC_BUS_SAFETY_MSS_STM_STIM 34U
228 
229 #ifdef _cplusplus
230 }
231 
232 #endif /*extern "C" */
233 
234 #endif
235