IfxQspi_regdef.h 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637
  1. /**
  2. * \file IfxQspi_regdef.h
  3. * \brief
  4. * \copyright Copyright (c) 2014 Infineon Technologies AG. All rights reserved.
  5. *
  6. * Version: TC23XADAS_UM_V1.0P1.R0
  7. * Specification: tc23xadas_um_sfrs_MCSFR.xml (Revision: UM_V1.0p1)
  8. * MAY BE CHANGED BY USER [yes/no]: No
  9. *
  10. * IMPORTANT NOTICE
  11. *
  12. * Infineon Technologies AG (Infineon) is supplying this file for use
  13. * exclusively with Infineon's microcontroller products. This file can be freely
  14. * distributed within development tools that are supporting such microcontroller
  15. * products.
  16. *
  17. * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
  18. * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
  19. * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
  20. * INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL,
  21. * OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
  22. *
  23. * \defgroup IfxLld_Qspi Qspi
  24. * \ingroup IfxLld
  25. *
  26. * \defgroup IfxLld_Qspi_Bitfields Bitfields
  27. * \ingroup IfxLld_Qspi
  28. *
  29. * \defgroup IfxLld_Qspi_union Union
  30. * \ingroup IfxLld_Qspi
  31. *
  32. * \defgroup IfxLld_Qspi_struct Struct
  33. * \ingroup IfxLld_Qspi
  34. *
  35. */
  36. #ifndef IFXQSPI_REGDEF_H
  37. #define IFXQSPI_REGDEF_H 1
  38. /******************************************************************************/
  39. #include "Ifx_TypesReg.h"
  40. /******************************************************************************/
  41. /** \addtogroup IfxLld_Qspi_Bitfields
  42. * \{ */
  43. /** \\brief Access Enable Register 0 */
  44. typedef struct _Ifx_QSPI_ACCEN0_Bits
  45. {
  46. unsigned int EN0:1; /**< \brief [0:0] Access Enable for Master TAG ID 0 (rw) */
  47. unsigned int EN1:1; /**< \brief [1:1] Access Enable for Master TAG ID 1 (rw) */
  48. unsigned int EN2:1; /**< \brief [2:2] Access Enable for Master TAG ID 2 (rw) */
  49. unsigned int EN3:1; /**< \brief [3:3] Access Enable for Master TAG ID 3 (rw) */
  50. unsigned int EN4:1; /**< \brief [4:4] Access Enable for Master TAG ID 4 (rw) */
  51. unsigned int EN5:1; /**< \brief [5:5] Access Enable for Master TAG ID 5 (rw) */
  52. unsigned int EN6:1; /**< \brief [6:6] Access Enable for Master TAG ID 6 (rw) */
  53. unsigned int EN7:1; /**< \brief [7:7] Access Enable for Master TAG ID 7 (rw) */
  54. unsigned int EN8:1; /**< \brief [8:8] Access Enable for Master TAG ID 8 (rw) */
  55. unsigned int EN9:1; /**< \brief [9:9] Access Enable for Master TAG ID 9 (rw) */
  56. unsigned int EN10:1; /**< \brief [10:10] Access Enable for Master TAG ID 10 (rw) */
  57. unsigned int EN11:1; /**< \brief [11:11] Access Enable for Master TAG ID 11 (rw) */
  58. unsigned int EN12:1; /**< \brief [12:12] Access Enable for Master TAG ID 12 (rw) */
  59. unsigned int EN13:1; /**< \brief [13:13] Access Enable for Master TAG ID 13 (rw) */
  60. unsigned int EN14:1; /**< \brief [14:14] Access Enable for Master TAG ID 14 (rw) */
  61. unsigned int EN15:1; /**< \brief [15:15] Access Enable for Master TAG ID 15 (rw) */
  62. unsigned int EN16:1; /**< \brief [16:16] Access Enable for Master TAG ID 16 (rw) */
  63. unsigned int EN17:1; /**< \brief [17:17] Access Enable for Master TAG ID 17 (rw) */
  64. unsigned int EN18:1; /**< \brief [18:18] Access Enable for Master TAG ID 18 (rw) */
  65. unsigned int EN19:1; /**< \brief [19:19] Access Enable for Master TAG ID 19 (rw) */
  66. unsigned int EN20:1; /**< \brief [20:20] Access Enable for Master TAG ID 20 (rw) */
  67. unsigned int EN21:1; /**< \brief [21:21] Access Enable for Master TAG ID 21 (rw) */
  68. unsigned int EN22:1; /**< \brief [22:22] Access Enable for Master TAG ID 22 (rw) */
  69. unsigned int EN23:1; /**< \brief [23:23] Access Enable for Master TAG ID 23 (rw) */
  70. unsigned int EN24:1; /**< \brief [24:24] Access Enable for Master TAG ID 24 (rw) */
  71. unsigned int EN25:1; /**< \brief [25:25] Access Enable for Master TAG ID 25 (rw) */
  72. unsigned int EN26:1; /**< \brief [26:26] Access Enable for Master TAG ID 26 (rw) */
  73. unsigned int EN27:1; /**< \brief [27:27] Access Enable for Master TAG ID 27 (rw) */
  74. unsigned int EN28:1; /**< \brief [28:28] Access Enable for Master TAG ID 28 (rw) */
  75. unsigned int EN29:1; /**< \brief [29:29] Access Enable for Master TAG ID 29 (rw) */
  76. unsigned int EN30:1; /**< \brief [30:30] Access Enable for Master TAG ID 30 (rw) */
  77. unsigned int EN31:1; /**< \brief [31:31] Access Enable for Master TAG ID 31 (rw) */
  78. } Ifx_QSPI_ACCEN0_Bits;
  79. /** \\brief Access Enable Register 1 */
  80. typedef struct _Ifx_QSPI_ACCEN1_Bits
  81. {
  82. unsigned int reserved_0:32; /**< \brief \internal Reserved */
  83. } Ifx_QSPI_ACCEN1_Bits;
  84. /** \\brief Basic Configuration Register */
  85. typedef struct _Ifx_QSPI_BACON_Bits
  86. {
  87. unsigned int LAST:1; /**< \brief [0:0] Last Word in a Frame (rh) */
  88. unsigned int IPRE:3; /**< \brief [3:1] Prescaler for the Idle Delay (rh) */
  89. unsigned int IDLE:3; /**< \brief [6:4] Idle Delay Length (rh) */
  90. unsigned int LPRE:3; /**< \brief [9:7] Prescaler for the Leading Delay (rh) */
  91. unsigned int LEAD:3; /**< \brief [12:10] Leading Delay Length (rh) */
  92. unsigned int TPRE:3; /**< \brief [15:13] Prescaler for the Trailing Delay (rh) */
  93. unsigned int TRAIL:3; /**< \brief [18:16] Trailing Delay Length (rh) */
  94. unsigned int PARTYP:1; /**< \brief [19:19] Parity Type (rh) */
  95. unsigned int UINT:1; /**< \brief [20:20] User Interrupt at the PT1 Event in the Subsequent Frames (rh) */
  96. unsigned int MSB:1; /**< \brief [21:21] Shift MSB or LSB First (rh) */
  97. unsigned int BYTE:1; /**< \brief [22:22] Byte (rh) */
  98. unsigned int DL:5; /**< \brief [27:23] Data Length (rh) */
  99. unsigned int CS:4; /**< \brief [31:28] Channel Select (rh) */
  100. } Ifx_QSPI_BACON_Bits;
  101. /** \\brief BACON_ENTRY Register */
  102. typedef struct _Ifx_QSPI_BACONENTRY_Bits
  103. {
  104. unsigned int E:32; /**< \brief [31:0] Entry Point to the TxFIFO (w) */
  105. } Ifx_QSPI_BACONENTRY_Bits;
  106. /** \\brief Capture Control Register */
  107. typedef struct _Ifx_QSPI_CAPCON_Bits
  108. {
  109. unsigned int CAP:15; /**< \brief [14:0] Captured Value (rh) */
  110. unsigned int OVF:1; /**< \brief [15:15] Overflow Flag (rh) */
  111. unsigned int EDGECON:2; /**< \brief [17:16] Edge Configuration (rw) */
  112. unsigned int INS:2; /**< \brief [19:18] Input Selection (rw) */
  113. unsigned int EN:1; /**< \brief [20:20] Enable Bit of the Capture Timer (rw) */
  114. unsigned int reserved_21:7; /**< \brief \internal Reserved */
  115. unsigned int CAPC:1; /**< \brief [28:28] Capture Flag Clear (w) */
  116. unsigned int CAPS:1; /**< \brief [29:29] Capture Flag Set (w) */
  117. unsigned int CAPF:1; /**< \brief [30:30] Capture Flag (rh) */
  118. unsigned int CAPSEL:1; /**< \brief [31:31] Capture Interrupt Select Bit (rw) */
  119. } Ifx_QSPI_CAPCON_Bits;
  120. /** \\brief Clock Control Register */
  121. typedef struct _Ifx_QSPI_CLC_Bits
  122. {
  123. unsigned int DISR:1; /**< \brief [0:0] Module Disable Request Bit (rw) */
  124. unsigned int DISS:1; /**< \brief [1:1] Module Disable Status Bit (rh) */
  125. unsigned int reserved_2:1; /**< \brief \internal Reserved */
  126. unsigned int EDIS:1; /**< \brief [3:3] Sleep Mode Enable Control (rw) */
  127. unsigned int reserved_4:28; /**< \brief \internal Reserved */
  128. } Ifx_QSPI_CLC_Bits;
  129. /** \\brief DATA_ENTRY Register */
  130. typedef struct _Ifx_QSPI_DATAENTRY_Bits
  131. {
  132. unsigned int E:32; /**< \brief [31:0] Entry Point to the TxFIFO (w) */
  133. } Ifx_QSPI_DATAENTRY_Bits;
  134. /** \\brief Configuration Extension */
  135. typedef struct _Ifx_QSPI_ECON_Bits
  136. {
  137. unsigned int Q:6; /**< \brief [5:0] Time Quantum (rw) */
  138. unsigned int A:2; /**< \brief [7:6] Bit Segment 1 (rw) */
  139. unsigned int B:2; /**< \brief [9:8] Bit Segment 2 (rw) */
  140. unsigned int C:2; /**< \brief [11:10] Bit Segment 3 (rw) */
  141. unsigned int CPH:1; /**< \brief [12:12] Clock Phase (rw) */
  142. unsigned int CPOL:1; /**< \brief [13:13] Clock Polarity (rw) */
  143. unsigned int PAREN:1; /**< \brief [14:14] Enable Parity Check (rw) */
  144. unsigned int reserved_15:15; /**< \brief \internal Reserved */
  145. unsigned int BE:2; /**< \brief [31:30] Permutate bytes to / from Big Endian (rw) */
  146. } Ifx_QSPI_ECON_Bits;
  147. /** \\brief Flags Clear Register */
  148. typedef struct _Ifx_QSPI_FLAGSCLEAR_Bits
  149. {
  150. unsigned int ERRORCLEARS:9; /**< \brief [8:0] Write Only Bits for Clearing the Error Flags (w) */
  151. unsigned int TXC:1; /**< \brief [9:9] Transmit Event Flag Clear (w) */
  152. unsigned int RXC:1; /**< \brief [10:10] Receive Event Flag Clear (w) */
  153. unsigned int PT1C:1; /**< \brief [11:11] PT1 Event Flag Clear (w) */
  154. unsigned int PT2C:1; /**< \brief [12:12] PT2 Event Flag Clear (w) */
  155. unsigned int reserved_13:2; /**< \brief \internal Reserved */
  156. unsigned int USRC:1; /**< \brief [15:15] User Event Flag Clear (w) */
  157. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  158. } Ifx_QSPI_FLAGSCLEAR_Bits;
  159. /** \\brief Global Configuration Register 1 */
  160. typedef struct _Ifx_QSPI_GLOBALCON1_Bits
  161. {
  162. unsigned int ERRORENS:9; /**< \brief [8:0] Error Enable Bits (rw) */
  163. unsigned int TXEN:1; /**< \brief [9:9] Tx Interrupt Event Enable (rw) */
  164. unsigned int RXEN:1; /**< \brief [10:10] RX Interrupt Event Enable (rw) */
  165. unsigned int PT1EN:1; /**< \brief [11:11] Interrupt on PT1 Event Enable (rw) */
  166. unsigned int PT2EN:1; /**< \brief [12:12] Interrupt on PT2 Event Enable (rw) */
  167. unsigned int reserved_13:2; /**< \brief \internal Reserved */
  168. unsigned int USREN:1; /**< \brief [15:15] Interrupt on USR Event Enable (rw) */
  169. unsigned int TXFIFOINT:2; /**< \brief [17:16] Transmit FIFO Interrupt Threshold (rw) */
  170. unsigned int RXFIFOINT:2; /**< \brief [19:18] Receive FIFO Interrupt Threshold (rw) */
  171. unsigned int PT1:3; /**< \brief [22:20] Phase Transition Event 1 (rw) */
  172. unsigned int PT2:3; /**< \brief [25:23] Phase Transition Event 2 (rw) */
  173. unsigned int TXFM:2; /**< \brief [27:26] TXFIFO Mode (rw) */
  174. unsigned int RXFM:2; /**< \brief [29:28] RXFIFO Mode (rw) */
  175. unsigned int reserved_30:2; /**< \brief \internal Reserved */
  176. } Ifx_QSPI_GLOBALCON1_Bits;
  177. /** \\brief Global Configuration Register */
  178. typedef struct _Ifx_QSPI_GLOBALCON_Bits
  179. {
  180. unsigned int TQ:8; /**< \brief [7:0] Global Time Quantum Length (rw) */
  181. unsigned int reserved_8:1; /**< \brief \internal Reserved */
  182. unsigned int SI:1; /**< \brief [9:9] Status Injection (rw) */
  183. unsigned int EXPECT:4; /**< \brief [13:10] Time-Out Value for the Expect Phase (rw) */
  184. unsigned int LB:1; /**< \brief [14:14] Loop-Back Control (rw) */
  185. unsigned int DEL0:1; /**< \brief [15:15] Delayed Mode for SLSO0 (rw) */
  186. unsigned int STROBE:5; /**< \brief [20:16] Strobe Delay for SLSO0 in Delayed Mode (rw) */
  187. unsigned int SRF:1; /**< \brief [21:21] Stop on RxFIFO Full (rw) */
  188. unsigned int STIP:1; /**< \brief [22:22] Slave Transmit Idle State Polarity (rw) */
  189. unsigned int reserved_23:1; /**< \brief \internal Reserved */
  190. unsigned int EN:1; /**< \brief [24:24] Enable Bit (rwh) */
  191. unsigned int MS:2; /**< \brief [26:25] Master Slave Mode (rw) */
  192. unsigned int AREN:1; /**< \brief [27:27] Automatic Reset Enable (rw) */
  193. unsigned int RESETS:4; /**< \brief [31:28] Bits for resetting sub-modules per software (w) */
  194. } Ifx_QSPI_GLOBALCON_Bits;
  195. /** \\brief Module Identification Register */
  196. typedef struct _Ifx_QSPI_ID_Bits
  197. {
  198. unsigned int MODREV:8; /**< \brief [7:0] Module Revision Number (r) */
  199. unsigned int MODTYPE:8; /**< \brief [15:8] Module Type (r) */
  200. unsigned int MODNUMBER:16; /**< \brief [31:16] Module Number Value (r) */
  201. } Ifx_QSPI_ID_Bits;
  202. /** \\brief Kernel Reset Register 0 */
  203. typedef struct _Ifx_QSPI_KRST0_Bits
  204. {
  205. unsigned int RST:1; /**< \brief [0:0] Kernel Reset (rwh) */
  206. unsigned int RSTSTAT:1; /**< \brief [1:1] Kernel Reset Status (rh) */
  207. unsigned int reserved_2:30; /**< \brief \internal Reserved */
  208. } Ifx_QSPI_KRST0_Bits;
  209. /** \\brief Kernel Reset Register 1 */
  210. typedef struct _Ifx_QSPI_KRST1_Bits
  211. {
  212. unsigned int RST:1; /**< \brief [0:0] Kernel Reset (rwh) */
  213. unsigned int reserved_1:31; /**< \brief \internal Reserved */
  214. } Ifx_QSPI_KRST1_Bits;
  215. /** \\brief Kernel Reset Status Clear Register */
  216. typedef struct _Ifx_QSPI_KRSTCLR_Bits
  217. {
  218. unsigned int CLR:1; /**< \brief [0:0] Kernel Reset Status Clear (w) */
  219. unsigned int reserved_1:31; /**< \brief \internal Reserved */
  220. } Ifx_QSPI_KRSTCLR_Bits;
  221. /** \\brief MIX_ENTRY Register */
  222. typedef struct _Ifx_QSPI_MIXENTRY_Bits
  223. {
  224. unsigned int E:32; /**< \brief [31:0] Entry Point to the TxFIFO (w) */
  225. } Ifx_QSPI_MIXENTRY_Bits;
  226. /** \\brief OCDS Control and Status */
  227. typedef struct _Ifx_QSPI_OCS_Bits
  228. {
  229. unsigned int reserved_0:24; /**< \brief \internal Reserved */
  230. unsigned int SUS:4; /**< \brief [27:24] OCDS Suspend Control (rw) */
  231. unsigned int SUS_P:1; /**< \brief [28:28] SUS Write Protection (w) */
  232. unsigned int SUSSTA:1; /**< \brief [29:29] Suspend State (rh) */
  233. unsigned int reserved_30:2; /**< \brief \internal Reserved */
  234. } Ifx_QSPI_OCS_Bits;
  235. /** \\brief Port Input Select Register */
  236. typedef struct _Ifx_QSPI_PISEL_Bits
  237. {
  238. unsigned int MRIS:3; /**< \brief [2:0] Master Mode Receive Input Select (rw) */
  239. unsigned int reserved_3:1; /**< \brief \internal Reserved */
  240. unsigned int SRIS:3; /**< \brief [6:4] Slave Mode Receive Input Select (rw) */
  241. unsigned int reserved_7:1; /**< \brief \internal Reserved */
  242. unsigned int SCIS:3; /**< \brief [10:8] Slave Mode Clock Input Select (rw) */
  243. unsigned int reserved_11:1; /**< \brief \internal Reserved */
  244. unsigned int SLSIS:3; /**< \brief [14:12] Slave Mode Slave Select Input Selection (rw) */
  245. unsigned int reserved_15:17; /**< \brief \internal Reserved */
  246. } Ifx_QSPI_PISEL_Bits;
  247. /** \\brief RX_EXIT Register */
  248. typedef struct _Ifx_QSPI_RXEXIT_Bits
  249. {
  250. unsigned int E:32; /**< \brief [31:0] Read Point from the RxFIFO (r) */
  251. } Ifx_QSPI_RXEXIT_Bits;
  252. /** \\brief RX_EXIT Debug Register */
  253. typedef struct _Ifx_QSPI_RXEXITD_Bits
  254. {
  255. unsigned int E:32; /**< \brief [31:0] Read Point from the RxFIFO (r) */
  256. } Ifx_QSPI_RXEXITD_Bits;
  257. /** \\brief Slave Select Output Control Register */
  258. typedef struct _Ifx_QSPI_SSOC_Bits
  259. {
  260. unsigned int AOL:16; /**< \brief [15:0] Active Output Level for the SLSO Outputs (rw) */
  261. unsigned int OEN:16; /**< \brief [31:16] Enable Bits for the SLSO Outputs (rw) */
  262. } Ifx_QSPI_SSOC_Bits;
  263. /** \\brief Status Register 1 */
  264. typedef struct _Ifx_QSPI_STATUS1_Bits
  265. {
  266. unsigned int BITCOUNT:8; /**< \brief [7:0] Number of the bit shifted out (r) */
  267. unsigned int reserved_8:20; /**< \brief \internal Reserved */
  268. unsigned int BRDEN:1; /**< \brief [28:28] Baud Rate Deviation Enable (rw) */
  269. unsigned int BRD:1; /**< \brief [29:29] Baud Rate Deviation Flag (rwh) */
  270. unsigned int SPDEN:1; /**< \brief [30:30] Spike Detection Enable (rw) */
  271. unsigned int SPD:1; /**< \brief [31:31] Spike Detection Flag (rwh) */
  272. } Ifx_QSPI_STATUS1_Bits;
  273. /** \\brief Status Register */
  274. typedef struct _Ifx_QSPI_STATUS_Bits
  275. {
  276. unsigned int ERRORFLAGS:9; /**< \brief [8:0] Sticky Flags Signalling Errors (rwh) */
  277. unsigned int TXF:1; /**< \brief [9:9] Transmit Interrupt Request Flag (rwh) */
  278. unsigned int RXF:1; /**< \brief [10:10] Receive Interrupt Request Flag (rwh) */
  279. unsigned int PT1F:1; /**< \brief [11:11] Phase Transition 1 Flag (rwh) */
  280. unsigned int PT2F:1; /**< \brief [12:12] Phase Transition 2 Flag (rwh) */
  281. unsigned int reserved_13:2; /**< \brief \internal Reserved */
  282. unsigned int USRF:1; /**< \brief [15:15] User Interrupt Request Flag (rwh) */
  283. unsigned int TXFIFOLEVEL:3; /**< \brief [18:16] TXFIFO Filling Level (rh) */
  284. unsigned int RXFIFOLEVEL:3; /**< \brief [21:19] RXFIFO Filling Level (rh) */
  285. unsigned int SLAVESEL:4; /**< \brief [25:22] Currently Active Slave Select Flag (rh) */
  286. unsigned int RPV:1; /**< \brief [26:26] Received Parity Value (rh) */
  287. unsigned int TPV:1; /**< \brief [27:27] Transmitted Parity Value (rh) */
  288. unsigned int PHASE:4; /**< \brief [31:28] Flags the ongoing phase (rh) */
  289. } Ifx_QSPI_STATUS_Bits;
  290. /** \\brief Extra Large Data Configuration Register */
  291. typedef struct _Ifx_QSPI_XXLCON_Bits
  292. {
  293. unsigned int XDL:16; /**< \brief [15:0] Extended Data Length (rw) */
  294. unsigned int BYTECOUNT:16; /**< \brief [31:16] Extended Data Length (r) */
  295. } Ifx_QSPI_XXLCON_Bits;
  296. /** \} */
  297. /******************************************************************************/
  298. /******************************************************************************/
  299. /** \addtogroup IfxLld_Qspi_union
  300. * \{ */
  301. /** \\brief Access Enable Register 0 */
  302. typedef union
  303. {
  304. /** \brief Unsigned access */
  305. unsigned int U;
  306. /** \brief Signed access */
  307. signed int I;
  308. /** \brief Bitfield access */
  309. Ifx_QSPI_ACCEN0_Bits B;
  310. } Ifx_QSPI_ACCEN0;
  311. /** \\brief Access Enable Register 1 */
  312. typedef union
  313. {
  314. /** \brief Unsigned access */
  315. unsigned int U;
  316. /** \brief Signed access */
  317. signed int I;
  318. /** \brief Bitfield access */
  319. Ifx_QSPI_ACCEN1_Bits B;
  320. } Ifx_QSPI_ACCEN1;
  321. /** \\brief Basic Configuration Register */
  322. typedef union
  323. {
  324. /** \brief Unsigned access */
  325. unsigned int U;
  326. /** \brief Signed access */
  327. signed int I;
  328. /** \brief Bitfield access */
  329. Ifx_QSPI_BACON_Bits B;
  330. } Ifx_QSPI_BACON;
  331. /** \\brief BACON_ENTRY Register */
  332. typedef union
  333. {
  334. /** \brief Unsigned access */
  335. unsigned int U;
  336. /** \brief Signed access */
  337. signed int I;
  338. /** \brief Bitfield access */
  339. Ifx_QSPI_BACONENTRY_Bits B;
  340. } Ifx_QSPI_BACONENTRY;
  341. /** \\brief Capture Control Register */
  342. typedef union
  343. {
  344. /** \brief Unsigned access */
  345. unsigned int U;
  346. /** \brief Signed access */
  347. signed int I;
  348. /** \brief Bitfield access */
  349. Ifx_QSPI_CAPCON_Bits B;
  350. } Ifx_QSPI_CAPCON;
  351. /** \\brief Clock Control Register */
  352. typedef union
  353. {
  354. /** \brief Unsigned access */
  355. unsigned int U;
  356. /** \brief Signed access */
  357. signed int I;
  358. /** \brief Bitfield access */
  359. Ifx_QSPI_CLC_Bits B;
  360. } Ifx_QSPI_CLC;
  361. /** \\brief DATA_ENTRY Register */
  362. typedef union
  363. {
  364. /** \brief Unsigned access */
  365. unsigned int U;
  366. /** \brief Signed access */
  367. signed int I;
  368. /** \brief Bitfield access */
  369. Ifx_QSPI_DATAENTRY_Bits B;
  370. } Ifx_QSPI_DATAENTRY;
  371. /** \\brief Configuration Extension */
  372. typedef union
  373. {
  374. /** \brief Unsigned access */
  375. unsigned int U;
  376. /** \brief Signed access */
  377. signed int I;
  378. /** \brief Bitfield access */
  379. Ifx_QSPI_ECON_Bits B;
  380. } Ifx_QSPI_ECON;
  381. /** \\brief Flags Clear Register */
  382. typedef union
  383. {
  384. /** \brief Unsigned access */
  385. unsigned int U;
  386. /** \brief Signed access */
  387. signed int I;
  388. /** \brief Bitfield access */
  389. Ifx_QSPI_FLAGSCLEAR_Bits B;
  390. } Ifx_QSPI_FLAGSCLEAR;
  391. /** \\brief Global Configuration Register */
  392. typedef union
  393. {
  394. /** \brief Unsigned access */
  395. unsigned int U;
  396. /** \brief Signed access */
  397. signed int I;
  398. /** \brief Bitfield access */
  399. Ifx_QSPI_GLOBALCON_Bits B;
  400. } Ifx_QSPI_GLOBALCON;
  401. /** \\brief Global Configuration Register 1 */
  402. typedef union
  403. {
  404. /** \brief Unsigned access */
  405. unsigned int U;
  406. /** \brief Signed access */
  407. signed int I;
  408. /** \brief Bitfield access */
  409. Ifx_QSPI_GLOBALCON1_Bits B;
  410. } Ifx_QSPI_GLOBALCON1;
  411. /** \\brief Module Identification Register */
  412. typedef union
  413. {
  414. /** \brief Unsigned access */
  415. unsigned int U;
  416. /** \brief Signed access */
  417. signed int I;
  418. /** \brief Bitfield access */
  419. Ifx_QSPI_ID_Bits B;
  420. } Ifx_QSPI_ID;
  421. /** \\brief Kernel Reset Register 0 */
  422. typedef union
  423. {
  424. /** \brief Unsigned access */
  425. unsigned int U;
  426. /** \brief Signed access */
  427. signed int I;
  428. /** \brief Bitfield access */
  429. Ifx_QSPI_KRST0_Bits B;
  430. } Ifx_QSPI_KRST0;
  431. /** \\brief Kernel Reset Register 1 */
  432. typedef union
  433. {
  434. /** \brief Unsigned access */
  435. unsigned int U;
  436. /** \brief Signed access */
  437. signed int I;
  438. /** \brief Bitfield access */
  439. Ifx_QSPI_KRST1_Bits B;
  440. } Ifx_QSPI_KRST1;
  441. /** \\brief Kernel Reset Status Clear Register */
  442. typedef union
  443. {
  444. /** \brief Unsigned access */
  445. unsigned int U;
  446. /** \brief Signed access */
  447. signed int I;
  448. /** \brief Bitfield access */
  449. Ifx_QSPI_KRSTCLR_Bits B;
  450. } Ifx_QSPI_KRSTCLR;
  451. /** \\brief MIX_ENTRY Register */
  452. typedef union
  453. {
  454. /** \brief Unsigned access */
  455. unsigned int U;
  456. /** \brief Signed access */
  457. signed int I;
  458. /** \brief Bitfield access */
  459. Ifx_QSPI_MIXENTRY_Bits B;
  460. } Ifx_QSPI_MIXENTRY;
  461. /** \\brief OCDS Control and Status */
  462. typedef union
  463. {
  464. /** \brief Unsigned access */
  465. unsigned int U;
  466. /** \brief Signed access */
  467. signed int I;
  468. /** \brief Bitfield access */
  469. Ifx_QSPI_OCS_Bits B;
  470. } Ifx_QSPI_OCS;
  471. /** \\brief Port Input Select Register */
  472. typedef union
  473. {
  474. /** \brief Unsigned access */
  475. unsigned int U;
  476. /** \brief Signed access */
  477. signed int I;
  478. /** \brief Bitfield access */
  479. Ifx_QSPI_PISEL_Bits B;
  480. } Ifx_QSPI_PISEL;
  481. /** \\brief RX_EXIT Register */
  482. typedef union
  483. {
  484. /** \brief Unsigned access */
  485. unsigned int U;
  486. /** \brief Signed access */
  487. signed int I;
  488. /** \brief Bitfield access */
  489. Ifx_QSPI_RXEXIT_Bits B;
  490. } Ifx_QSPI_RXEXIT;
  491. /** \\brief RX_EXIT Debug Register */
  492. typedef union
  493. {
  494. /** \brief Unsigned access */
  495. unsigned int U;
  496. /** \brief Signed access */
  497. signed int I;
  498. /** \brief Bitfield access */
  499. Ifx_QSPI_RXEXITD_Bits B;
  500. } Ifx_QSPI_RXEXITD;
  501. /** \\brief Slave Select Output Control Register */
  502. typedef union
  503. {
  504. /** \brief Unsigned access */
  505. unsigned int U;
  506. /** \brief Signed access */
  507. signed int I;
  508. /** \brief Bitfield access */
  509. Ifx_QSPI_SSOC_Bits B;
  510. } Ifx_QSPI_SSOC;
  511. /** \\brief Status Register */
  512. typedef union
  513. {
  514. /** \brief Unsigned access */
  515. unsigned int U;
  516. /** \brief Signed access */
  517. signed int I;
  518. /** \brief Bitfield access */
  519. Ifx_QSPI_STATUS_Bits B;
  520. } Ifx_QSPI_STATUS;
  521. /** \\brief Status Register 1 */
  522. typedef union
  523. {
  524. /** \brief Unsigned access */
  525. unsigned int U;
  526. /** \brief Signed access */
  527. signed int I;
  528. /** \brief Bitfield access */
  529. Ifx_QSPI_STATUS1_Bits B;
  530. } Ifx_QSPI_STATUS1;
  531. /** \\brief Extra Large Data Configuration Register */
  532. typedef union
  533. {
  534. /** \brief Unsigned access */
  535. unsigned int U;
  536. /** \brief Signed access */
  537. signed int I;
  538. /** \brief Bitfield access */
  539. Ifx_QSPI_XXLCON_Bits B;
  540. } Ifx_QSPI_XXLCON;
  541. /** \} */
  542. /******************************************************************************/
  543. /******************************************************************************/
  544. /** \addtogroup IfxLld_Qspi_struct
  545. * \{ */
  546. /******************************************************************************/
  547. /** \name Object L0
  548. * \{ */
  549. /** \\brief QSPI object */
  550. typedef volatile struct _Ifx_QSPI
  551. {
  552. Ifx_QSPI_CLC CLC; /**< \brief 0, Clock Control Register */
  553. Ifx_QSPI_PISEL PISEL; /**< \brief 4, Port Input Select Register */
  554. Ifx_QSPI_ID ID; /**< \brief 8, Module Identification Register */
  555. unsigned char reserved_C[4]; /**< \brief C, \internal Reserved */
  556. Ifx_QSPI_GLOBALCON GLOBALCON; /**< \brief 10, Global Configuration Register */
  557. Ifx_QSPI_GLOBALCON1 GLOBALCON1; /**< \brief 14, Global Configuration Register 1 */
  558. Ifx_QSPI_BACON BACON; /**< \brief 18, Basic Configuration Register */
  559. unsigned char reserved_1C[4]; /**< \brief 1C, \internal Reserved */
  560. Ifx_QSPI_ECON ECON[8]; /**< \brief 20, Configuration Extension */
  561. Ifx_QSPI_STATUS STATUS; /**< \brief 40, Status Register */
  562. Ifx_QSPI_STATUS1 STATUS1; /**< \brief 44, Status Register 1 */
  563. Ifx_QSPI_SSOC SSOC; /**< \brief 48, Slave Select Output Control Register */
  564. unsigned char reserved_4C[8]; /**< \brief 4C, \internal Reserved */
  565. Ifx_QSPI_FLAGSCLEAR FLAGSCLEAR; /**< \brief 54, Flags Clear Register */
  566. Ifx_QSPI_XXLCON XXLCON; /**< \brief 58, Extra Large Data Configuration Register */
  567. Ifx_QSPI_MIXENTRY MIXENTRY; /**< \brief 5C, MIX_ENTRY Register */
  568. Ifx_QSPI_BACONENTRY BACONENTRY; /**< \brief 60, BACON_ENTRY Register */
  569. Ifx_QSPI_DATAENTRY DATAENTRY[8]; /**< \brief 64, DATA_ENTRY Register */
  570. unsigned char reserved_84[12]; /**< \brief 84, \internal Reserved */
  571. Ifx_QSPI_RXEXIT RXEXIT; /**< \brief 90, RX_EXIT Register */
  572. Ifx_QSPI_RXEXITD RXEXITD; /**< \brief 94, RX_EXIT Debug Register */
  573. unsigned char reserved_98[8]; /**< \brief 98, \internal Reserved */
  574. Ifx_QSPI_CAPCON CAPCON; /**< \brief A0, Capture Control Register */
  575. unsigned char reserved_A4[68]; /**< \brief A4, \internal Reserved */
  576. Ifx_QSPI_OCS OCS; /**< \brief E8, OCDS Control and Status */
  577. Ifx_QSPI_KRSTCLR KRSTCLR; /**< \brief EC, Kernel Reset Status Clear Register */
  578. Ifx_QSPI_KRST1 KRST1; /**< \brief F0, Kernel Reset Register 1 */
  579. Ifx_QSPI_KRST0 KRST0; /**< \brief F4, Kernel Reset Register 0 */
  580. Ifx_QSPI_ACCEN1 ACCEN1; /**< \brief F8, Access Enable Register 1 */
  581. Ifx_QSPI_ACCEN0 ACCEN0; /**< \brief FC, Access Enable Register 0 */
  582. } Ifx_QSPI;
  583. /** \} */
  584. /******************************************************************************/
  585. /** \} */
  586. /******************************************************************************/
  587. /******************************************************************************/
  588. #endif /* IFXQSPI_REGDEF_H */