xref: /linux/drivers/accel/habanalabs/include/gaudi/asic_reg/gaudi_regs.h (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1 /* SPDX-License-Identifier: GPL-2.0
2  *
3  * Copyright 2016-2020 HabanaLabs, Ltd.
4  * All Rights Reserved.
5  *
6  */
7 
8 #ifndef ASIC_REG_GAUDI_REGS_H_
9 #define ASIC_REG_GAUDI_REGS_H_
10 
11 #include "gaudi_blocks.h"
12 #include "psoc_global_conf_regs.h"
13 #include "psoc_timestamp_regs.h"
14 #include "cpu_if_regs.h"
15 #include "mmu_up_regs.h"
16 #include "stlb_regs.h"
17 #include "dma0_qm_regs.h"
18 #include "dma1_qm_regs.h"
19 #include "dma2_qm_regs.h"
20 #include "dma3_qm_regs.h"
21 #include "dma4_qm_regs.h"
22 #include "dma5_qm_regs.h"
23 #include "dma6_qm_regs.h"
24 #include "dma7_qm_regs.h"
25 #include "dma0_core_regs.h"
26 #include "dma1_core_regs.h"
27 #include "dma2_core_regs.h"
28 #include "dma3_core_regs.h"
29 #include "dma4_core_regs.h"
30 #include "dma5_core_regs.h"
31 #include "dma6_core_regs.h"
32 #include "dma7_core_regs.h"
33 #include "mme0_ctrl_regs.h"
34 #include "mme1_ctrl_regs.h"
35 #include "mme2_ctrl_regs.h"
36 #include "mme3_ctrl_regs.h"
37 #include "mme0_qm_regs.h"
38 #include "mme2_qm_regs.h"
39 #include "tpc0_cfg_regs.h"
40 #include "tpc1_cfg_regs.h"
41 #include "tpc2_cfg_regs.h"
42 #include "tpc3_cfg_regs.h"
43 #include "tpc4_cfg_regs.h"
44 #include "tpc5_cfg_regs.h"
45 #include "tpc6_cfg_regs.h"
46 #include "tpc7_cfg_regs.h"
47 #include "tpc0_qm_regs.h"
48 #include "tpc1_qm_regs.h"
49 #include "tpc2_qm_regs.h"
50 #include "tpc3_qm_regs.h"
51 #include "tpc4_qm_regs.h"
52 #include "tpc5_qm_regs.h"
53 #include "tpc6_qm_regs.h"
54 #include "tpc7_qm_regs.h"
55 #include "dma_if_e_n_down_ch0_regs.h"
56 #include "dma_if_e_n_down_ch1_regs.h"
57 #include "dma_if_e_s_down_ch0_regs.h"
58 #include "dma_if_e_s_down_ch1_regs.h"
59 #include "dma_if_w_n_down_ch0_regs.h"
60 #include "dma_if_w_n_down_ch1_regs.h"
61 #include "dma_if_w_s_down_ch0_regs.h"
62 #include "dma_if_w_s_down_ch1_regs.h"
63 #include "dma_if_e_n_regs.h"
64 #include "dma_if_e_s_regs.h"
65 #include "dma_if_w_n_regs.h"
66 #include "dma_if_w_s_regs.h"
67 #include "nif_rtr_ctrl_0_regs.h"
68 #include "nif_rtr_ctrl_1_regs.h"
69 #include "nif_rtr_ctrl_2_regs.h"
70 #include "nif_rtr_ctrl_3_regs.h"
71 #include "nif_rtr_ctrl_4_regs.h"
72 #include "nif_rtr_ctrl_5_regs.h"
73 #include "nif_rtr_ctrl_6_regs.h"
74 #include "nif_rtr_ctrl_7_regs.h"
75 #include "sif_rtr_ctrl_0_regs.h"
76 #include "sif_rtr_ctrl_1_regs.h"
77 #include "sif_rtr_ctrl_2_regs.h"
78 #include "sif_rtr_ctrl_3_regs.h"
79 #include "sif_rtr_ctrl_4_regs.h"
80 #include "sif_rtr_ctrl_5_regs.h"
81 #include "sif_rtr_ctrl_6_regs.h"
82 #include "sif_rtr_ctrl_7_regs.h"
83 #include "psoc_etr_regs.h"
84 #include "psoc_cpu_pll_regs.h"
85 
86 #include "dma0_qm_masks.h"
87 #include "mme0_qm_masks.h"
88 #include "tpc0_qm_masks.h"
89 #include "dma0_core_masks.h"
90 #include "tpc0_cfg_masks.h"
91 #include "psoc_global_conf_masks.h"
92 
93 #include "nic0_qm0_regs.h"
94 #include "nic1_qm0_regs.h"
95 #include "nic2_qm0_regs.h"
96 #include "nic3_qm0_regs.h"
97 #include "nic4_qm0_regs.h"
98 #include "nic0_qm1_regs.h"
99 #include "nic1_qm1_regs.h"
100 #include "nic2_qm1_regs.h"
101 #include "nic3_qm1_regs.h"
102 #include "nic4_qm1_regs.h"
103 
104 #include "nic0_qm0_masks.h"
105 
106 #define GAUDI_ECC_MEM_SEL_OFFSET		0xF18
107 #define GAUDI_ECC_ADDRESS_OFFSET		0xF1C
108 #define GAUDI_ECC_SYNDROME_OFFSET		0xF20
109 #define GAUDI_ECC_MEM_INFO_CLR_OFFSET		0xF28
110 #define GAUDI_ECC_MEM_INFO_CLR_SERR_MASK	BIT(8)
111 #define GAUDI_ECC_MEM_INFO_CLR_DERR_MASK	BIT(9)
112 #define GAUDI_ECC_SERR0_OFFSET			0xF30
113 #define GAUDI_ECC_DERR0_OFFSET			0xF40
114 
115 #define mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_SOB_OBJ_0                     0x492000
116 #define mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_MON_PAY_ADDRL_0               0x494000
117 #define mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_MON_PAY_ADDRH_0               0x494800
118 #define mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_MON_PAY_DATA_0                0x495000
119 #define mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_MON_ARM_0                     0x495800
120 #define mmSYNC_MNGR_W_S_SYNC_MNGR_OBJS_MON_STATUS_0                  0x496000
121 #define mmSYNC_MNGR_E_S_SYNC_MNGR_OBJS_SOB_OBJ_0                     0x4B2000
122 #define mmSYNC_MNGR_E_S_SYNC_MNGR_OBJS_MON_STATUS_0                  0x4B6000
123 #define mmSYNC_MNGR_W_N_SYNC_MNGR_OBJS_SOB_OBJ_0                     0x4D2000
124 #define mmSYNC_MNGR_W_N_SYNC_MNGR_OBJS_MON_STATUS_0                  0x4D6000
125 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_SOB_OBJ_0                     0x4F2000
126 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_SOB_OBJ_1                     0x4F2004
127 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_SOB_OBJ_2047                  0x4F3FFC
128 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_MON_PAY_ADDRL_0               0x4F4000
129 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_MON_PAY_ADDRH_0               0x4F4800
130 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_MON_PAY_DATA_0                0x4F5000
131 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_MON_ARM_0                     0x4F5800
132 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_MON_STATUS_0                  0x4F6000
133 #define mmSYNC_MNGR_E_N_SYNC_MNGR_OBJS_MON_STATUS_511                0x4F67FC
134 
135 #define mmSIF_RTR_0_LBW_RANGE_PROT_HIT_AW                            0x300400
136 #define mmSIF_RTR_1_LBW_RANGE_PROT_HIT_AW                            0x310400
137 #define mmSIF_RTR_2_LBW_RANGE_PROT_HIT_AW                            0x320400
138 #define mmSIF_RTR_3_LBW_RANGE_PROT_HIT_AW                            0x330400
139 #define mmSIF_RTR_4_LBW_RANGE_PROT_HIT_AW                            0x340400
140 #define mmSIF_RTR_5_LBW_RANGE_PROT_HIT_AW                            0x350400
141 #define mmSIF_RTR_6_LBW_RANGE_PROT_HIT_AW                            0x360400
142 #define mmSIF_RTR_7_LBW_RANGE_PROT_HIT_AW                            0x370400
143 
144 #define mmSIF_RTR_0_LBW_RANGE_PROT_HIT_AR                            0x300490
145 #define mmSIF_RTR_1_LBW_RANGE_PROT_HIT_AR                            0x310490
146 #define mmSIF_RTR_2_LBW_RANGE_PROT_HIT_AR                            0x320490
147 #define mmSIF_RTR_3_LBW_RANGE_PROT_HIT_AR                            0x330490
148 #define mmSIF_RTR_4_LBW_RANGE_PROT_HIT_AR                            0x340490
149 #define mmSIF_RTR_5_LBW_RANGE_PROT_HIT_AR                            0x350490
150 #define mmSIF_RTR_6_LBW_RANGE_PROT_HIT_AR                            0x360490
151 #define mmSIF_RTR_7_LBW_RANGE_PROT_HIT_AR                            0x370490
152 
153 #define mmSIF_RTR_0_LBW_RANGE_PROT_MIN_AW_0                          0x300410
154 #define mmSIF_RTR_1_LBW_RANGE_PROT_MIN_AW_0                          0x310410
155 #define mmSIF_RTR_2_LBW_RANGE_PROT_MIN_AW_0                          0x320410
156 #define mmSIF_RTR_3_LBW_RANGE_PROT_MIN_AW_0                          0x330410
157 #define mmSIF_RTR_4_LBW_RANGE_PROT_MIN_AW_0                          0x340410
158 #define mmSIF_RTR_5_LBW_RANGE_PROT_MIN_AW_0                          0x350410
159 #define mmSIF_RTR_6_LBW_RANGE_PROT_MIN_AW_0                          0x360410
160 #define mmSIF_RTR_7_LBW_RANGE_PROT_MIN_AW_0                          0x370410
161 
162 #define mmSIF_RTR_0_LBW_RANGE_PROT_MAX_AW_0                          0x300450
163 #define mmSIF_RTR_1_LBW_RANGE_PROT_MAX_AW_0                          0x310450
164 #define mmSIF_RTR_2_LBW_RANGE_PROT_MAX_AW_0                          0x320450
165 #define mmSIF_RTR_3_LBW_RANGE_PROT_MAX_AW_0                          0x330450
166 #define mmSIF_RTR_4_LBW_RANGE_PROT_MAX_AW_0                          0x340450
167 #define mmSIF_RTR_5_LBW_RANGE_PROT_MAX_AW_0                          0x350450
168 #define mmSIF_RTR_6_LBW_RANGE_PROT_MAX_AW_0                          0x360450
169 #define mmSIF_RTR_7_LBW_RANGE_PROT_MAX_AW_0                          0x370450
170 
171 #define mmSIF_RTR_0_LBW_RANGE_PROT_MIN_AR_0                          0x3004A0
172 #define mmSIF_RTR_1_LBW_RANGE_PROT_MIN_AR_0                          0x3104A0
173 #define mmSIF_RTR_2_LBW_RANGE_PROT_MIN_AR_0                          0x3204A0
174 #define mmSIF_RTR_3_LBW_RANGE_PROT_MIN_AR_0                          0x3304A0
175 #define mmSIF_RTR_4_LBW_RANGE_PROT_MIN_AR_0                          0x3404A0
176 #define mmSIF_RTR_5_LBW_RANGE_PROT_MIN_AR_0                          0x3504A0
177 #define mmSIF_RTR_6_LBW_RANGE_PROT_MIN_AR_0                          0x3604A0
178 #define mmSIF_RTR_7_LBW_RANGE_PROT_MIN_AR_0                          0x3704A0
179 
180 #define mmSIF_RTR_0_LBW_RANGE_PROT_MAX_AR_0                          0x3004E0
181 #define mmSIF_RTR_1_LBW_RANGE_PROT_MAX_AR_0                          0x3104E0
182 #define mmSIF_RTR_2_LBW_RANGE_PROT_MAX_AR_0                          0x3204E0
183 #define mmSIF_RTR_3_LBW_RANGE_PROT_MAX_AR_0                          0x3304E0
184 #define mmSIF_RTR_4_LBW_RANGE_PROT_MAX_AR_0                          0x3404E0
185 #define mmSIF_RTR_5_LBW_RANGE_PROT_MAX_AR_0                          0x3504E0
186 #define mmSIF_RTR_6_LBW_RANGE_PROT_MAX_AR_0                          0x3604E0
187 #define mmSIF_RTR_7_LBW_RANGE_PROT_MAX_AR_0                          0x3704E0
188 
189 #define mmNIF_RTR_0_LBW_RANGE_PROT_HIT_AW                            0x380400
190 #define mmNIF_RTR_1_LBW_RANGE_PROT_HIT_AW                            0x390400
191 #define mmNIF_RTR_2_LBW_RANGE_PROT_HIT_AW                            0x3A0400
192 #define mmNIF_RTR_3_LBW_RANGE_PROT_HIT_AW                            0x3B0400
193 #define mmNIF_RTR_4_LBW_RANGE_PROT_HIT_AW                            0x3C0400
194 #define mmNIF_RTR_5_LBW_RANGE_PROT_HIT_AW                            0x3D0400
195 #define mmNIF_RTR_6_LBW_RANGE_PROT_HIT_AW                            0x3E0400
196 #define mmNIF_RTR_7_LBW_RANGE_PROT_HIT_AW                            0x3F0400
197 
198 #define mmNIF_RTR_0_LBW_RANGE_PROT_HIT_AR                            0x380490
199 #define mmNIF_RTR_1_LBW_RANGE_PROT_HIT_AR                            0x390490
200 #define mmNIF_RTR_2_LBW_RANGE_PROT_HIT_AR                            0x3A0490
201 #define mmNIF_RTR_3_LBW_RANGE_PROT_HIT_AR                            0x3B0490
202 #define mmNIF_RTR_4_LBW_RANGE_PROT_HIT_AR                            0x3C0490
203 #define mmNIF_RTR_5_LBW_RANGE_PROT_HIT_AR                            0x3D0490
204 #define mmNIF_RTR_6_LBW_RANGE_PROT_HIT_AR                            0x3E0490
205 #define mmNIF_RTR_7_LBW_RANGE_PROT_HIT_AR                            0x3F0490
206 
207 #define mmNIF_RTR_0_LBW_RANGE_PROT_MIN_AW_0                          0x380410
208 #define mmNIF_RTR_1_LBW_RANGE_PROT_MIN_AW_0                          0x390410
209 #define mmNIF_RTR_2_LBW_RANGE_PROT_MIN_AW_0                          0x3A0410
210 #define mmNIF_RTR_3_LBW_RANGE_PROT_MIN_AW_0                          0x3B0410
211 #define mmNIF_RTR_4_LBW_RANGE_PROT_MIN_AW_0                          0x3C0410
212 #define mmNIF_RTR_5_LBW_RANGE_PROT_MIN_AW_0                          0x3D0410
213 #define mmNIF_RTR_6_LBW_RANGE_PROT_MIN_AW_0                          0x3E0410
214 #define mmNIF_RTR_7_LBW_RANGE_PROT_MIN_AW_0                          0x3F0410
215 
216 #define mmNIF_RTR_0_LBW_RANGE_PROT_MAX_AW_0                          0x380450
217 #define mmNIF_RTR_1_LBW_RANGE_PROT_MAX_AW_0                          0x390450
218 #define mmNIF_RTR_2_LBW_RANGE_PROT_MAX_AW_0                          0x3A0450
219 #define mmNIF_RTR_3_LBW_RANGE_PROT_MAX_AW_0                          0x3B0450
220 #define mmNIF_RTR_4_LBW_RANGE_PROT_MAX_AW_0                          0x3C0450
221 #define mmNIF_RTR_5_LBW_RANGE_PROT_MAX_AW_0                          0x3D0450
222 #define mmNIF_RTR_6_LBW_RANGE_PROT_MAX_AW_0                          0x3E0450
223 #define mmNIF_RTR_7_LBW_RANGE_PROT_MAX_AW_0                          0x3F0450
224 
225 #define mmNIF_RTR_0_LBW_RANGE_PROT_MIN_AR_0                          0x3804A0
226 #define mmNIF_RTR_1_LBW_RANGE_PROT_MIN_AR_0                          0x3904A0
227 #define mmNIF_RTR_2_LBW_RANGE_PROT_MIN_AR_0                          0x3A04A0
228 #define mmNIF_RTR_3_LBW_RANGE_PROT_MIN_AR_0                          0x3B04A0
229 #define mmNIF_RTR_4_LBW_RANGE_PROT_MIN_AR_0                          0x3C04A0
230 #define mmNIF_RTR_5_LBW_RANGE_PROT_MIN_AR_0                          0x3D04A0
231 #define mmNIF_RTR_6_LBW_RANGE_PROT_MIN_AR_0                          0x3E04A0
232 #define mmNIF_RTR_7_LBW_RANGE_PROT_MIN_AR_0                          0x3F04A0
233 
234 #define mmNIF_RTR_0_LBW_RANGE_PROT_MAX_AR_0                          0x3804E0
235 #define mmNIF_RTR_1_LBW_RANGE_PROT_MAX_AR_0                          0x3904E0
236 #define mmNIF_RTR_2_LBW_RANGE_PROT_MAX_AR_0                          0x3A04E0
237 #define mmNIF_RTR_3_LBW_RANGE_PROT_MAX_AR_0                          0x3B04E0
238 #define mmNIF_RTR_4_LBW_RANGE_PROT_MAX_AR_0                          0x3C04E0
239 #define mmNIF_RTR_5_LBW_RANGE_PROT_MAX_AR_0                          0x3D04E0
240 #define mmNIF_RTR_6_LBW_RANGE_PROT_MAX_AR_0                          0x3E04E0
241 #define mmNIF_RTR_7_LBW_RANGE_PROT_MAX_AR_0                          0x3F04E0
242 
243 #define mmDMA_IF_W_S_DOWN_RSP_MID_WGHT_0                             0x489030
244 #define mmDMA_IF_W_S_DOWN_RSP_MID_WGHT_1                             0x489034
245 
246 #define mmDMA_IF_E_S_DOWN_RSP_MID_WGHT_0                             0x4A9030
247 #define mmDMA_IF_E_S_DOWN_RSP_MID_WGHT_1                             0x4A9034
248 
249 #define mmDMA_IF_W_N_DOWN_RSP_MID_WGHT_0                             0x4C9030
250 #define mmDMA_IF_W_N_DOWN_RSP_MID_WGHT_1                             0x4C9034
251 
252 #define mmDMA_IF_E_N_DOWN_RSP_MID_WGHT_0                             0x4E9030
253 #define mmDMA_IF_E_N_DOWN_RSP_MID_WGHT_1                             0x4E9034
254 
255 #define mmMME1_QM_GLBL_CFG0                                          0xE8000
256 #define mmMME1_QM_GLBL_STS0                                          0xE8038
257 
258 #define mmMME0_SBAB_SB_STALL                                         0x4002C
259 #define mmMME0_SBAB_ARUSER0                                          0x40034
260 #define mmMME0_SBAB_ARUSER1                                          0x40038
261 #define mmMME0_SBAB_PROT                                             0x40050
262 
263 #define mmMME1_SBAB_SB_STALL                                         0xC002C
264 #define mmMME1_SBAB_ARUSER0                                          0xC0034
265 #define mmMME1_SBAB_ARUSER1                                          0xC0038
266 #define mmMME1_SBAB_PROT                                             0xC0050
267 
268 #define mmMME2_SBAB_SB_STALL                                         0x14002C
269 #define mmMME2_SBAB_ARUSER0                                          0x140034
270 #define mmMME2_SBAB_ARUSER1                                          0x140038
271 #define mmMME2_SBAB_PROT                                             0x140050
272 
273 #define mmMME3_SBAB_SB_STALL                                         0x1C002C
274 #define mmMME3_SBAB_ARUSER0                                          0x1C0034
275 #define mmMME3_SBAB_ARUSER1                                          0x1C0038
276 #define mmMME3_SBAB_PROT                                             0x1C0050
277 
278 #define mmMME0_ACC_ACC_STALL                                         0x20028
279 #define mmMME0_ACC_WBC                                               0x20038
280 #define mmMME0_ACC_PROT                                              0x20050
281 
282 #define mmMME1_ACC_ACC_STALL                                         0xA0028
283 #define mmMME1_ACC_WBC                                               0xA0038
284 #define mmMME1_ACC_PROT                                              0xA0050
285 
286 #define mmMME2_ACC_ACC_STALL                                         0x120028
287 #define mmMME2_ACC_WBC                                               0x120038
288 #define mmMME2_ACC_PROT                                              0x120050
289 
290 #define mmMME3_ACC_ACC_STALL                                         0x1A0028
291 #define mmMME3_ACC_WBC                                               0x1A0038
292 #define mmMME3_ACC_PROT                                              0x1A0050
293 
294 #define mmGIC_DISTRIBUTOR__5_GICD_SETSPI_NSR                         0x800040
295 
296 #define mmPSOC_EFUSE_READ                                            0xC4A000
297 #define mmPSOC_EFUSE_DATA_0                                          0xC4A080
298 
299 #define mmPCIE_WRAP_MAX_OUTSTAND                                     0xC01B20
300 #define mmPCIE_WRAP_LBW_PROT_OVR                                     0xC01B48
301 #define mmPCIE_WRAP_HBW_DRAIN_CFG                                    0xC01D54
302 #define mmPCIE_WRAP_LBW_DRAIN_CFG                                    0xC01D5C
303 
304 #define mmPCIE_MSI_INTR_0                                            0xC13000
305 
306 #define mmPCIE_DBI_DEVICE_ID_VENDOR_ID_REG                           0xC02000
307 
308 #define mmPCIE_AUX_FLR_CTRL                                          0xC07394
309 #define mmPCIE_AUX_DBI                                               0xC07490
310 
311 #define mmPCIE_CORE_MSI_REQ                                          0xC04100
312 
313 #define mmPSOC_PCI_PLL_NR                                            0xC72100
314 #define mmSRAM_W_PLL_NR                                              0x4C8100
315 #define mmPSOC_HBM_PLL_NR                                            0xC74100
316 #define mmNIC0_PLL_NR                                                0xCF9100
317 #define mmDMA_W_PLL_NR                                               0x487100
318 #define mmMESH_W_PLL_NR                                              0x4C7100
319 #define mmPSOC_MME_PLL_NR                                            0xC71100
320 #define mmPSOC_TPC_PLL_NR                                            0xC73100
321 #define mmIF_W_PLL_NR                                                0x488100
322 
323 #define mmPCIE_WRAP_RR_ELBI_RD_SEC_REG_CTRL                          0xC01208
324 
325 #endif /* ASIC_REG_GAUDI_REGS_H_ */
326