sercom_pinout.h 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547
  1. /**
  2. * \file
  3. *
  4. * \brief SAM SERCOM Module Pinout Definitions
  5. *
  6. * Copyright (C) 2012-2016 Atmel Corporation. All rights reserved.
  7. *
  8. * \asf_license_start
  9. *
  10. * \page License
  11. *
  12. * Redistribution and use in source and binary forms, with or without
  13. * modification, are permitted provided that the following conditions are met:
  14. *
  15. * 1. Redistributions of source code must retain the above copyright notice,
  16. * this list of conditions and the following disclaimer.
  17. *
  18. * 2. Redistributions in binary form must reproduce the above copyright notice,
  19. * this list of conditions and the following disclaimer in the documentation
  20. * and/or other materials provided with the distribution.
  21. *
  22. * 3. The name of Atmel may not be used to endorse or promote products derived
  23. * from this software without specific prior written permission.
  24. *
  25. * 4. This software may only be redistributed and used in connection with an
  26. * Atmel microcontroller product.
  27. *
  28. * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
  29. * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  30. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
  31. * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
  32. * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  33. * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  34. * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  35. * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
  36. * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
  37. * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  38. * POSSIBILITY OF SUCH DAMAGE.
  39. *
  40. * \asf_license_stop
  41. *
  42. */
  43. /*
  44. * Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a>
  45. */
  46. #ifndef SERCOM_PINOUT_H_INCLUDED
  47. #define SERCOM_PINOUT_H_INCLUDED
  48. #include <compiler.h>
  49. #if SAMR21E
  50. /* SERCOM0 */
  51. #define SERCOM0_PAD0_DEFAULT PINMUX_PA08C_SERCOM0_PAD0
  52. #define SERCOM0_PAD1_DEFAULT PINMUX_PA09C_SERCOM0_PAD1
  53. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  54. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  55. /* SERCOM1 */
  56. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  57. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  58. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  59. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  60. /* SERCOM2 */
  61. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  62. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  63. #define SERCOM2_PAD2_DEFAULT PINMUX_PA14C_SERCOM2_PAD2
  64. #define SERCOM2_PAD3_DEFAULT PINMUX_PA15C_SERCOM2_PAD3
  65. /* SERCOM3 */
  66. # if SAM_PART_IS_DEFINED(SAMR21E19A)
  67. #define SERCOM3_PAD0_DEFAULT PINMUX_PA16D_SERCOM3_PAD0
  68. #define SERCOM3_PAD1_DEFAULT PINMUX_PA17D_SERCOM3_PAD1
  69. # else
  70. #define SERCOM3_PAD0_DEFAULT PINMUX_PA27F_SERCOM3_PAD0
  71. #define SERCOM3_PAD1_DEFAULT PINMUX_PA28F_SERCOM3_PAD1
  72. #endif
  73. #define SERCOM3_PAD2_DEFAULT PINMUX_PA24C_SERCOM3_PAD2
  74. #define SERCOM3_PAD3_DEFAULT PINMUX_PA25C_SERCOM3_PAD3
  75. /* SERCOM4 */
  76. # if SAM_PART_IS_DEFINED(SAMR21E19A)
  77. #define SERCOM4_PAD0_DEFAULT PINMUX_PB08D_SERCOM4_PAD0
  78. #define SERCOM4_PAD1_DEFAULT PINMUX_PB09D_SERCOM4_PAD1
  79. #define SERCOM4_PAD2_DEFAULT PINMUX_PA14D_SERCOM4_PAD2
  80. #define SERCOM4_PAD3_DEFAULT PINMUX_PA15D_SERCOM4_PAD3
  81. # else
  82. #define SERCOM4_PAD0_DEFAULT PINMUX_PC19F_SERCOM4_PAD0
  83. #define SERCOM4_PAD1_DEFAULT PINMUX_PB31F_SERCOM4_PAD1
  84. #define SERCOM4_PAD2_DEFAULT PINMUX_PB30F_SERCOM4_PAD2
  85. #define SERCOM4_PAD3_DEFAULT PINMUX_PC18F_SERCOM4_PAD3
  86. # endif
  87. /* SERCOM5 */
  88. #define SERCOM5_PAD0_DEFAULT PINMUX_PB30D_SERCOM5_PAD0
  89. #define SERCOM5_PAD1_DEFAULT PINMUX_PB31D_SERCOM5_PAD1
  90. #define SERCOM5_PAD2_DEFAULT PINMUX_PA24D_SERCOM5_PAD2
  91. #define SERCOM5_PAD3_DEFAULT PINMUX_PA25D_SERCOM5_PAD3
  92. #elif SAMR21G
  93. /* SERCOM0 */
  94. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  95. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  96. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  97. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  98. /* SERCOM1 */
  99. #define SERCOM1_PAD0_DEFAULT PINMUX_PA00D_SERCOM1_PAD0
  100. #define SERCOM1_PAD1_DEFAULT PINMUX_PA01D_SERCOM1_PAD1
  101. #define SERCOM1_PAD2_DEFAULT PINMUX_PA30D_SERCOM1_PAD2
  102. #define SERCOM1_PAD3_DEFAULT PINMUX_PA31D_SERCOM1_PAD3
  103. /* SERCOM2 */
  104. #define SERCOM2_PAD0_DEFAULT PINMUX_PA12C_SERCOM2_PAD0
  105. #define SERCOM2_PAD1_DEFAULT PINMUX_PA13C_SERCOM2_PAD1
  106. #define SERCOM2_PAD2_DEFAULT PINMUX_PA14C_SERCOM2_PAD2
  107. #define SERCOM2_PAD3_DEFAULT PINMUX_PA15C_SERCOM2_PAD3
  108. /* SERCOM3 */
  109. #define SERCOM3_PAD0_DEFAULT PINMUX_PA16D_SERCOM3_PAD0
  110. #define SERCOM3_PAD1_DEFAULT PINMUX_PA17D_SERCOM3_PAD1
  111. #define SERCOM3_PAD2_DEFAULT PINMUX_PA18D_SERCOM3_PAD2
  112. #define SERCOM3_PAD3_DEFAULT PINMUX_PA19D_SERCOM3_PAD3
  113. /* SERCOM4 */
  114. #define SERCOM4_PAD0_DEFAULT PINMUX_PC19F_SERCOM4_PAD0
  115. #define SERCOM4_PAD1_DEFAULT PINMUX_PB31F_SERCOM4_PAD1
  116. #define SERCOM4_PAD2_DEFAULT PINMUX_PB30F_SERCOM4_PAD2
  117. #define SERCOM4_PAD3_DEFAULT PINMUX_PC18F_SERCOM4_PAD3
  118. /* SERCOM5 */
  119. #define SERCOM5_PAD0_DEFAULT PINMUX_PA22D_SERCOM5_PAD0
  120. #define SERCOM5_PAD1_DEFAULT PINMUX_PA23D_SERCOM5_PAD1
  121. #define SERCOM5_PAD2_DEFAULT PINMUX_PA24D_SERCOM5_PAD2
  122. #define SERCOM5_PAD3_DEFAULT PINMUX_PA25D_SERCOM5_PAD3
  123. #elif (SAMD09)
  124. /* SERCOM0 */
  125. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  126. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  127. #define SERCOM0_PAD2_DEFAULT PINMUX_PA08D_SERCOM0_PAD2
  128. #define SERCOM0_PAD3_DEFAULT PINMUX_PA09D_SERCOM0_PAD3
  129. /* SERCOM1 */
  130. #define SERCOM1_PAD0_DEFAULT PINMUX_PA30C_SERCOM1_PAD0
  131. #define SERCOM1_PAD1_DEFAULT PINMUX_PA31C_SERCOM1_PAD1
  132. #define SERCOM1_PAD2_DEFAULT PINMUX_PA24C_SERCOM1_PAD2
  133. #define SERCOM1_PAD3_DEFAULT PINMUX_PA25C_SERCOM1_PAD3
  134. #elif (SAMD10DS) || (SAMD10DM) || (SAMD10DU) || (SAMD11DS) || (SAMD11DM) || (SAMD11DU)
  135. /* SERCOM0 */
  136. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  137. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  138. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  139. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  140. /* SERCOM1 */
  141. #define SERCOM1_PAD0_DEFAULT PINMUX_PA22C_SERCOM1_PAD0
  142. #define SERCOM1_PAD1_DEFAULT PINMUX_PA23C_SERCOM1_PAD1
  143. #define SERCOM1_PAD2_DEFAULT PINMUX_PA30D_SERCOM1_PAD2
  144. #define SERCOM1_PAD3_DEFAULT PINMUX_PA31D_SERCOM1_PAD3
  145. /* SERCOM2 */
  146. #define SERCOM2_PAD0_DEFAULT PINMUX_PA22D_SERCOM2_PAD0
  147. #define SERCOM2_PAD1_DEFAULT PINMUX_PA23D_SERCOM2_PAD1
  148. #define SERCOM2_PAD2_DEFAULT PINMUX_PA16D_SERCOM2_PAD2
  149. #define SERCOM2_PAD3_DEFAULT PINMUX_PA25D_SERCOM2_PAD3
  150. #elif (SAMD10C) || (SAMD11C)
  151. /* SERCOM0 */
  152. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  153. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  154. #define SERCOM0_PAD2_DEFAULT PINMUX_PA08D_SERCOM0_PAD2
  155. #define SERCOM0_PAD3_DEFAULT PINMUX_PA09D_SERCOM0_PAD3
  156. /* SERCOM1 */
  157. #define SERCOM1_PAD0_DEFAULT PINMUX_PA30C_SERCOM1_PAD0
  158. #define SERCOM1_PAD1_DEFAULT PINMUX_PA31C_SERCOM1_PAD1
  159. #define SERCOM1_PAD2_DEFAULT PINMUX_PA24C_SERCOM1_PAD2
  160. #define SERCOM1_PAD3_DEFAULT PINMUX_PA25C_SERCOM1_PAD3
  161. #elif SAM_PART_IS_DEFINED(SAMD21E15L) || SAM_PART_IS_DEFINED(SAMD21E16L)
  162. /* SERCOM0 */
  163. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  164. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  165. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  166. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  167. /* SERCOM1 */
  168. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  169. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  170. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  171. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  172. /* SERCOM2 */
  173. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  174. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  175. #define SERCOM2_PAD2_DEFAULT PINMUX_PA10D_SERCOM2_PAD2
  176. #define SERCOM2_PAD3_DEFAULT PINMUX_PA11D_SERCOM2_PAD3
  177. /* SERCOM3 */
  178. #define SERCOM3_PAD0_DEFAULT PINMUX_PA22C_SERCOM3_PAD0
  179. #define SERCOM3_PAD1_DEFAULT PINMUX_PA23C_SERCOM3_PAD1
  180. #define SERCOM3_PAD2_DEFAULT PINMUX_PA24C_SERCOM3_PAD2
  181. #define SERCOM3_PAD3_DEFAULT PINMUX_PA25C_SERCOM3_PAD3
  182. #elif (SAML22N)
  183. /* SERCOM0 */
  184. #define SERCOM0_PAD0_DEFAULT PINMUX_PA08C_SERCOM0_PAD0
  185. #define SERCOM0_PAD1_DEFAULT PINMUX_PA09C_SERCOM0_PAD1
  186. #define SERCOM0_PAD2_DEFAULT PINMUX_PA10C_SERCOM0_PAD2
  187. #define SERCOM0_PAD3_DEFAULT PINMUX_PA11C_SERCOM0_PAD3
  188. /* SERCOM1 */
  189. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  190. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  191. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  192. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  193. /* SERCOM2 */
  194. #define SERCOM2_PAD0_DEFAULT PINMUX_PA22D_SERCOM2_PAD0
  195. #define SERCOM2_PAD1_DEFAULT PINMUX_PA23D_SERCOM2_PAD1
  196. #define SERCOM2_PAD2_DEFAULT PINMUX_PA20D_SERCOM2_PAD2
  197. #define SERCOM2_PAD3_DEFAULT PINMUX_PA21D_SERCOM2_PAD3
  198. /* SERCOM3 */
  199. #define SERCOM3_PAD0_DEFAULT PINMUX_PB02C_SERCOM3_PAD0
  200. #define SERCOM3_PAD1_DEFAULT PINMUX_PB21C_SERCOM3_PAD1
  201. #define SERCOM3_PAD2_DEFAULT PINMUX_PB00C_SERCOM3_PAD2
  202. #define SERCOM3_PAD3_DEFAULT PINMUX_PB01C_SERCOM3_PAD3
  203. /* SERCOM4 */
  204. #define SERCOM4_PAD0_DEFAULT PINMUX_PA12C_SERCOM4_PAD0
  205. #define SERCOM4_PAD1_DEFAULT PINMUX_PA13C_SERCOM4_PAD1
  206. #define SERCOM4_PAD2_DEFAULT PINMUX_PA14C_SERCOM4_PAD2
  207. #define SERCOM4_PAD3_DEFAULT PINMUX_PA15C_SERCOM4_PAD3
  208. /* SERCOM5 */
  209. #define SERCOM5_PAD0_DEFAULT PINMUX_PB30D_SERCOM5_PAD0
  210. #define SERCOM5_PAD1_DEFAULT PINMUX_PB31D_SERCOM5_PAD1
  211. #define SERCOM5_PAD2_DEFAULT PINMUX_PB22D_SERCOM5_PAD2
  212. #define SERCOM5_PAD3_DEFAULT PINMUX_PB23D_SERCOM5_PAD3
  213. #elif (SAML22J) || (SAML22G)
  214. /* SERCOM0 */
  215. #define SERCOM0_PAD0_DEFAULT PINMUX_PA08C_SERCOM0_PAD0
  216. #define SERCOM0_PAD1_DEFAULT PINMUX_PA09C_SERCOM0_PAD1
  217. #define SERCOM0_PAD2_DEFAULT PINMUX_PA10C_SERCOM0_PAD2
  218. #define SERCOM0_PAD3_DEFAULT PINMUX_PA11C_SERCOM0_PAD3
  219. /* SERCOM1 */
  220. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  221. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  222. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  223. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  224. /* SERCOM2 */
  225. #define SERCOM2_PAD0_DEFAULT PINMUX_PA22D_SERCOM2_PAD0
  226. #define SERCOM2_PAD1_DEFAULT PINMUX_PA23D_SERCOM2_PAD1
  227. #define SERCOM2_PAD2_DEFAULT PINMUX_PA20D_SERCOM2_PAD2
  228. #define SERCOM2_PAD3_DEFAULT PINMUX_PA21D_SERCOM2_PAD3
  229. /* SERCOM3 */
  230. #define SERCOM3_PAD0_DEFAULT PINMUX_PA12D_SERCOM3_PAD0
  231. #define SERCOM3_PAD1_DEFAULT PINMUX_PA13D_SERCOM3_PAD1
  232. #define SERCOM3_PAD2_DEFAULT PINMUX_PA14D_SERCOM3_PAD2
  233. #define SERCOM3_PAD3_DEFAULT PINMUX_PA15D_SERCOM3_PAD3
  234. #elif (SAMC20E) || (SAMC21E)
  235. /* SERCOM0 */
  236. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  237. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  238. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  239. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  240. /* SERCOM1 */
  241. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  242. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  243. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  244. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  245. /* SERCOM2 */
  246. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  247. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  248. #define SERCOM2_PAD2_DEFAULT PINMUX_PA10D_SERCOM2_PAD2
  249. #define SERCOM2_PAD3_DEFAULT PINMUX_PA11D_SERCOM2_PAD3
  250. /* SERCOM3 */
  251. #define SERCOM3_PAD0_DEFAULT PINMUX_PA22C_SERCOM3_PAD0
  252. #define SERCOM3_PAD1_DEFAULT PINMUX_PA23C_SERCOM3_PAD1
  253. #define SERCOM3_PAD2_DEFAULT PINMUX_PA24C_SERCOM3_PAD2
  254. #define SERCOM3_PAD3_DEFAULT PINMUX_PA25C_SERCOM3_PAD3
  255. #elif (SAMC20G) || (SAMC21G)
  256. /* SERCOM0 */
  257. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  258. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  259. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  260. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  261. /* SERCOM1 */
  262. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  263. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  264. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  265. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  266. /* SERCOM2 */
  267. #define SERCOM2_PAD0_DEFAULT PINMUX_PA12C_SERCOM2_PAD0
  268. #define SERCOM2_PAD1_DEFAULT PINMUX_PA13C_SERCOM2_PAD1
  269. #define SERCOM2_PAD2_DEFAULT PINMUX_PA14C_SERCOM2_PAD2
  270. #define SERCOM2_PAD3_DEFAULT PINMUX_PA15C_SERCOM2_PAD3
  271. /* SERCOM3 */
  272. #define SERCOM3_PAD0_DEFAULT PINMUX_PA22C_SERCOM3_PAD0
  273. #define SERCOM3_PAD1_DEFAULT PINMUX_PA23C_SERCOM3_PAD1
  274. #define SERCOM3_PAD2_DEFAULT PINMUX_PA24C_SERCOM3_PAD2
  275. #define SERCOM3_PAD3_DEFAULT PINMUX_PA25C_SERCOM3_PAD3
  276. #ifdef ID_SERCOM4
  277. /* SERCOM4 */
  278. #define SERCOM4_PAD0_DEFAULT PINMUX_PB08D_SERCOM4_PAD0
  279. #define SERCOM4_PAD1_DEFAULT PINMUX_PB09D_SERCOM4_PAD1
  280. #define SERCOM4_PAD2_DEFAULT PINMUX_PB10D_SERCOM4_PAD2
  281. #define SERCOM4_PAD3_DEFAULT PINMUX_PB11D_SERCOM4_PAD3
  282. #endif
  283. #ifdef ID_SERCOM5
  284. /* SERCOM5 */
  285. #define SERCOM5_PAD0_DEFAULT PINMUX_PB02D_SERCOM5_PAD0
  286. #define SERCOM5_PAD1_DEFAULT PINMUX_PB03D_SERCOM5_PAD1
  287. #define SERCOM5_PAD2_DEFAULT PINMUX_PB22D_SERCOM5_PAD2
  288. #define SERCOM5_PAD3_DEFAULT PINMUX_PB23D_SERCOM5_PAD3
  289. #endif
  290. #elif (SAMC20J) || (SAMC21J)
  291. /* SERCOM0 */
  292. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  293. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  294. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  295. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  296. /* SERCOM1 */
  297. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  298. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  299. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  300. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  301. /* SERCOM2 */
  302. #define SERCOM2_PAD0_DEFAULT PINMUX_PA12C_SERCOM2_PAD0
  303. #define SERCOM2_PAD1_DEFAULT PINMUX_PA13C_SERCOM2_PAD1
  304. #define SERCOM2_PAD2_DEFAULT PINMUX_PA14C_SERCOM2_PAD2
  305. #define SERCOM2_PAD3_DEFAULT PINMUX_PA15C_SERCOM2_PAD3
  306. /* SERCOM3 */
  307. #define SERCOM3_PAD0_DEFAULT PINMUX_PA22C_SERCOM3_PAD0
  308. #define SERCOM3_PAD1_DEFAULT PINMUX_PA23C_SERCOM3_PAD1
  309. #define SERCOM3_PAD2_DEFAULT PINMUX_PA24C_SERCOM3_PAD2
  310. #define SERCOM3_PAD3_DEFAULT PINMUX_PA25C_SERCOM3_PAD3
  311. #ifdef ID_SERCOM4
  312. /* SERCOM4 */
  313. #define SERCOM4_PAD0_DEFAULT PINMUX_PB08D_SERCOM4_PAD0
  314. #define SERCOM4_PAD1_DEFAULT PINMUX_PB09D_SERCOM4_PAD1
  315. #define SERCOM4_PAD2_DEFAULT PINMUX_PB10D_SERCOM4_PAD2
  316. #define SERCOM4_PAD3_DEFAULT PINMUX_PB11D_SERCOM4_PAD3
  317. #endif
  318. #ifdef ID_SERCOM5
  319. /* SERCOM5 */
  320. #define SERCOM5_PAD0_DEFAULT PINMUX_PB02D_SERCOM5_PAD0
  321. #define SERCOM5_PAD1_DEFAULT PINMUX_PB03D_SERCOM5_PAD1
  322. #define SERCOM5_PAD2_DEFAULT PINMUX_PB00D_SERCOM5_PAD2
  323. #define SERCOM5_PAD3_DEFAULT PINMUX_PB01D_SERCOM5_PAD3
  324. #endif
  325. #elif (SAMDA1)
  326. /* SERCOM0 */
  327. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  328. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  329. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  330. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  331. /* SERCOM1 */
  332. #define SERCOM1_PAD0_DEFAULT PINMUX_PA00D_SERCOM1_PAD0
  333. #define SERCOM1_PAD1_DEFAULT PINMUX_PA01D_SERCOM1_PAD1
  334. #define SERCOM1_PAD2_DEFAULT PINMUX_PA30D_SERCOM1_PAD2
  335. #define SERCOM1_PAD3_DEFAULT PINMUX_PA31D_SERCOM1_PAD3
  336. /* SERCOM2 */
  337. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  338. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  339. #define SERCOM2_PAD2_DEFAULT PINMUX_PA10D_SERCOM2_PAD2
  340. #define SERCOM2_PAD3_DEFAULT PINMUX_PA11D_SERCOM2_PAD3
  341. /* SERCOM3 */
  342. #define SERCOM3_PAD0_DEFAULT PINMUX_PA16D_SERCOM3_PAD0
  343. #define SERCOM3_PAD1_DEFAULT PINMUX_PA17D_SERCOM3_PAD1
  344. #define SERCOM3_PAD2_DEFAULT PINMUX_PA18D_SERCOM3_PAD2
  345. #define SERCOM3_PAD3_DEFAULT PINMUX_PA19D_SERCOM3_PAD3
  346. #if (SAMDA1E)
  347. /* SERCOM4 */
  348. #define SERCOM4_PAD0_DEFAULT 0 /* No available pin */
  349. #define SERCOM4_PAD1_DEFAULT 0 /* No available pin */
  350. #define SERCOM4_PAD2_DEFAULT PINMUX_PA14D_SERCOM4_PAD2
  351. #define SERCOM4_PAD3_DEFAULT PINMUX_PA15D_SERCOM4_PAD3
  352. #else
  353. /* SERCOM4 */
  354. #define SERCOM4_PAD0_DEFAULT PINMUX_PA12D_SERCOM4_PAD0
  355. #define SERCOM4_PAD1_DEFAULT PINMUX_PA13D_SERCOM4_PAD1
  356. #define SERCOM4_PAD2_DEFAULT PINMUX_PA14D_SERCOM4_PAD2
  357. #define SERCOM4_PAD3_DEFAULT PINMUX_PA15D_SERCOM4_PAD3
  358. #endif
  359. /* SERCOM5 */
  360. #define SERCOM5_PAD0_DEFAULT PINMUX_PA22D_SERCOM5_PAD0
  361. #define SERCOM5_PAD1_DEFAULT PINMUX_PA23D_SERCOM5_PAD1
  362. #define SERCOM5_PAD2_DEFAULT PINMUX_PA24D_SERCOM5_PAD2
  363. #define SERCOM5_PAD3_DEFAULT PINMUX_PA25D_SERCOM5_PAD3
  364. #elif SAM_PART_IS_DEFINED(SAMHA1G14A) || SAM_PART_IS_DEFINED(SAMHA1G15A) || \
  365. SAM_PART_IS_DEFINED(SAMHA1G16A)
  366. /* SERCOM0 */
  367. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  368. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  369. #define SERCOM0_PAD2_DEFAULT PINMUX_PA10C_SERCOM0_PAD2
  370. #define SERCOM0_PAD3_DEFAULT PINMUX_PA11C_SERCOM0_PAD3
  371. /* SERCOM1 */
  372. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  373. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  374. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  375. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  376. /* SERCOM2 */
  377. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  378. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  379. #define SERCOM2_PAD2_DEFAULT PINMUX_PA14C_SERCOM2_PAD2
  380. #define SERCOM2_PAD3_DEFAULT PINMUX_PA15C_SERCOM2_PAD3
  381. /* SERCOM3 */
  382. #define SERCOM3_PAD0_DEFAULT PINMUX_PA16D_SERCOM3_PAD0
  383. #define SERCOM3_PAD1_DEFAULT PINMUX_PA17D_SERCOM3_PAD1
  384. #define SERCOM3_PAD2_DEFAULT PINMUX_PA18D_SERCOM3_PAD2
  385. #define SERCOM3_PAD3_DEFAULT PINMUX_PA19D_SERCOM3_PAD3
  386. /* SERCOM4 */
  387. #define SERCOM4_PAD0_DEFAULT 0 /* No available pin */
  388. #define SERCOM4_PAD1_DEFAULT 0 /* No available pin */
  389. #define SERCOM4_PAD2_DEFAULT PINMUX_PB10D_SERCOM4_PAD2
  390. #define SERCOM4_PAD3_DEFAULT PINMUX_PB11D_SERCOM4_PAD3
  391. /* SERCOM5 */
  392. #define SERCOM5_PAD0_DEFAULT PINMUX_PB16C_SERCOM5_PAD0
  393. #define SERCOM5_PAD1_DEFAULT PINMUX_PB17C_SERCOM5_PAD1
  394. #define SERCOM5_PAD2_DEFAULT PINMUX_PA20C_SERCOM5_PAD2
  395. #define SERCOM5_PAD3_DEFAULT PINMUX_PA21C_SERCOM5_PAD3
  396. #elif (SAML21E) || (SAMR30E)
  397. /* SERCOM0 */
  398. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  399. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  400. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  401. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  402. /* SERCOM1 */
  403. #define SERCOM1_PAD0_DEFAULT PINMUX_PA00D_SERCOM1_PAD0
  404. #define SERCOM1_PAD1_DEFAULT PINMUX_PA01D_SERCOM1_PAD1
  405. #define SERCOM1_PAD2_DEFAULT PINMUX_PA30D_SERCOM1_PAD2
  406. #define SERCOM1_PAD3_DEFAULT PINMUX_PA31D_SERCOM1_PAD3
  407. /* SERCOM2 */
  408. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  409. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  410. #define SERCOM2_PAD2_DEFAULT PINMUX_PA10D_SERCOM2_PAD2
  411. #define SERCOM2_PAD3_DEFAULT PINMUX_PA11D_SERCOM2_PAD3
  412. /* SERCOM3 */
  413. #define SERCOM3_PAD0_DEFAULT PINMUX_PA16D_SERCOM3_PAD0
  414. #define SERCOM3_PAD1_DEFAULT PINMUX_PA17D_SERCOM3_PAD1
  415. #define SERCOM3_PAD2_DEFAULT PINMUX_PA18D_SERCOM3_PAD2
  416. #define SERCOM3_PAD3_DEFAULT PINMUX_PA19D_SERCOM3_PAD3
  417. #if !SAM_PART_IS_DEFINED(SAML21E18A) && !SAM_PART_IS_DEFINED(SAMR30E18A)
  418. /* SERCOM4 */
  419. #define SERCOM4_PAD0_DEFAULT 0 /* No available pin */
  420. #define SERCOM4_PAD1_DEFAULT 0 /* No available pin */
  421. #define SERCOM4_PAD2_DEFAULT PINMUX_PA14D_SERCOM4_PAD2
  422. #define SERCOM4_PAD3_DEFAULT PINMUX_PA15D_SERCOM4_PAD3
  423. /* SERCOM5 */
  424. #define SERCOM5_PAD0_DEFAULT PINMUX_PA22D_SERCOM5_PAD0
  425. #define SERCOM5_PAD1_DEFAULT PINMUX_PA23D_SERCOM5_PAD1
  426. #define SERCOM5_PAD2_DEFAULT PINMUX_PA24D_SERCOM5_PAD2
  427. #define SERCOM5_PAD3_DEFAULT PINMUX_PA25D_SERCOM5_PAD3
  428. #endif
  429. #else
  430. /* SERCOM0 */
  431. #define SERCOM0_PAD0_DEFAULT PINMUX_PA04D_SERCOM0_PAD0
  432. #define SERCOM0_PAD1_DEFAULT PINMUX_PA05D_SERCOM0_PAD1
  433. #define SERCOM0_PAD2_DEFAULT PINMUX_PA06D_SERCOM0_PAD2
  434. #define SERCOM0_PAD3_DEFAULT PINMUX_PA07D_SERCOM0_PAD3
  435. /* SERCOM1 */
  436. #if SAM_PART_IS_DEFINED(SAMD21G15L) || SAM_PART_IS_DEFINED(SAMD21G16L)
  437. #define SERCOM1_PAD0_DEFAULT PINMUX_PA16C_SERCOM1_PAD0
  438. #define SERCOM1_PAD1_DEFAULT PINMUX_PA17C_SERCOM1_PAD1
  439. #define SERCOM1_PAD2_DEFAULT PINMUX_PA18C_SERCOM1_PAD2
  440. #define SERCOM1_PAD3_DEFAULT PINMUX_PA19C_SERCOM1_PAD3
  441. #else
  442. #define SERCOM1_PAD0_DEFAULT PINMUX_PA00D_SERCOM1_PAD0
  443. #define SERCOM1_PAD1_DEFAULT PINMUX_PA01D_SERCOM1_PAD1
  444. #define SERCOM1_PAD2_DEFAULT PINMUX_PA30D_SERCOM1_PAD2
  445. #define SERCOM1_PAD3_DEFAULT PINMUX_PA31D_SERCOM1_PAD3
  446. #endif
  447. /* SERCOM2 */
  448. #define SERCOM2_PAD0_DEFAULT PINMUX_PA08D_SERCOM2_PAD0
  449. #define SERCOM2_PAD1_DEFAULT PINMUX_PA09D_SERCOM2_PAD1
  450. #define SERCOM2_PAD2_DEFAULT PINMUX_PA10D_SERCOM2_PAD2
  451. #define SERCOM2_PAD3_DEFAULT PINMUX_PA11D_SERCOM2_PAD3
  452. /* SERCOM3 */
  453. #define SERCOM3_PAD0_DEFAULT PINMUX_PA16D_SERCOM3_PAD0
  454. #define SERCOM3_PAD1_DEFAULT PINMUX_PA17D_SERCOM3_PAD1
  455. #define SERCOM3_PAD2_DEFAULT PINMUX_PA18D_SERCOM3_PAD2
  456. #define SERCOM3_PAD3_DEFAULT PINMUX_PA19D_SERCOM3_PAD3
  457. #if !(SAMD20E || SAMD21E)
  458. /* SERCOM4 */
  459. #define SERCOM4_PAD0_DEFAULT PINMUX_PA12D_SERCOM4_PAD0
  460. #define SERCOM4_PAD1_DEFAULT PINMUX_PA13D_SERCOM4_PAD1
  461. #define SERCOM4_PAD2_DEFAULT PINMUX_PA14D_SERCOM4_PAD2
  462. #define SERCOM4_PAD3_DEFAULT PINMUX_PA15D_SERCOM4_PAD3
  463. /* SERCOM5 */
  464. #define SERCOM5_PAD0_DEFAULT PINMUX_PA22D_SERCOM5_PAD0
  465. #define SERCOM5_PAD1_DEFAULT PINMUX_PA23D_SERCOM5_PAD1
  466. #define SERCOM5_PAD2_DEFAULT PINMUX_PA24D_SERCOM5_PAD2
  467. #define SERCOM5_PAD3_DEFAULT PINMUX_PA25D_SERCOM5_PAD3
  468. #endif
  469. #endif
  470. #endif /* SERCOM_PINOUT_H_INCLUDED */