blob: 6ade01cd1269f7af68f1aef3e43b7351162698e2 [file] [log] [blame]
Anson Huangb6294132018-06-05 16:05:59 +08001/*
2 * Copyright (c) 2015-2018, ARM Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7/*!
8 * Header file containing types used across multiple service APIs.
9 */
10
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +000011#ifndef SCI_TYPES_H
12#define SCI_TYPES_H
Anson Huangb6294132018-06-05 16:05:59 +080013
14/* Includes */
15
16#include <sci/sci_scfw.h>
17
18/* Defines */
19
20/*!
21 * @name Defines for common frequencies
22 */
23/*@{*/
24#define SC_32KHZ 32768U /* 32KHz */
25#define SC_10MHZ 10000000U /* 10MHz */
26#define SC_20MHZ 20000000U /* 20MHz */
27#define SC_25MHZ 25000000U /* 25MHz */
28#define SC_27MHZ 27000000U /* 27MHz */
29#define SC_40MHZ 40000000U /* 40MHz */
30#define SC_45MHZ 45000000U /* 45MHz */
31#define SC_50MHZ 50000000U /* 50MHz */
32#define SC_60MHZ 60000000U /* 60MHz */
33#define SC_66MHZ 66666666U /* 66MHz */
34#define SC_74MHZ 74250000U /* 74.25MHz */
35#define SC_80MHZ 80000000U /* 80MHz */
36#define SC_83MHZ 83333333U /* 83MHz */
37#define SC_84MHZ 84375000U /* 84.37MHz */
38#define SC_100MHZ 100000000U /* 100MHz */
39#define SC_125MHZ 125000000U /* 125MHz */
40#define SC_133MHZ 133333333U /* 133MHz */
41#define SC_135MHZ 135000000U /* 135MHz */
42#define SC_150MHZ 150000000U /* 150MHz */
43#define SC_160MHZ 160000000U /* 160MHz */
44#define SC_166MHZ 166666666U /* 166MHz */
45#define SC_175MHZ 175000000U /* 175MHz */
46#define SC_180MHZ 180000000U /* 180MHz */
47#define SC_200MHZ 200000000U /* 200MHz */
48#define SC_250MHZ 250000000U /* 250MHz */
49#define SC_266MHZ 266666666U /* 266MHz */
50#define SC_300MHZ 300000000U /* 300MHz */
51#define SC_312MHZ 312500000U /* 312.5MHZ */
52#define SC_320MHZ 320000000U /* 320MHz */
53#define SC_325MHZ 325000000U /* 325MHz */
54#define SC_333MHZ 333333333U /* 333MHz */
55#define SC_350MHZ 350000000U /* 350MHz */
56#define SC_372MHZ 372000000U /* 372MHz */
57#define SC_375MHZ 375000000U /* 375MHz */
58#define SC_400MHZ 400000000U /* 400MHz */
59#define SC_500MHZ 500000000U /* 500MHz */
60#define SC_594MHZ 594000000U /* 594MHz */
61#define SC_625MHZ 625000000U /* 625MHz */
62#define SC_640MHZ 640000000U /* 640MHz */
63#define SC_650MHZ 650000000U /* 650MHz */
64#define SC_667MHZ 666666667U /* 667MHz */
65#define SC_675MHZ 675000000U /* 675MHz */
66#define SC_700MHZ 700000000U /* 700MHz */
67#define SC_720MHZ 720000000U /* 720MHz */
68#define SC_750MHZ 750000000U /* 750MHz */
69#define SC_800MHZ 800000000U /* 800MHz */
70#define SC_850MHZ 850000000U /* 850MHz */
71#define SC_900MHZ 900000000U /* 900MHz */
72#define SC_1000MHZ 1000000000U /* 1GHz */
73#define SC_1056MHZ 1056000000U /* 1.056GHz */
74#define SC_1188MHZ 1188000000U /* 1.188GHz */
75#define SC_1260MHZ 1260000000U /* 1.26GHz */
76#define SC_1280MHZ 1280000000U /* 1.28GHz */
77#define SC_1300MHZ 1300000000U /* 1.3GHz */
78#define SC_1400MHZ 1400000000U /* 1.4GHz */
79#define SC_1500MHZ 1500000000U /* 1.5GHz */
80#define SC_1600MHZ 1600000000U /* 1.6GHz */
81#define SC_1800MHZ 1800000000U /* 1.8GHz */
82#define SC_2000MHZ 2000000000U /* 2.0GHz */
83#define SC_2112MHZ 2112000000U /* 2.12GHz */
84/*@}*/
85
86/*!
87 * @name Defines for 24M related frequencies
88 */
89/*@{*/
90#define SC_8MHZ 8000000U /* 8MHz */
91#define SC_12MHZ 12000000U /* 12MHz */
92#define SC_19MHZ 19800000U /* 19.8MHz */
93#define SC_24MHZ 24000000U /* 24MHz */
94#define SC_48MHZ 48000000U /* 48MHz */
95#define SC_120MHZ 120000000U /* 120MHz */
96#define SC_132MHZ 132000000U /* 132MHz */
97#define SC_144MHZ 144000000U /* 144MHz */
98#define SC_192MHZ 192000000U /* 192MHz */
99#define SC_211MHZ 211200000U /* 211.2MHz */
100#define SC_240MHZ 240000000U /* 240MHz */
101#define SC_264MHZ 264000000U /* 264MHz */
102#define SC_352MHZ 352000000U /* 352MHz */
103#define SC_360MHZ 360000000U /* 360MHz */
104#define SC_384MHZ 384000000U /* 384MHz */
105#define SC_396MHZ 396000000U /* 396MHz */
106#define SC_432MHZ 432000000U /* 432MHz */
107#define SC_480MHZ 480000000U /* 480MHz */
108#define SC_600MHZ 600000000U /* 600MHz */
109#define SC_744MHZ 744000000U /* 744MHz */
110#define SC_792MHZ 792000000U /* 792MHz */
111#define SC_864MHZ 864000000U /* 864MHz */
112#define SC_960MHZ 960000000U /* 960MHz */
113#define SC_1056MHZ 1056000000U /* 1056MHz */
114#define SC_1200MHZ 1200000000U /* 1.2GHz */
115#define SC_1464MHZ 1464000000U /* 1.464GHz */
116#define SC_2400MHZ 2400000000U /* 2.4GHz */
117/*@}*/
118
119/*!
120 * @name Defines for A/V related frequencies
121 */
122/*@{*/
123#define SC_62MHZ 62937500U /* 62.9375MHz */
124#define SC_755MHZ 755250000U /* 755.25MHz */
125/*@}*/
126
127/*!
128 * @name Defines for type widths
129 */
130/*@{*/
131#define SC_FADDR_W 36U /* Width of sc_faddr_t */
132#define SC_BOOL_W 1U /* Width of sc_bool_t */
133#define SC_ERR_W 4U /* Width of sc_err_t */
134#define SC_RSRC_W 10U /* Width of sc_rsrc_t */
135#define SC_CTRL_W 6U /* Width of sc_ctrl_t */
136/*@}*/
137
138/*!
139 * @name Defines for sc_bool_t
140 */
141/*@{*/
142#define SC_FALSE ((sc_bool_t) 0U) /* True */
143#define SC_TRUE ((sc_bool_t) 1U) /* False */
144/*@}*/
145
146/*!
147 * @name Defines for sc_err_t.
148 */
149/*@{*/
150#define SC_ERR_NONE 0U /* Success */
151#define SC_ERR_VERSION 1U /* Incompatible API version */
152#define SC_ERR_CONFIG 2U /* Configuration error */
153#define SC_ERR_PARM 3U /* Bad parameter */
154#define SC_ERR_NOACCESS 4U /* Permission error (no access) */
155#define SC_ERR_LOCKED 5U /* Permission error (locked) */
156#define SC_ERR_UNAVAILABLE 6U /* Unavailable (out of resources) */
157#define SC_ERR_NOTFOUND 7U /* Not found */
158#define SC_ERR_NOPOWER 8U /* No power */
159#define SC_ERR_IPC 9U /* Generic IPC error */
160#define SC_ERR_BUSY 10U /* Resource is currently busy/active */
161#define SC_ERR_FAIL 11U /* General I/O failure */
162#define SC_ERR_LAST 12U
163/*@}*/
164
165/*!
166 * @name Defines for sc_rsrc_t.
167 */
168/*@{*/
169#define SC_R_A53 0U
170#define SC_R_A53_0 1U
171#define SC_R_A53_1 2U
172#define SC_R_A53_2 3U
173#define SC_R_A53_3 4U
174#define SC_R_A72 5U
175#define SC_R_A72_0 6U
176#define SC_R_A72_1 7U
177#define SC_R_A72_2 8U
178#define SC_R_A72_3 9U
179#define SC_R_CCI 10U
180#define SC_R_DB 11U
181#define SC_R_DRC_0 12U
182#define SC_R_DRC_1 13U
183#define SC_R_GIC_SMMU 14U
184#define SC_R_IRQSTR_M4_0 15U
185#define SC_R_IRQSTR_M4_1 16U
186#define SC_R_SMMU 17U
187#define SC_R_GIC 18U
188#define SC_R_DC_0_BLIT0 19U
189#define SC_R_DC_0_BLIT1 20U
190#define SC_R_DC_0_BLIT2 21U
191#define SC_R_DC_0_BLIT_OUT 22U
192#define SC_R_DC_0_CAPTURE0 23U
193#define SC_R_DC_0_CAPTURE1 24U
194#define SC_R_DC_0_WARP 25U
195#define SC_R_DC_0_INTEGRAL0 26U
196#define SC_R_DC_0_INTEGRAL1 27U
197#define SC_R_DC_0_VIDEO0 28U
198#define SC_R_DC_0_VIDEO1 29U
199#define SC_R_DC_0_FRAC0 30U
200#define SC_R_DC_0_FRAC1 31U
201#define SC_R_DC_0 32U
202#define SC_R_GPU_2_PID0 33U
203#define SC_R_DC_0_PLL_0 34U
204#define SC_R_DC_0_PLL_1 35U
205#define SC_R_DC_1_BLIT0 36U
206#define SC_R_DC_1_BLIT1 37U
207#define SC_R_DC_1_BLIT2 38U
208#define SC_R_DC_1_BLIT_OUT 39U
209#define SC_R_DC_1_CAPTURE0 40U
210#define SC_R_DC_1_CAPTURE1 41U
211#define SC_R_DC_1_WARP 42U
212#define SC_R_DC_1_INTEGRAL0 43U
213#define SC_R_DC_1_INTEGRAL1 44U
214#define SC_R_DC_1_VIDEO0 45U
215#define SC_R_DC_1_VIDEO1 46U
216#define SC_R_DC_1_FRAC0 47U
217#define SC_R_DC_1_FRAC1 48U
218#define SC_R_DC_1 49U
219#define SC_R_GPU_3_PID0 50U
220#define SC_R_DC_1_PLL_0 51U
221#define SC_R_DC_1_PLL_1 52U
222#define SC_R_SPI_0 53U
223#define SC_R_SPI_1 54U
224#define SC_R_SPI_2 55U
225#define SC_R_SPI_3 56U
226#define SC_R_UART_0 57U
227#define SC_R_UART_1 58U
228#define SC_R_UART_2 59U
229#define SC_R_UART_3 60U
230#define SC_R_UART_4 61U
231#define SC_R_EMVSIM_0 62U
232#define SC_R_EMVSIM_1 63U
233#define SC_R_DMA_0_CH0 64U
234#define SC_R_DMA_0_CH1 65U
235#define SC_R_DMA_0_CH2 66U
236#define SC_R_DMA_0_CH3 67U
237#define SC_R_DMA_0_CH4 68U
238#define SC_R_DMA_0_CH5 69U
239#define SC_R_DMA_0_CH6 70U
240#define SC_R_DMA_0_CH7 71U
241#define SC_R_DMA_0_CH8 72U
242#define SC_R_DMA_0_CH9 73U
243#define SC_R_DMA_0_CH10 74U
244#define SC_R_DMA_0_CH11 75U
245#define SC_R_DMA_0_CH12 76U
246#define SC_R_DMA_0_CH13 77U
247#define SC_R_DMA_0_CH14 78U
248#define SC_R_DMA_0_CH15 79U
249#define SC_R_DMA_0_CH16 80U
250#define SC_R_DMA_0_CH17 81U
251#define SC_R_DMA_0_CH18 82U
252#define SC_R_DMA_0_CH19 83U
253#define SC_R_DMA_0_CH20 84U
254#define SC_R_DMA_0_CH21 85U
255#define SC_R_DMA_0_CH22 86U
256#define SC_R_DMA_0_CH23 87U
257#define SC_R_DMA_0_CH24 88U
258#define SC_R_DMA_0_CH25 89U
259#define SC_R_DMA_0_CH26 90U
260#define SC_R_DMA_0_CH27 91U
261#define SC_R_DMA_0_CH28 92U
262#define SC_R_DMA_0_CH29 93U
263#define SC_R_DMA_0_CH30 94U
264#define SC_R_DMA_0_CH31 95U
265#define SC_R_I2C_0 96U
266#define SC_R_I2C_1 97U
267#define SC_R_I2C_2 98U
268#define SC_R_I2C_3 99U
269#define SC_R_I2C_4 100U
270#define SC_R_ADC_0 101U
271#define SC_R_ADC_1 102U
272#define SC_R_FTM_0 103U
273#define SC_R_FTM_1 104U
274#define SC_R_CAN_0 105U
275#define SC_R_CAN_1 106U
276#define SC_R_CAN_2 107U
277#define SC_R_DMA_1_CH0 108U
278#define SC_R_DMA_1_CH1 109U
279#define SC_R_DMA_1_CH2 110U
280#define SC_R_DMA_1_CH3 111U
281#define SC_R_DMA_1_CH4 112U
282#define SC_R_DMA_1_CH5 113U
283#define SC_R_DMA_1_CH6 114U
284#define SC_R_DMA_1_CH7 115U
285#define SC_R_DMA_1_CH8 116U
286#define SC_R_DMA_1_CH9 117U
287#define SC_R_DMA_1_CH10 118U
288#define SC_R_DMA_1_CH11 119U
289#define SC_R_DMA_1_CH12 120U
290#define SC_R_DMA_1_CH13 121U
291#define SC_R_DMA_1_CH14 122U
292#define SC_R_DMA_1_CH15 123U
293#define SC_R_DMA_1_CH16 124U
294#define SC_R_DMA_1_CH17 125U
295#define SC_R_DMA_1_CH18 126U
296#define SC_R_DMA_1_CH19 127U
297#define SC_R_DMA_1_CH20 128U
298#define SC_R_DMA_1_CH21 129U
299#define SC_R_DMA_1_CH22 130U
300#define SC_R_DMA_1_CH23 131U
301#define SC_R_DMA_1_CH24 132U
302#define SC_R_DMA_1_CH25 133U
303#define SC_R_DMA_1_CH26 134U
304#define SC_R_DMA_1_CH27 135U
305#define SC_R_DMA_1_CH28 136U
306#define SC_R_DMA_1_CH29 137U
307#define SC_R_DMA_1_CH30 138U
308#define SC_R_DMA_1_CH31 139U
309#define SC_R_UNUSED1 140U
310#define SC_R_UNUSED2 141U
311#define SC_R_UNUSED3 142U
312#define SC_R_UNUSED4 143U
313#define SC_R_GPU_0_PID0 144U
314#define SC_R_GPU_0_PID1 145U
315#define SC_R_GPU_0_PID2 146U
316#define SC_R_GPU_0_PID3 147U
317#define SC_R_GPU_1_PID0 148U
318#define SC_R_GPU_1_PID1 149U
319#define SC_R_GPU_1_PID2 150U
320#define SC_R_GPU_1_PID3 151U
321#define SC_R_PCIE_A 152U
322#define SC_R_SERDES_0 153U
323#define SC_R_MATCH_0 154U
324#define SC_R_MATCH_1 155U
325#define SC_R_MATCH_2 156U
326#define SC_R_MATCH_3 157U
327#define SC_R_MATCH_4 158U
328#define SC_R_MATCH_5 159U
329#define SC_R_MATCH_6 160U
330#define SC_R_MATCH_7 161U
331#define SC_R_MATCH_8 162U
332#define SC_R_MATCH_9 163U
333#define SC_R_MATCH_10 164U
334#define SC_R_MATCH_11 165U
335#define SC_R_MATCH_12 166U
336#define SC_R_MATCH_13 167U
337#define SC_R_MATCH_14 168U
338#define SC_R_PCIE_B 169U
339#define SC_R_SATA_0 170U
340#define SC_R_SERDES_1 171U
341#define SC_R_HSIO_GPIO 172U
342#define SC_R_MATCH_15 173U
343#define SC_R_MATCH_16 174U
344#define SC_R_MATCH_17 175U
345#define SC_R_MATCH_18 176U
346#define SC_R_MATCH_19 177U
347#define SC_R_MATCH_20 178U
348#define SC_R_MATCH_21 179U
349#define SC_R_MATCH_22 180U
350#define SC_R_MATCH_23 181U
351#define SC_R_MATCH_24 182U
352#define SC_R_MATCH_25 183U
353#define SC_R_MATCH_26 184U
354#define SC_R_MATCH_27 185U
355#define SC_R_MATCH_28 186U
356#define SC_R_LCD_0 187U
357#define SC_R_LCD_0_PWM_0 188U
358#define SC_R_LCD_0_I2C_0 189U
359#define SC_R_LCD_0_I2C_1 190U
360#define SC_R_PWM_0 191U
361#define SC_R_PWM_1 192U
362#define SC_R_PWM_2 193U
363#define SC_R_PWM_3 194U
364#define SC_R_PWM_4 195U
365#define SC_R_PWM_5 196U
366#define SC_R_PWM_6 197U
367#define SC_R_PWM_7 198U
368#define SC_R_GPIO_0 199U
369#define SC_R_GPIO_1 200U
370#define SC_R_GPIO_2 201U
371#define SC_R_GPIO_3 202U
372#define SC_R_GPIO_4 203U
373#define SC_R_GPIO_5 204U
374#define SC_R_GPIO_6 205U
375#define SC_R_GPIO_7 206U
376#define SC_R_GPT_0 207U
377#define SC_R_GPT_1 208U
378#define SC_R_GPT_2 209U
379#define SC_R_GPT_3 210U
380#define SC_R_GPT_4 211U
381#define SC_R_KPP 212U
382#define SC_R_MU_0A 213U
383#define SC_R_MU_1A 214U
384#define SC_R_MU_2A 215U
385#define SC_R_MU_3A 216U
386#define SC_R_MU_4A 217U
387#define SC_R_MU_5A 218U
388#define SC_R_MU_6A 219U
389#define SC_R_MU_7A 220U
390#define SC_R_MU_8A 221U
391#define SC_R_MU_9A 222U
392#define SC_R_MU_10A 223U
393#define SC_R_MU_11A 224U
394#define SC_R_MU_12A 225U
395#define SC_R_MU_13A 226U
396#define SC_R_MU_5B 227U
397#define SC_R_MU_6B 228U
398#define SC_R_MU_7B 229U
399#define SC_R_MU_8B 230U
400#define SC_R_MU_9B 231U
401#define SC_R_MU_10B 232U
402#define SC_R_MU_11B 233U
403#define SC_R_MU_12B 234U
404#define SC_R_MU_13B 235U
405#define SC_R_ROM_0 236U
406#define SC_R_FSPI_0 237U
407#define SC_R_FSPI_1 238U
408#define SC_R_IEE 239U
409#define SC_R_IEE_R0 240U
410#define SC_R_IEE_R1 241U
411#define SC_R_IEE_R2 242U
412#define SC_R_IEE_R3 243U
413#define SC_R_IEE_R4 244U
414#define SC_R_IEE_R5 245U
415#define SC_R_IEE_R6 246U
416#define SC_R_IEE_R7 247U
417#define SC_R_SDHC_0 248U
418#define SC_R_SDHC_1 249U
419#define SC_R_SDHC_2 250U
420#define SC_R_ENET_0 251U
421#define SC_R_ENET_1 252U
422#define SC_R_MLB_0 253U
423#define SC_R_DMA_2_CH0 254U
424#define SC_R_DMA_2_CH1 255U
425#define SC_R_DMA_2_CH2 256U
426#define SC_R_DMA_2_CH3 257U
427#define SC_R_DMA_2_CH4 258U
428#define SC_R_USB_0 259U
429#define SC_R_USB_1 260U
430#define SC_R_USB_0_PHY 261U
431#define SC_R_USB_2 262U
432#define SC_R_USB_2_PHY 263U
433#define SC_R_DTCP 264U
434#define SC_R_NAND 265U
435#define SC_R_LVDS_0 266U
436#define SC_R_LVDS_0_PWM_0 267U
437#define SC_R_LVDS_0_I2C_0 268U
438#define SC_R_LVDS_0_I2C_1 269U
439#define SC_R_LVDS_1 270U
440#define SC_R_LVDS_1_PWM_0 271U
441#define SC_R_LVDS_1_I2C_0 272U
442#define SC_R_LVDS_1_I2C_1 273U
443#define SC_R_LVDS_2 274U
444#define SC_R_LVDS_2_PWM_0 275U
445#define SC_R_LVDS_2_I2C_0 276U
446#define SC_R_LVDS_2_I2C_1 277U
447#define SC_R_M4_0_PID0 278U
448#define SC_R_M4_0_PID1 279U
449#define SC_R_M4_0_PID2 280U
450#define SC_R_M4_0_PID3 281U
451#define SC_R_M4_0_PID4 282U
452#define SC_R_M4_0_RGPIO 283U
453#define SC_R_M4_0_SEMA42 284U
454#define SC_R_M4_0_TPM 285U
455#define SC_R_M4_0_PIT 286U
456#define SC_R_M4_0_UART 287U
457#define SC_R_M4_0_I2C 288U
458#define SC_R_M4_0_INTMUX 289U
459#define SC_R_M4_0_SIM 290U
460#define SC_R_M4_0_WDOG 291U
461#define SC_R_M4_0_MU_0B 292U
462#define SC_R_M4_0_MU_0A0 293U
463#define SC_R_M4_0_MU_0A1 294U
464#define SC_R_M4_0_MU_0A2 295U
465#define SC_R_M4_0_MU_0A3 296U
466#define SC_R_M4_0_MU_1A 297U
467#define SC_R_M4_1_PID0 298U
468#define SC_R_M4_1_PID1 299U
469#define SC_R_M4_1_PID2 300U
470#define SC_R_M4_1_PID3 301U
471#define SC_R_M4_1_PID4 302U
472#define SC_R_M4_1_RGPIO 303U
473#define SC_R_M4_1_SEMA42 304U
474#define SC_R_M4_1_TPM 305U
475#define SC_R_M4_1_PIT 306U
476#define SC_R_M4_1_UART 307U
477#define SC_R_M4_1_I2C 308U
478#define SC_R_M4_1_INTMUX 309U
479#define SC_R_M4_1_SIM 310U
480#define SC_R_M4_1_WDOG 311U
481#define SC_R_M4_1_MU_0B 312U
482#define SC_R_M4_1_MU_0A0 313U
483#define SC_R_M4_1_MU_0A1 314U
484#define SC_R_M4_1_MU_0A2 315U
485#define SC_R_M4_1_MU_0A3 316U
486#define SC_R_M4_1_MU_1A 317U
487#define SC_R_SAI_0 318U
488#define SC_R_SAI_1 319U
489#define SC_R_SAI_2 320U
490#define SC_R_IRQSTR_SCU2 321U
491#define SC_R_IRQSTR_DSP 322U
492#define SC_R_UNUSED5 323U
493#define SC_R_OCRAM 324U
494#define SC_R_AUDIO_PLL_0 325U
495#define SC_R_PI_0 326U
496#define SC_R_PI_0_PWM_0 327U
497#define SC_R_PI_0_PWM_1 328U
498#define SC_R_PI_0_I2C_0 329U
499#define SC_R_PI_0_PLL 330U
500#define SC_R_PI_1 331U
501#define SC_R_PI_1_PWM_0 332U
502#define SC_R_PI_1_PWM_1 333U
503#define SC_R_PI_1_I2C_0 334U
504#define SC_R_PI_1_PLL 335U
505#define SC_R_SC_PID0 336U
506#define SC_R_SC_PID1 337U
507#define SC_R_SC_PID2 338U
508#define SC_R_SC_PID3 339U
509#define SC_R_SC_PID4 340U
510#define SC_R_SC_SEMA42 341U
511#define SC_R_SC_TPM 342U
512#define SC_R_SC_PIT 343U
513#define SC_R_SC_UART 344U
514#define SC_R_SC_I2C 345U
515#define SC_R_SC_MU_0B 346U
516#define SC_R_SC_MU_0A0 347U
517#define SC_R_SC_MU_0A1 348U
518#define SC_R_SC_MU_0A2 349U
519#define SC_R_SC_MU_0A3 350U
520#define SC_R_SC_MU_1A 351U
521#define SC_R_SYSCNT_RD 352U
522#define SC_R_SYSCNT_CMP 353U
523#define SC_R_DEBUG 354U
524#define SC_R_SYSTEM 355U
525#define SC_R_SNVS 356U
526#define SC_R_OTP 357U
527#define SC_R_VPU_PID0 358U
528#define SC_R_VPU_PID1 359U
529#define SC_R_VPU_PID2 360U
530#define SC_R_VPU_PID3 361U
531#define SC_R_VPU_PID4 362U
532#define SC_R_VPU_PID5 363U
533#define SC_R_VPU_PID6 364U
534#define SC_R_VPU_PID7 365U
535#define SC_R_VPU_UART 366U
536#define SC_R_VPUCORE 367U
537#define SC_R_VPUCORE_0 368U
538#define SC_R_VPUCORE_1 369U
539#define SC_R_VPUCORE_2 370U
540#define SC_R_VPUCORE_3 371U
541#define SC_R_DMA_4_CH0 372U
542#define SC_R_DMA_4_CH1 373U
543#define SC_R_DMA_4_CH2 374U
544#define SC_R_DMA_4_CH3 375U
545#define SC_R_DMA_4_CH4 376U
546#define SC_R_ISI_CH0 377U
547#define SC_R_ISI_CH1 378U
548#define SC_R_ISI_CH2 379U
549#define SC_R_ISI_CH3 380U
550#define SC_R_ISI_CH4 381U
551#define SC_R_ISI_CH5 382U
552#define SC_R_ISI_CH6 383U
553#define SC_R_ISI_CH7 384U
554#define SC_R_MJPEG_DEC_S0 385U
555#define SC_R_MJPEG_DEC_S1 386U
556#define SC_R_MJPEG_DEC_S2 387U
557#define SC_R_MJPEG_DEC_S3 388U
558#define SC_R_MJPEG_ENC_S0 389U
559#define SC_R_MJPEG_ENC_S1 390U
560#define SC_R_MJPEG_ENC_S2 391U
561#define SC_R_MJPEG_ENC_S3 392U
562#define SC_R_MIPI_0 393U
563#define SC_R_MIPI_0_PWM_0 394U
564#define SC_R_MIPI_0_I2C_0 395U
565#define SC_R_MIPI_0_I2C_1 396U
566#define SC_R_MIPI_1 397U
567#define SC_R_MIPI_1_PWM_0 398U
568#define SC_R_MIPI_1_I2C_0 399U
569#define SC_R_MIPI_1_I2C_1 400U
570#define SC_R_CSI_0 401U
571#define SC_R_CSI_0_PWM_0 402U
572#define SC_R_CSI_0_I2C_0 403U
573#define SC_R_CSI_1 404U
574#define SC_R_CSI_1_PWM_0 405U
575#define SC_R_CSI_1_I2C_0 406U
576#define SC_R_HDMI 407U
577#define SC_R_HDMI_I2S 408U
578#define SC_R_HDMI_I2C_0 409U
579#define SC_R_HDMI_PLL_0 410U
580#define SC_R_HDMI_RX 411U
581#define SC_R_HDMI_RX_BYPASS 412U
582#define SC_R_HDMI_RX_I2C_0 413U
583#define SC_R_ASRC_0 414U
584#define SC_R_ESAI_0 415U
585#define SC_R_SPDIF_0 416U
586#define SC_R_SPDIF_1 417U
587#define SC_R_SAI_3 418U
588#define SC_R_SAI_4 419U
589#define SC_R_SAI_5 420U
590#define SC_R_GPT_5 421U
591#define SC_R_GPT_6 422U
592#define SC_R_GPT_7 423U
593#define SC_R_GPT_8 424U
594#define SC_R_GPT_9 425U
595#define SC_R_GPT_10 426U
596#define SC_R_DMA_2_CH5 427U
597#define SC_R_DMA_2_CH6 428U
598#define SC_R_DMA_2_CH7 429U
599#define SC_R_DMA_2_CH8 430U
600#define SC_R_DMA_2_CH9 431U
601#define SC_R_DMA_2_CH10 432U
602#define SC_R_DMA_2_CH11 433U
603#define SC_R_DMA_2_CH12 434U
604#define SC_R_DMA_2_CH13 435U
605#define SC_R_DMA_2_CH14 436U
606#define SC_R_DMA_2_CH15 437U
607#define SC_R_DMA_2_CH16 438U
608#define SC_R_DMA_2_CH17 439U
609#define SC_R_DMA_2_CH18 440U
610#define SC_R_DMA_2_CH19 441U
611#define SC_R_DMA_2_CH20 442U
612#define SC_R_DMA_2_CH21 443U
613#define SC_R_DMA_2_CH22 444U
614#define SC_R_DMA_2_CH23 445U
615#define SC_R_DMA_2_CH24 446U
616#define SC_R_DMA_2_CH25 447U
617#define SC_R_DMA_2_CH26 448U
618#define SC_R_DMA_2_CH27 449U
619#define SC_R_DMA_2_CH28 450U
620#define SC_R_DMA_2_CH29 451U
621#define SC_R_DMA_2_CH30 452U
622#define SC_R_DMA_2_CH31 453U
623#define SC_R_ASRC_1 454U
624#define SC_R_ESAI_1 455U
625#define SC_R_SAI_6 456U
626#define SC_R_SAI_7 457U
627#define SC_R_AMIX 458U
628#define SC_R_MQS_0 459U
629#define SC_R_DMA_3_CH0 460U
630#define SC_R_DMA_3_CH1 461U
631#define SC_R_DMA_3_CH2 462U
632#define SC_R_DMA_3_CH3 463U
633#define SC_R_DMA_3_CH4 464U
634#define SC_R_DMA_3_CH5 465U
635#define SC_R_DMA_3_CH6 466U
636#define SC_R_DMA_3_CH7 467U
637#define SC_R_DMA_3_CH8 468U
638#define SC_R_DMA_3_CH9 469U
639#define SC_R_DMA_3_CH10 470U
640#define SC_R_DMA_3_CH11 471U
641#define SC_R_DMA_3_CH12 472U
642#define SC_R_DMA_3_CH13 473U
643#define SC_R_DMA_3_CH14 474U
644#define SC_R_DMA_3_CH15 475U
645#define SC_R_DMA_3_CH16 476U
646#define SC_R_DMA_3_CH17 477U
647#define SC_R_DMA_3_CH18 478U
648#define SC_R_DMA_3_CH19 479U
649#define SC_R_DMA_3_CH20 480U
650#define SC_R_DMA_3_CH21 481U
651#define SC_R_DMA_3_CH22 482U
652#define SC_R_DMA_3_CH23 483U
653#define SC_R_DMA_3_CH24 484U
654#define SC_R_DMA_3_CH25 485U
655#define SC_R_DMA_3_CH26 486U
656#define SC_R_DMA_3_CH27 487U
657#define SC_R_DMA_3_CH28 488U
658#define SC_R_DMA_3_CH29 489U
659#define SC_R_DMA_3_CH30 490U
660#define SC_R_DMA_3_CH31 491U
661#define SC_R_AUDIO_PLL_1 492U
662#define SC_R_AUDIO_CLK_0 493U
663#define SC_R_AUDIO_CLK_1 494U
664#define SC_R_MCLK_OUT_0 495U
665#define SC_R_MCLK_OUT_1 496U
666#define SC_R_PMIC_0 497U
667#define SC_R_PMIC_1 498U
668#define SC_R_SECO 499U
669#define SC_R_CAAM_JR1 500U
670#define SC_R_CAAM_JR2 501U
671#define SC_R_CAAM_JR3 502U
672#define SC_R_SECO_MU_2 503U
673#define SC_R_SECO_MU_3 504U
674#define SC_R_SECO_MU_4 505U
675#define SC_R_HDMI_RX_PWM_0 506U
676#define SC_R_A35 507U
677#define SC_R_A35_0 508U
678#define SC_R_A35_1 509U
679#define SC_R_A35_2 510U
680#define SC_R_A35_3 511U
681#define SC_R_DSP 512U
682#define SC_R_DSP_RAM 513U
683#define SC_R_CAAM_JR1_OUT 514U
684#define SC_R_CAAM_JR2_OUT 515U
685#define SC_R_CAAM_JR3_OUT 516U
686#define SC_R_VPU_DEC_0 517U
687#define SC_R_VPU_ENC_0 518U
688#define SC_R_CAAM_JR0 519U
689#define SC_R_CAAM_JR0_OUT 520U
690#define SC_R_PMIC_2 521U
691#define SC_R_DBLOGIC 522U
692#define SC_R_HDMI_PLL_1 523U
693#define SC_R_BOARD_R0 524U
694#define SC_R_BOARD_R1 525U
695#define SC_R_BOARD_R2 526U
696#define SC_R_BOARD_R3 527U
697#define SC_R_BOARD_R4 528U
698#define SC_R_BOARD_R5 529U
699#define SC_R_BOARD_R6 530U
700#define SC_R_BOARD_R7 531U
701#define SC_R_MJPEG_DEC_MP 532U
702#define SC_R_MJPEG_ENC_MP 533U
703#define SC_R_VPU_TS_0 534U
704#define SC_R_VPU_MU_0 535U
705#define SC_R_VPU_MU_1 536U
706#define SC_R_VPU_MU_2 537U
707#define SC_R_VPU_MU_3 538U
708#define SC_R_VPU_ENC_1 539U
709#define SC_R_VPU 540U
710#define SC_R_LAST 541U
711#define SC_R_ALL ((sc_rsrc_t) UINT16_MAX) /* All resources */
712/*@}*/
713
714/* NOTE - please add by replacing some of the UNUSED from above! */
715
716/*!
717 * Defnes for sc_ctrl_t.
718 */
719#define SC_C_TEMP 0U
720#define SC_C_TEMP_HI 1U
721#define SC_C_TEMP_LOW 2U
722#define SC_C_PXL_LINK_MST1_ADDR 3U
723#define SC_C_PXL_LINK_MST2_ADDR 4U
724#define SC_C_PXL_LINK_MST_ENB 5U
725#define SC_C_PXL_LINK_MST1_ENB 6U
726#define SC_C_PXL_LINK_MST2_ENB 7U
727#define SC_C_PXL_LINK_SLV1_ADDR 8U
728#define SC_C_PXL_LINK_SLV2_ADDR 9U
729#define SC_C_PXL_LINK_MST_VLD 10U
730#define SC_C_PXL_LINK_MST1_VLD 11U
731#define SC_C_PXL_LINK_MST2_VLD 12U
732#define SC_C_SINGLE_MODE 13U
733#define SC_C_ID 14U
734#define SC_C_PXL_CLK_POLARITY 15U
735#define SC_C_LINESTATE 16U
736#define SC_C_PCIE_G_RST 17U
737#define SC_C_PCIE_BUTTON_RST 18U
738#define SC_C_PCIE_PERST 19U
739#define SC_C_PHY_RESET 20U
740#define SC_C_PXL_LINK_RATE_CORRECTION 21U
741#define SC_C_PANIC 22U
742#define SC_C_PRIORITY_GROUP 23U
743#define SC_C_TXCLK 24U
744#define SC_C_CLKDIV 25U
745#define SC_C_DISABLE_50 26U
746#define SC_C_DISABLE_125 27U
747#define SC_C_SEL_125 28U
748#define SC_C_MODE 29U
749#define SC_C_SYNC_CTRL0 30U
750#define SC_C_KACHUNK_CNT 31U
751#define SC_C_KACHUNK_SEL 32U
752#define SC_C_SYNC_CTRL1 33U
753#define SC_C_DPI_RESET 34U
754#define SC_C_MIPI_RESET 35U
755#define SC_C_DUAL_MODE 36U
756#define SC_C_VOLTAGE 37U
757#define SC_C_PXL_LINK_SEL 38U
758#define SC_C_OFS_SEL 39U
759#define SC_C_OFS_AUDIO 40U
760#define SC_C_OFS_PERIPH 41U
761#define SC_C_OFS_IRQ 42U
762#define SC_C_RST0 43U
763#define SC_C_RST1 44U
764#define SC_C_SEL0 45U
765#define SC_C_LAST 46U
766
767#define SC_P_ALL ((sc_pad_t) UINT16_MAX) /* All pads */
768
769/* Types */
770
771/*!
772 * This type is used to store a boolean
773 */
774typedef uint8_t sc_bool_t;
775
776/*!
777 * This type is used to store a system (full-size) address.
778 */
779typedef uint64_t sc_faddr_t;
780
781/*!
782 * This type is used to indicate error response for most functions.
783 */
784typedef uint8_t sc_err_t;
785
786/*!
787 * This type is used to indicate a resource. Resources include peripherals
788 * and bus masters (but not memory regions). Note items from list should
789 * never be changed or removed (only added to at the end of the list).
790 */
791typedef uint16_t sc_rsrc_t;
792
793/*!
794 * This type is used to indicate a control.
795 */
796typedef uint8_t sc_ctrl_t;
797
798/*!
799 * This type is used to indicate a pad. Valid values are SoC specific.
800 *
801 * Refer to the SoC [Pad List](@ref PADS) for valid pad values.
802 */
803typedef uint16_t sc_pad_t;
804
805/* Extra documentation of standard types */
806
807#ifdef DOXYGEN
808 /*!
809 * Type used to declare an 8-bit integer.
810 */
811typedef __INT8_TYPE__ int8_t;
812
813 /*!
814 * Type used to declare a 16-bit integer.
815 */
816typedef __INT16_TYPE__ int16_t;
817
818 /*!
819 * Type used to declare a 32-bit integer.
820 */
821typedef __INT32_TYPE__ int32_t;
822
823 /*!
824 * Type used to declare a 64-bit integer.
825 */
826typedef __INT64_TYPE__ int64_t;
827
828 /*!
829 * Type used to declare an 8-bit unsigned integer.
830 */
831typedef __UINT8_TYPE__ uint8_t;
832
833 /*!
834 * Type used to declare a 16-bit unsigned integer.
835 */
836typedef __UINT16_TYPE__ uint16_t;
837
838 /*!
839 * Type used to declare a 32-bit unsigned integer.
840 */
841typedef __UINT32_TYPE__ uint32_t;
842
843 /*!
844 * Type used to declare a 64-bit unsigned integer.
845 */
846typedef __UINT64_TYPE__ uint64_t;
847#endif
848
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +0000849#endif /* SCI_TYPES_H */