pin_data.c 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308
  1. /* generated pin source file - do not edit */
  2. #include "bsp_api.h"
  3. #if __has_include("r_ioport.h")
  4. #include "r_ioport.h"
  5. #elif __has_include("r_ioport_b.h")
  6. #include "r_ioport_b.h"
  7. #endif
  8. const ioport_pin_cfg_t g_bsp_pin_cfg_data[] = {
  9. {
  10. .pin = BSP_IO_PORT_00_PIN_00,
  11. .pin_cfg = ((uint32_t) IOPORT_CFG_PORT_DIRECTION_INPUT)
  12. },
  13. {
  14. .pin = BSP_IO_PORT_00_PIN_02,
  15. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  16. },
  17. {
  18. .pin = BSP_IO_PORT_00_PIN_03,
  19. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  20. },
  21. {
  22. .pin = BSP_IO_PORT_00_PIN_04,
  23. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  24. },
  25. {
  26. .pin = BSP_IO_PORT_00_PIN_05,
  27. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  28. },
  29. {
  30. .pin = BSP_IO_PORT_00_PIN_07,
  31. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  32. },
  33. {
  34. .pin = BSP_IO_PORT_00_PIN_08,
  35. .pin_cfg = ((uint32_t) IOPORT_CFG_IRQ_ENABLE | (uint32_t) IOPORT_CFG_PORT_DIRECTION_INPUT)
  36. },
  37. {
  38. .pin = BSP_IO_PORT_00_PIN_09,
  39. .pin_cfg = ((uint32_t) IOPORT_CFG_IRQ_ENABLE | (uint32_t) IOPORT_CFG_PORT_DIRECTION_INPUT)
  40. },
  41. {
  42. .pin = BSP_IO_PORT_00_PIN_11,
  43. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  44. },
  45. {
  46. .pin = BSP_IO_PORT_00_PIN_14,
  47. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  48. },
  49. {
  50. .pin = BSP_IO_PORT_00_PIN_15,
  51. .pin_cfg = ((uint32_t) IOPORT_CFG_ANALOG_ENABLE)
  52. },
  53. {
  54. .pin = BSP_IO_PORT_01_PIN_00,
  55. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  56. },
  57. {
  58. .pin = BSP_IO_PORT_01_PIN_01,
  59. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  60. },
  61. {
  62. .pin = BSP_IO_PORT_01_PIN_02,
  63. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  64. },
  65. {
  66. .pin = BSP_IO_PORT_01_PIN_03,
  67. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  68. },
  69. {
  70. .pin = BSP_IO_PORT_01_PIN_04,
  71. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  72. },
  73. {
  74. .pin = BSP_IO_PORT_01_PIN_05,
  75. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  76. },
  77. {
  78. .pin = BSP_IO_PORT_01_PIN_06,
  79. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  80. },
  81. {
  82. .pin = BSP_IO_PORT_01_PIN_07,
  83. .pin_cfg = ((uint32_t) IOPORT_CFG_PORT_DIRECTION_OUTPUT | (uint32_t) IOPORT_CFG_PORT_OUTPUT_LOW)
  84. },
  85. {
  86. .pin = BSP_IO_PORT_01_PIN_12,
  87. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  88. },
  89. {
  90. .pin = BSP_IO_PORT_01_PIN_14,
  91. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  92. },
  93. {
  94. .pin = BSP_IO_PORT_02_PIN_08,
  95. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_DEBUG)
  96. },
  97. {
  98. .pin = BSP_IO_PORT_02_PIN_09,
  99. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_DEBUG)
  100. },
  101. {
  102. .pin = BSP_IO_PORT_02_PIN_10,
  103. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_DEBUG)
  104. },
  105. {
  106. .pin = BSP_IO_PORT_02_PIN_11,
  107. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_DEBUG)
  108. },
  109. {
  110. .pin = BSP_IO_PORT_03_PIN_00,
  111. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  112. },
  113. {
  114. .pin = BSP_IO_PORT_03_PIN_01,
  115. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  116. },
  117. {
  118. .pin = BSP_IO_PORT_03_PIN_02,
  119. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  120. },
  121. {
  122. .pin = BSP_IO_PORT_03_PIN_03,
  123. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  124. },
  125. {
  126. .pin = BSP_IO_PORT_03_PIN_04,
  127. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  128. },
  129. {
  130. .pin = BSP_IO_PORT_03_PIN_05,
  131. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  132. },
  133. {
  134. .pin = BSP_IO_PORT_03_PIN_06,
  135. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  136. },
  137. {
  138. .pin = BSP_IO_PORT_03_PIN_07,
  139. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  140. },
  141. {
  142. .pin = BSP_IO_PORT_03_PIN_08,
  143. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_ETHER_RMII)
  144. },
  145. {
  146. .pin = BSP_IO_PORT_04_PIN_07,
  147. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_FS)
  148. },
  149. {
  150. .pin = BSP_IO_PORT_04_PIN_08,
  151. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_HS)
  152. },
  153. {
  154. .pin = BSP_IO_PORT_04_PIN_09,
  155. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_HS)
  156. },
  157. {
  158. .pin = BSP_IO_PORT_04_PIN_10,
  159. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_MID | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SPI)
  160. },
  161. {
  162. .pin = BSP_IO_PORT_04_PIN_11,
  163. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_MID | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SPI)
  164. },
  165. {
  166. .pin = BSP_IO_PORT_04_PIN_12,
  167. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SPI)
  168. },
  169. {
  170. .pin = BSP_IO_PORT_04_PIN_13,
  171. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_MID | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SPI)
  172. },
  173. {
  174. .pin = BSP_IO_PORT_04_PIN_14,
  175. .pin_cfg = ((uint32_t) IOPORT_CFG_PORT_DIRECTION_OUTPUT | (uint32_t) IOPORT_CFG_PORT_OUTPUT_LOW)
  176. },
  177. {
  178. .pin = BSP_IO_PORT_05_PIN_00,
  179. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_FS)
  180. },
  181. {
  182. .pin = BSP_IO_PORT_05_PIN_01,
  183. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_FS)
  184. },
  185. {
  186. .pin = BSP_IO_PORT_05_PIN_11,
  187. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_MID | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_IIC)
  188. },
  189. {
  190. .pin = BSP_IO_PORT_05_PIN_12,
  191. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_MID | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_IIC)
  192. },
  193. {
  194. .pin = BSP_IO_PORT_06_PIN_00,
  195. .pin_cfg = ((uint32_t) IOPORT_CFG_PORT_DIRECTION_OUTPUT | (uint32_t) IOPORT_CFG_PORT_OUTPUT_LOW)
  196. },
  197. {
  198. .pin = BSP_IO_PORT_08_PIN_00,
  199. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  200. },
  201. {
  202. .pin = BSP_IO_PORT_08_PIN_01,
  203. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  204. },
  205. {
  206. .pin = BSP_IO_PORT_08_PIN_02,
  207. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  208. },
  209. {
  210. .pin = BSP_IO_PORT_08_PIN_03,
  211. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  212. },
  213. {
  214. .pin = BSP_IO_PORT_08_PIN_04,
  215. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  216. },
  217. {
  218. .pin = BSP_IO_PORT_08_PIN_08,
  219. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_OSPI)
  220. },
  221. {
  222. .pin = BSP_IO_PORT_08_PIN_09,
  223. .pin_cfg = ((uint32_t) IOPORT_CFG_PORT_DIRECTION_OUTPUT | (uint32_t) IOPORT_CFG_PORT_OUTPUT_LOW)
  224. },
  225. {
  226. .pin = BSP_IO_PORT_08_PIN_14,
  227. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_FS)
  228. },
  229. {
  230. .pin = BSP_IO_PORT_08_PIN_15,
  231. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_FS)
  232. },
  233. {
  234. .pin = BSP_IO_PORT_10_PIN_02,
  235. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SCI0_2_4_6_8)
  236. },
  237. {
  238. .pin = BSP_IO_PORT_10_PIN_03,
  239. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SCI0_2_4_6_8)
  240. },
  241. {
  242. .pin = BSP_IO_PORT_10_PIN_04,
  243. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SCI0_2_4_6_8)
  244. },
  245. {
  246. .pin = BSP_IO_PORT_10_PIN_05,
  247. .pin_cfg = ((uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SCI0_2_4_6_8)
  248. },
  249. {
  250. .pin = BSP_IO_PORT_10_PIN_06,
  251. .pin_cfg = ((uint32_t) IOPORT_CFG_PORT_DIRECTION_INPUT)
  252. },
  253. {
  254. .pin = BSP_IO_PORT_10_PIN_14,
  255. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_HIGH | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SCI1_3_5_7_9)
  256. },
  257. {
  258. .pin = BSP_IO_PORT_10_PIN_15,
  259. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_HIGH | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_SCI1_3_5_7_9)
  260. },
  261. {
  262. .pin = BSP_IO_PORT_11_PIN_01,
  263. .pin_cfg = ((uint32_t) IOPORT_CFG_DRIVE_HIGH | (uint32_t) IOPORT_CFG_PERIPHERAL_PIN | (uint32_t) IOPORT_PERIPHERAL_USB_HS)
  264. },
  265. };
  266. const ioport_cfg_t g_bsp_pin_cfg = {
  267. .number_of_pins = sizeof(g_bsp_pin_cfg_data)/sizeof(ioport_pin_cfg_t),
  268. .p_pin_cfg_data = &g_bsp_pin_cfg_data[0],
  269. };
  270. #if __has_include("r_ioport.h")
  271. #if BSP_TZ_SECURE_BUILD
  272. void R_BSP_PinCfgSecurityInit(void);
  273. /* Initialize SAR registers for secure pins. */
  274. void R_BSP_PinCfgSecurityInit(void)
  275. {
  276. #if (2U == BSP_FEATURE_IOPORT_VERSION)
  277. uint32_t pmsar[BSP_FEATURE_BSP_NUM_PMSAR];
  278. #else
  279. uint16_t pmsar[BSP_FEATURE_BSP_NUM_PMSAR];
  280. #endif
  281. memset(pmsar, 0xFF, BSP_FEATURE_BSP_NUM_PMSAR * sizeof(R_PMISC->PMSAR[0]));
  282. for(uint32_t i = 0; i < g_bsp_pin_cfg.number_of_pins; i++)
  283. {
  284. uint32_t port_pin = g_bsp_pin_cfg.p_pin_cfg_data[i].pin;
  285. uint32_t port = port_pin >> 8U;
  286. uint32_t pin = port_pin & 0xFFU;
  287. pmsar[port] &= (uint16_t) ~(1U << pin);
  288. }
  289. for(uint32_t i = 0; i < BSP_FEATURE_BSP_NUM_PMSAR; i++)
  290. {
  291. #if (2U == BSP_FEATURE_IOPORT_VERSION)
  292. R_PMISC->PMSAR[i].PMSAR = (uint16_t) pmsar[i];
  293. #else
  294. R_PMISC->PMSAR[i].PMSAR = pmsar[i];
  295. #endif
  296. }
  297. }
  298. #endif
  299. #endif