spc5_registry.h 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419
  1. /*
  2. SPC5 HAL - Copyright (C) 2014 STMicroelectronics
  3. Licensed under the Apache License, Version 2.0 (the "License");
  4. you may not use this file except in compliance with the License.
  5. You may obtain a copy of the License at
  6. http://www.apache.org/licenses/LICENSE-2.0
  7. Unless required by applicable law or agreed to in writing, software
  8. distributed under the License is distributed on an "AS IS" BASIS,
  9. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  10. See the License for the specific language governing permissions and
  11. limitations under the License.
  12. */
  13. /**
  14. * @file SPC560BCxx/spc5_registry.h
  15. * @brief SPC560B/Cxx capabilities registry.
  16. *
  17. * @addtogroup HAL
  18. * @{
  19. */
  20. #ifndef SPC5_REGISTRY_H
  21. #define SPC5_REGISTRY_H
  22. /*===========================================================================*/
  23. /* Platform capabilities. */
  24. /*===========================================================================*/
  25. /**
  26. * @name SPC560B/Cxx capabilities
  27. * @{
  28. */
  29. /* DSPI attribures.*/
  30. #define SPC5_DSPI_FIFO_DEPTH 4
  31. #define SPC5_HAS_DSPI0 TRUE
  32. #define SPC5_DSPI0_PCTL 4
  33. #define SPC5_DSPI0_TX1_DMA_DEV_ID 1
  34. #define SPC5_DSPI0_TX2_DMA_DEV_ID 0
  35. #define SPC5_DSPI0_RX_DMA_DEV_ID 2
  36. #define SPC5_DSPI0_TFFF_HANDLER vector76
  37. #define SPC5_DSPI0_TFFF_NUMBER 76
  38. #define SPC5_DSPI0_RFDF_HANDLER vector78
  39. #define SPC5_DSPI0_RFDF_NUMBER 78
  40. #define SPC5_DSPI0_ENABLE_CLOCK() \
  41. halSPCSetPeripheralClockMode(SPC5_DSPI0_PCTL, SPC5_SPI_DSPI0_START_PCTL)
  42. #define SPC5_DSPI0_DISABLE_CLOCK() \
  43. halSPCSetPeripheralClockMode(SPC5_DSPI0_PCTL, SPC5_SPI_DSPI0_STOP_PCTL)
  44. #define SPC5_HAS_DSPI1 TRUE
  45. #define SPC5_DSPI1_PCTL 5
  46. #define SPC5_DSPI1_TX1_DMA_DEV_ID 3
  47. #define SPC5_DSPI1_TX2_DMA_DEV_ID 0
  48. #define SPC5_DSPI1_RX_DMA_DEV_ID 4
  49. #define SPC5_DSPI1_TFFF_HANDLER vector96
  50. #define SPC5_DSPI1_TFFF_NUMBER 96
  51. #define SPC5_DSPI1_RFDF_HANDLER vector98
  52. #define SPC5_DSPI1_RFDF_NUMBER 98
  53. #define SPC5_DSPI1_ENABLE_CLOCK() \
  54. halSPCSetPeripheralClockMode(SPC5_DSPI1_PCTL, SPC5_SPI_DSPI1_START_PCTL)
  55. #define SPC5_DSPI1_DISABLE_CLOCK() \
  56. halSPCSetPeripheralClockMode(SPC5_DSPI1_PCTL, SPC5_SPI_DSPI1_STOP_PCTL)
  57. #define SPC5_HAS_DSPI2 TRUE
  58. #define SPC5_DSPI2_PCTL 6
  59. #define SPC5_DSPI2_TX1_DMA_DEV_ID 5
  60. #define SPC5_DSPI2_TX2_DMA_DEV_ID 0
  61. #define SPC5_DSPI2_RX_DMA_DEV_ID 6
  62. #define SPC5_DSPI2_TFFF_HANDLER vector116
  63. #define SPC5_DSPI2_TFFF_NUMBER 116
  64. #define SPC5_DSPI2_RFDF_HANDLER vector118
  65. #define SPC5_DSPI2_RFDF_NUMBER 118
  66. #define SPC5_DSPI2_ENABLE_CLOCK() \
  67. halSPCSetPeripheralClockMode(SPC5_DSPI2_PCTL, SPC5_SPI_DSPI2_START_PCTL)
  68. #define SPC5_DSPI2_DISABLE_CLOCK() \
  69. halSPCSetPeripheralClockMode(SPC5_DSPI2_PCTL, SPC5_SPI_DSPI2_STOP_PCTL)
  70. #define SPC5_HAS_DSPI3 FALSE
  71. #define SPC5_HAS_DSPI4 FALSE
  72. #define SPC5_HAS_DSPI5 FALSE
  73. #define SPC5_HAS_DSPI6 FALSE
  74. #define SPC5_HAS_DSPI7 FALSE
  75. /* eDMA attributes.*/
  76. #define SPC5_HAS_EDMA FALSE
  77. /* LINFlex attributes.*/
  78. #define SPC5_HAS_LINFLEX0 TRUE
  79. #define SPC5_LINFLEX0_PCTL 48
  80. #define SPC5_LINFLEX0_RXI_HANDLER vector79
  81. #define SPC5_LINFLEX0_TXI_HANDLER vector80
  82. #define SPC5_LINFLEX0_ERR_HANDLER vector81
  83. #define SPC5_LINFLEX0_RXI_NUMBER 79
  84. #define SPC5_LINFLEX0_TXI_NUMBER 80
  85. #define SPC5_LINFLEX0_ERR_NUMBER 81
  86. #define SPC5_LINFLEX0_CLK (halSPCGetSystemClock() / \
  87. SPC5_PERIPHERAL1_CLK_DIV_VALUE)
  88. #define SPC5_HAS_LINFLEX1 TRUE
  89. #define SPC5_LINFLEX1_PCTL 49
  90. #define SPC5_LINFLEX1_RXI_HANDLER vector99
  91. #define SPC5_LINFLEX1_TXI_HANDLER vector100
  92. #define SPC5_LINFLEX1_ERR_HANDLER vector101
  93. #define SPC5_LINFLEX1_RXI_NUMBER 99
  94. #define SPC5_LINFLEX1_TXI_NUMBER 100
  95. #define SPC5_LINFLEX1_ERR_NUMBER 101
  96. #define SPC5_LINFLEX1_CLK (halSPCGetSystemClock() / \
  97. SPC5_PERIPHERAL1_CLK_DIV_VALUE)
  98. #define SPC5_HAS_LINFLEX2 TRUE
  99. #define SPC5_LINFLEX2_PCTL 50
  100. #define SPC5_LINFLEX2_RXI_HANDLER vector119
  101. #define SPC5_LINFLEX2_TXI_HANDLER vector120
  102. #define SPC5_LINFLEX2_ERR_HANDLER vector121
  103. #define SPC5_LINFLEX2_RXI_NUMBER 119
  104. #define SPC5_LINFLEX2_TXI_NUMBER 120
  105. #define SPC5_LINFLEX2_ERR_NUMBER 121
  106. #define SPC5_LINFLEX2_CLK (halSPCGetSystemClock() / \
  107. SPC5_PERIPHERAL1_CLK_DIV_VALUE)
  108. #define SPC5_HAS_LINFLEX3 TRUE
  109. #define SPC5_LINFLEX3_PCTL 51
  110. #define SPC5_LINFLEX3_RXI_HANDLER vector122
  111. #define SPC5_LINFLEX3_TXI_HANDLER vector123
  112. #define SPC5_LINFLEX3_ERR_HANDLER vector124
  113. #define SPC5_LINFLEX3_RXI_NUMBER 122
  114. #define SPC5_LINFLEX3_TXI_NUMBER 123
  115. #define SPC5_LINFLEX3_ERR_NUMBER 124
  116. #define SPC5_LINFLEX3_CLK (halSPCGetSystemClock() / \
  117. SPC5_PERIPHERAL1_CLK_DIV_VALUE)
  118. #define SPC5_HAS_LINFLEX4 FALSE
  119. #define SPC5_HAS_LINFLEX5 FALSE
  120. #define SPC5_HAS_LINFLEX6 FALSE
  121. #define SPC5_HAS_LINFLEX7 FALSE
  122. #define SPC5_HAS_LINFLEX8 FALSE
  123. #define SPC5_HAS_LINFLEX9 FALSE
  124. /* SIUL attributes.*/
  125. #define SPC5_HAS_SIUL TRUE
  126. #define SPC5_SIUL_PCTL 68
  127. #define SPC5_SIUL_NUM_PORTS 8
  128. #define SPC5_SIUL_NUM_PCRS 123
  129. #define SPC5_SIUL_NUM_PADSELS 32
  130. #define SPC5_SIUL_SYSTEM_PINS 32,33,121,122
  131. /* eMIOS attributes.*/
  132. #define SPC5_HAS_EMIOS0 TRUE
  133. #define SPC5_EMIOS0_PCTL 72
  134. #define SPC5_EMIOS0_GFR_F0F1_HANDLER vector141
  135. #define SPC5_EMIOS0_GFR_F2F3_HANDLER vector142
  136. #define SPC5_EMIOS0_GFR_F4F5_HANDLER vector143
  137. #define SPC5_EMIOS0_GFR_F6F7_HANDLER vector144
  138. #define SPC5_EMIOS0_GFR_F8F9_HANDLER vector145
  139. #define SPC5_EMIOS0_GFR_F10F11_HANDLER vector146
  140. #define SPC5_EMIOS0_GFR_F12F13_HANDLER vector147
  141. #define SPC5_EMIOS0_GFR_F14F15_HANDLER vector148
  142. #define SPC5_EMIOS0_GFR_F16F17_HANDLER vector149
  143. #define SPC5_EMIOS0_GFR_F18F19_HANDLER vector150
  144. #define SPC5_EMIOS0_GFR_F20F21_HANDLER vector151
  145. #define SPC5_EMIOS0_GFR_F22F23_HANDLER vector152
  146. #define SPC5_EMIOS0_GFR_F24F25_HANDLER vector153
  147. #define SPC5_EMIOS0_GFR_F26F27_HANDLER vector154
  148. #define SPC5_EMIOS0_GFR_F0F1_NUMBER 141
  149. #define SPC5_EMIOS0_GFR_F2F3_NUMBER 142
  150. #define SPC5_EMIOS0_GFR_F4F5_NUMBER 143
  151. #define SPC5_EMIOS0_GFR_F6F7_NUMBER 144
  152. #define SPC5_EMIOS0_GFR_F8F9_NUMBER 145
  153. #define SPC5_EMIOS0_GFR_F10F11_NUMBER 146
  154. #define SPC5_EMIOS0_GFR_F12F13_NUMBER 147
  155. #define SPC5_EMIOS0_GFR_F14F15_NUMBER 148
  156. #define SPC5_EMIOS0_GFR_F16F17_NUMBER 149
  157. #define SPC5_EMIOS0_GFR_F18F19_NUMBER 150
  158. #define SPC5_EMIOS0_GFR_F20F21_NUMBER 151
  159. #define SPC5_EMIOS0_GFR_F22F23_NUMBER 152
  160. #define SPC5_EMIOS0_GFR_F24F25_NUMBER 153
  161. #define SPC5_EMIOS0_GFR_F26F27_NUMBER 154
  162. #define SPC5_EMIOS0_CLK (halSPCGetSystemClock() / \
  163. SPC5_PERIPHERAL3_CLK_DIV_VALUE / \
  164. SPC5_EMIOS0_GPRE_VALUE)
  165. #define SPC5_HAS_EMIOS1 TRUE
  166. #define SPC5_EMIOS1_PCTL 73
  167. #define SPC5_EMIOS1_GFR_F0F1_HANDLER vector157
  168. #define SPC5_EMIOS1_GFR_F2F3_HANDLER vector158
  169. #define SPC5_EMIOS1_GFR_F4F5_HANDLER vector159
  170. #define SPC5_EMIOS1_GFR_F6F7_HANDLER vector160
  171. #define SPC5_EMIOS1_GFR_F8F9_HANDLER vector161
  172. #define SPC5_EMIOS1_GFR_F10F11_HANDLER vector162
  173. #define SPC5_EMIOS1_GFR_F12F13_HANDLER vector163
  174. #define SPC5_EMIOS1_GFR_F14F15_HANDLER vector164
  175. #define SPC5_EMIOS1_GFR_F16F17_HANDLER vector165
  176. #define SPC5_EMIOS1_GFR_F18F19_HANDLER vector166
  177. #define SPC5_EMIOS1_GFR_F20F21_HANDLER vector167
  178. #define SPC5_EMIOS1_GFR_F22F23_HANDLER vector168
  179. #define SPC5_EMIOS1_GFR_F24F25_HANDLER vector169
  180. #define SPC5_EMIOS1_GFR_F26F27_HANDLER vector170
  181. #define SPC5_EMIOS1_GFR_F0F1_NUMBER 157
  182. #define SPC5_EMIOS1_GFR_F2F3_NUMBER 158
  183. #define SPC5_EMIOS1_GFR_F4F5_NUMBER 159
  184. #define SPC5_EMIOS1_GFR_F6F7_NUMBER 160
  185. #define SPC5_EMIOS1_GFR_F8F9_NUMBER 161
  186. #define SPC5_EMIOS1_GFR_F10F11_NUMBER 162
  187. #define SPC5_EMIOS1_GFR_F12F13_NUMBER 163
  188. #define SPC5_EMIOS1_GFR_F14F15_NUMBER 164
  189. #define SPC5_EMIOS1_GFR_F16F17_NUMBER 165
  190. #define SPC5_EMIOS1_GFR_F18F19_NUMBER 166
  191. #define SPC5_EMIOS1_GFR_F20F21_NUMBER 167
  192. #define SPC5_EMIOS1_GFR_F22F23_NUMBER 168
  193. #define SPC5_EMIOS1_GFR_F24F25_NUMBER 169
  194. #define SPC5_EMIOS1_GFR_F26F27_NUMBER 170
  195. #define SPC5_EMIOS1_CLK (halSPCGetSystemClock() / \
  196. SPC5_PERIPHERAL3_CLK_DIV_VALUE / \
  197. SPC5_EMIOS1_GPRE_VALUE)
  198. /* FlexCAN attributes.*/
  199. #define SPC5_HAS_FLEXCAN0 TRUE
  200. #define SPC5_FLEXCAN0_PCTL 16
  201. #define SPC5_FLEXCAN0_MB 64
  202. #define SPC5_FLEXCAN0_SHARED_IRQ TRUE
  203. #define SPC5_FLEXCAN0_FLEXCAN_ESR_ERR_INT_HANDLER vector65
  204. #define SPC5_FLEXCAN0_FLEXCAN_ESR_BOFF_HANDLER vector66
  205. #define SPC5_FLEXCAN0_FLEXCAN_BUF_00_03_HANDLER vector68
  206. #define SPC5_FLEXCAN0_FLEXCAN_BUF_04_07_HANDLER vector69
  207. #define SPC5_FLEXCAN0_FLEXCAN_BUF_08_11_HANDLER vector70
  208. #define SPC5_FLEXCAN0_FLEXCAN_BUF_12_15_HANDLER vector71
  209. #define SPC5_FLEXCAN0_FLEXCAN_BUF_16_31_HANDLER vector72
  210. #define SPC5_FLEXCAN0_FLEXCAN_BUF_32_63_HANDLER vector73
  211. #define SPC5_FLEXCAN0_FLEXCAN_ESR_ERR_INT_NUMBER 65
  212. #define SPC5_FLEXCAN0_FLEXCAN_ESR_BOFF_NUMBER 66
  213. #define SPC5_FLEXCAN0_FLEXCAN_BUF_00_03_NUMBER 68
  214. #define SPC5_FLEXCAN0_FLEXCAN_BUF_04_07_NUMBER 69
  215. #define SPC5_FLEXCAN0_FLEXCAN_BUF_08_11_NUMBER 70
  216. #define SPC5_FLEXCAN0_FLEXCAN_BUF_12_15_NUMBER 71
  217. #define SPC5_FLEXCAN0_FLEXCAN_BUF_16_31_NUMBER 72
  218. #define SPC5_FLEXCAN0_FLEXCAN_BUF_32_63_NUMBER 73
  219. #define SPC5_FLEXCAN0_ENABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN0_PCTL, SPC5_CAN_FLEXCAN0_START_PCTL);
  220. #define SPC5_FLEXCAN0_DISABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN0_PCTL, SPC5_CAN_FLEXCAN0_STOP_PCTL);
  221. #define SPC5_HAS_FLEXCAN1 TRUE
  222. #define SPC5_FLEXCAN1_PCTL 17
  223. #define SPC5_FLEXCAN1_MB 64
  224. #define SPC5_FLEXCAN1_SHARED_IRQ TRUE
  225. #define SPC5_FLEXCAN1_FLEXCAN_ESR_ERR_INT_HANDLER vector85
  226. #define SPC5_FLEXCAN1_FLEXCAN_ESR_BOFF_HANDLER vector86
  227. #define SPC5_FLEXCAN1_FLEXCAN_BUF_00_03_HANDLER vector88
  228. #define SPC5_FLEXCAN1_FLEXCAN_BUF_04_07_HANDLER vector89
  229. #define SPC5_FLEXCAN1_FLEXCAN_BUF_08_11_HANDLER vector90
  230. #define SPC5_FLEXCAN1_FLEXCAN_BUF_12_15_HANDLER vector91
  231. #define SPC5_FLEXCAN1_FLEXCAN_BUF_16_31_HANDLER vector92
  232. #define SPC5_FLEXCAN1_FLEXCAN_BUF_32_63_HANDLER vector93
  233. #define SPC5_FLEXCAN1_FLEXCAN_ESR_ERR_INT_NUMBER 85
  234. #define SPC5_FLEXCAN1_FLEXCAN_ESR_BOFF_NUMBER 86
  235. #define SPC5_FLEXCAN1_FLEXCAN_BUF_00_03_NUMBER 88
  236. #define SPC5_FLEXCAN1_FLEXCAN_BUF_04_07_NUMBER 89
  237. #define SPC5_FLEXCAN1_FLEXCAN_BUF_08_11_NUMBER 90
  238. #define SPC5_FLEXCAN1_FLEXCAN_BUF_12_15_NUMBER 91
  239. #define SPC5_FLEXCAN1_FLEXCAN_BUF_16_31_NUMBER 92
  240. #define SPC5_FLEXCAN1_FLEXCAN_BUF_32_63_NUMBER 93
  241. #define SPC5_FLEXCAN1_ENABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN1_PCTL, SPC5_CAN_FLEXCAN1_START_PCTL);
  242. #define SPC5_FLEXCAN1_DISABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN1_PCTL, SPC5_CAN_FLEXCAN1_STOP_PCTL);
  243. #define SPC5_HAS_FLEXCAN2 TRUE
  244. #define SPC5_FLEXCAN2_PCTL 18
  245. #define SPC5_FLEXCAN2_MB 64
  246. #define SPC5_FLEXCAN2_SHARED_IRQ TRUE
  247. #define SPC5_FLEXCAN2_FLEXCAN_ESR_ERR_INT_HANDLER vector105
  248. #define SPC5_FLEXCAN2_FLEXCAN_ESR_BOFF_HANDLER vector106
  249. #define SPC5_FLEXCAN2_FLEXCAN_BUF_00_03_HANDLER vector108
  250. #define SPC5_FLEXCAN2_FLEXCAN_BUF_04_07_HANDLER vector109
  251. #define SPC5_FLEXCAN2_FLEXCAN_BUF_08_11_HANDLER vector110
  252. #define SPC5_FLEXCAN2_FLEXCAN_BUF_12_15_HANDLER vector111
  253. #define SPC5_FLEXCAN2_FLEXCAN_BUF_16_31_HANDLER vector112
  254. #define SPC5_FLEXCAN2_FLEXCAN_BUF_32_63_HANDLER vector113
  255. #define SPC5_FLEXCAN2_FLEXCAN_ESR_ERR_INT_NUMBER 105
  256. #define SPC5_FLEXCAN2_FLEXCAN_ESR_BOFF_NUMBER 106
  257. #define SPC5_FLEXCAN2_FLEXCAN_BUF_00_03_NUMBER 108
  258. #define SPC5_FLEXCAN2_FLEXCAN_BUF_04_07_NUMBER 109
  259. #define SPC5_FLEXCAN2_FLEXCAN_BUF_08_11_NUMBER 110
  260. #define SPC5_FLEXCAN2_FLEXCAN_BUF_12_15_NUMBER 111
  261. #define SPC5_FLEXCAN2_FLEXCAN_BUF_16_31_NUMBER 112
  262. #define SPC5_FLEXCAN2_FLEXCAN_BUF_32_63_NUMBER 113
  263. #define SPC5_FLEXCAN2_ENABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN2_PCTL, SPC5_CAN_FLEXCAN2_START_PCTL);
  264. #define SPC5_FLEXCAN2_DISABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN2_PCTL, SPC5_CAN_FLEXCAN2_START_PCTL);
  265. #define SPC5_HAS_FLEXCAN3 TRUE
  266. #define SPC5_FLEXCAN3_PCTL 19
  267. #define SPC5_FLEXCAN3_MB 64
  268. #define SPC5_FLEXCAN3_SHARED_IRQ TRUE
  269. #define SPC5_FLEXCAN3_FLEXCAN_ESR_ERR_INT_HANDLER vector173
  270. #define SPC5_FLEXCAN3_FLEXCAN_ESR_BOFF_HANDLER vector174
  271. #define SPC5_FLEXCAN3_FLEXCAN_BUF_00_03_HANDLER vector176
  272. #define SPC5_FLEXCAN3_FLEXCAN_BUF_04_07_HANDLER vector177
  273. #define SPC5_FLEXCAN3_FLEXCAN_BUF_08_11_HANDLER vector178
  274. #define SPC5_FLEXCAN3_FLEXCAN_BUF_12_15_HANDLER vector179
  275. #define SPC5_FLEXCAN3_FLEXCAN_BUF_16_31_HANDLER vector180
  276. #define SPC5_FLEXCAN3_FLEXCAN_BUF_32_63_HANDLER vector181
  277. #define SPC5_FLEXCAN3_FLEXCAN_ESR_ERR_INT_NUMBER 173
  278. #define SPC5_FLEXCAN3_FLEXCAN_ESR_BOFF_NUMBER 174
  279. #define SPC5_FLEXCAN3_FLEXCAN_BUF_00_03_NUMBER 176
  280. #define SPC5_FLEXCAN3_FLEXCAN_BUF_04_07_NUMBER 177
  281. #define SPC5_FLEXCAN3_FLEXCAN_BUF_08_11_NUMBER 178
  282. #define SPC5_FLEXCAN3_FLEXCAN_BUF_12_15_NUMBER 179
  283. #define SPC5_FLEXCAN3_FLEXCAN_BUF_16_31_NUMBER 180
  284. #define SPC5_FLEXCAN3_FLEXCAN_BUF_32_63_NUMBER 181
  285. #define SPC5_FLEXCAN3_ENABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN3_PCTL, SPC5_CAN_FLEXCAN3_START_PCTL);
  286. #define SPC5_FLEXCAN3_DISABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN3_PCTL, SPC5_CAN_FLEXCAN3_STOP_PCTL);
  287. #define SPC5_HAS_FLEXCAN4 TRUE
  288. #define SPC5_FLEXCAN4_PCTL 20
  289. #define SPC5_FLEXCAN4_MB 64
  290. #define SPC5_FLEXCAN4_SHARED_IRQ TRUE
  291. #define SPC5_FLEXCAN4_FLEXCAN_ESR_ERR_INT_HANDLER vector190
  292. #define SPC5_FLEXCAN4_FLEXCAN_ESR_BOFF_HANDLER vector191
  293. #define SPC5_FLEXCAN4_FLEXCAN_BUF_00_03_HANDLER vector193
  294. #define SPC5_FLEXCAN4_FLEXCAN_BUF_04_07_HANDLER vector194
  295. #define SPC5_FLEXCAN4_FLEXCAN_BUF_08_11_HANDLER vector195
  296. #define SPC5_FLEXCAN4_FLEXCAN_BUF_12_15_HANDLER vector196
  297. #define SPC5_FLEXCAN4_FLEXCAN_BUF_16_31_HANDLER vector197
  298. #define SPC5_FLEXCAN4_FLEXCAN_BUF_32_63_HANDLER vector198
  299. #define SPC5_FLEXCAN4_FLEXCAN_ESR_ERR_INT_NUMBER 190
  300. #define SPC5_FLEXCAN4_FLEXCAN_ESR_BOFF_NUMBER 191
  301. #define SPC5_FLEXCAN4_FLEXCAN_BUF_00_03_NUMBER 193
  302. #define SPC5_FLEXCAN4_FLEXCAN_BUF_04_07_NUMBER 194
  303. #define SPC5_FLEXCAN4_FLEXCAN_BUF_08_11_NUMBER 195
  304. #define SPC5_FLEXCAN4_FLEXCAN_BUF_12_15_NUMBER 196
  305. #define SPC5_FLEXCAN4_FLEXCAN_BUF_16_31_NUMBER 197
  306. #define SPC5_FLEXCAN4_FLEXCAN_BUF_32_63_NUMBER 198
  307. #define SPC5_FLEXCAN4_ENABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN4_PCTL, SPC5_CAN_FLEXCAN4_START_PCTL);
  308. #define SPC5_FLEXCAN4_DISABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN4_PCTL, SPC5_CAN_FLEXCAN4_STOP_PCTL);
  309. #define SPC5_HAS_FLEXCAN5 TRUE
  310. #define SPC5_FLEXCAN5_PCTL 21
  311. #define SPC5_FLEXCAN5_MB 64
  312. #define SPC5_FLEXCAN5_SHARED_IRQ TRUE
  313. #define SPC5_FLEXCAN5_FLEXCAN_ESR_ERR_INT_HANDLER vector202
  314. #define SPC5_FLEXCAN5_FLEXCAN_ESR_BOFF_HANDLER vector203
  315. #define SPC5_FLEXCAN5_FLEXCAN_BUF_00_03_HANDLER vector205
  316. #define SPC5_FLEXCAN5_FLEXCAN_BUF_04_07_HANDLER vector206
  317. #define SPC5_FLEXCAN5_FLEXCAN_BUF_08_11_HANDLER vector207
  318. #define SPC5_FLEXCAN5_FLEXCAN_BUF_12_15_HANDLER vector208
  319. #define SPC5_FLEXCAN5_FLEXCAN_BUF_16_31_HANDLER vector209
  320. #define SPC5_FLEXCAN5_FLEXCAN_BUF_32_63_HANDLER vector210
  321. #define SPC5_FLEXCAN5_FLEXCAN_ESR_ERR_INT_NUMBER 202
  322. #define SPC5_FLEXCAN5_FLEXCAN_ESR_BOFF_NUMBER 203
  323. #define SPC5_FLEXCAN5_FLEXCAN_BUF_00_03_NUMBER 205
  324. #define SPC5_FLEXCAN5_FLEXCAN_BUF_04_07_NUMBER 206
  325. #define SPC5_FLEXCAN5_FLEXCAN_BUF_08_11_NUMBER 207
  326. #define SPC5_FLEXCAN5_FLEXCAN_BUF_12_15_NUMBER 208
  327. #define SPC5_FLEXCAN5_FLEXCAN_BUF_16_31_NUMBER 209
  328. #define SPC5_FLEXCAN5_FLEXCAN_BUF_32_63_NUMBER 210
  329. #define SPC5_FLEXCAN5_ENABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN5_PCTL, SPC5_CAN_FLEXCAN5_START_PCTL);
  330. #define SPC5_FLEXCAN5_DISABLE_CLOCK() halSPCSetPeripheralClockMode(SPC5_FLEXCAN5_PCTL, SPC5_CAN_FLEXCAN5_STOP_PCTL);
  331. /* ADC attributes.*/
  332. #define SPC5_ADC_HAS_TRC TRUE
  333. #define SPC5_HAS_ADC0 TRUE
  334. #define SPC5_ADC_ADC0_HAS_CTR0 TRUE
  335. #define SPC5_ADC_ADC0_HAS_CTR1 TRUE
  336. #define SPC5_ADC_ADC0_HAS_CTR2 TRUE
  337. #define SPC5_ADC_ADC0_HAS_NCMR0 TRUE
  338. #define SPC5_ADC_ADC0_HAS_NCMR1 TRUE
  339. #define SPC5_ADC_ADC0_HAS_NCMR2 TRUE
  340. #define SPC5_ADC_ADC0_HAS_THRHLR0 TRUE
  341. #define SPC5_ADC_ADC0_HAS_THRHLR1 TRUE
  342. #define SPC5_ADC_ADC0_HAS_THRHLR2 TRUE
  343. #define SPC5_ADC_ADC0_HAS_THRHLR3 TRUE
  344. #define SPC5_ADC_ADC0_HAS_THRHLR4 FALSE
  345. #define SPC5_ADC_ADC0_HAS_THRHLR5 FALSE
  346. #define SPC5_ADC_ADC0_HAS_THRHLR6 FALSE
  347. #define SPC5_ADC_ADC0_HAS_THRHLR7 FALSE
  348. #define SPC5_ADC_ADC0_HAS_THRHLR8 FALSE
  349. #define SPC5_ADC_ADC0_HAS_THRHLR9 FALSE
  350. #define SPC5_ADC_ADC0_HAS_THRHLR10 FALSE
  351. #define SPC5_ADC_ADC0_HAS_THRHLR11 FALSE
  352. #define SPC5_ADC_ADC0_HAS_THRHLR12 FALSE
  353. #define SPC5_ADC_ADC0_HAS_THRHLR13 FALSE
  354. #define SPC5_ADC_ADC0_HAS_THRHLR14 FALSE
  355. #define SPC5_ADC_ADC0_HAS_THRHLR15 FALSE
  356. #define SPC5_ADC_ADC0_HAS_CWENR0 FALSE
  357. #define SPC5_ADC_ADC0_HAS_CWENR1 FALSE
  358. #define SPC5_ADC_ADC0_HAS_CWENR2 FALSE
  359. #define SPC5_ADC_ADC0_HAS_CWSEL0 FALSE
  360. #define SPC5_ADC_ADC0_HAS_CWSEL1 FALSE
  361. #define SPC5_ADC_ADC0_HAS_CWSEL2 FALSE
  362. #define SPC5_ADC_ADC0_HAS_CWSEL3 FALSE
  363. #define SPC5_ADC_ADC0_HAS_CWSEL4 FALSE
  364. #define SPC5_ADC_ADC0_HAS_CWSEL5 FALSE
  365. #define SPC5_ADC_ADC0_HAS_CWSEL6 FALSE
  366. #define SPC5_ADC_ADC0_HAS_CWSEL7 FALSE
  367. #define SPC5_ADC_ADC0_HAS_CWSEL8 FALSE
  368. #define SPC5_ADC_ADC0_HAS_CWSEL9 FALSE
  369. #define SPC5_ADC_ADC0_HAS_CWSEL10 FALSE
  370. #define SPC5_ADC_ADC0_HAS_CWSEL11 FALSE
  371. #define SPC5_ADC_ADC0_HAS_CIMR0 TRUE
  372. #define SPC5_ADC_ADC0_HAS_CIMR1 TRUE
  373. #define SPC5_ADC_ADC0_HAS_CIMR2 TRUE
  374. #define SPC5_ADC_ADC0_HAS_CEOCFR0 TRUE
  375. #define SPC5_ADC_ADC0_HAS_CEOCFR1 TRUE
  376. #define SPC5_ADC_ADC0_HAS_CEOCFR2 TRUE
  377. #define SPC5_ADC0_PCTL 32
  378. #define SPC5_ADC0_EOC_HANDLER vector62
  379. #define SPC5_ADC0_EOC_NUMBER 62
  380. #define SPC5_ADC0_WD_HANDLER vector64
  381. #define SPC5_ADC0_WD_NUMBER 64
  382. #define SPC5_HAS_ADC1 FALSE
  383. /** @} */
  384. #endif /* SPC5_REGISTRY_H */
  385. /** @} */