pfc-sh7264.c 55 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132
  1. /*
  2. * SH7264 Pinmux
  3. *
  4. * Copyright (C) 2012 Renesas Electronics Europe Ltd
  5. *
  6. * This file is subject to the terms and conditions of the GNU General Public
  7. * License. See the file "COPYING" in the main directory of this archive
  8. * for more details.
  9. */
  10. #include <linux/kernel.h>
  11. #include <linux/gpio.h>
  12. #include <cpu/sh7264.h>
  13. #include "sh_pfc.h"
  14. enum {
  15. PINMUX_RESERVED = 0,
  16. PINMUX_DATA_BEGIN,
  17. /* Port A */
  18. PA3_DATA, PA2_DATA, PA1_DATA, PA0_DATA,
  19. /* Port B */
  20. PB22_DATA, PB21_DATA, PB20_DATA,
  21. PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA,
  22. PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
  23. PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
  24. PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
  25. PB3_DATA, PB2_DATA, PB1_DATA,
  26. /* Port C */
  27. PC10_DATA, PC9_DATA, PC8_DATA,
  28. PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
  29. PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA,
  30. /* Port D */
  31. PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
  32. PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
  33. PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
  34. PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA,
  35. /* Port E */
  36. PE5_DATA, PE4_DATA,
  37. PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA,
  38. /* Port F */
  39. PF12_DATA,
  40. PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
  41. PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
  42. PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA,
  43. /* Port G */
  44. PG24_DATA,
  45. PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
  46. PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA,
  47. PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
  48. PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
  49. PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
  50. PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA,
  51. /* Port H */
  52. /* NOTE - Port H does not have a Data Register, but PH Data is
  53. connected to PH Port Register */
  54. PH7_DATA, PH6_DATA, PH5_DATA, PH4_DATA,
  55. PH3_DATA, PH2_DATA, PH1_DATA, PH0_DATA,
  56. /* Port I - not on device */
  57. /* Port J */
  58. PJ12_DATA,
  59. PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
  60. PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
  61. PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA,
  62. /* Port K */
  63. PK12_DATA,
  64. PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,
  65. PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,
  66. PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA,
  67. PINMUX_DATA_END,
  68. PINMUX_INPUT_BEGIN,
  69. FORCE_IN,
  70. /* Port A */
  71. PA3_IN, PA2_IN, PA1_IN, PA0_IN,
  72. /* Port B */
  73. PB22_IN, PB21_IN, PB20_IN,
  74. PB19_IN, PB18_IN, PB17_IN, PB16_IN,
  75. PB15_IN, PB14_IN, PB13_IN, PB12_IN,
  76. PB11_IN, PB10_IN, PB9_IN, PB8_IN,
  77. PB7_IN, PB6_IN, PB5_IN, PB4_IN,
  78. PB3_IN, PB2_IN, PB1_IN,
  79. /* Port C */
  80. PC10_IN, PC9_IN, PC8_IN,
  81. PC7_IN, PC6_IN, PC5_IN, PC4_IN,
  82. PC3_IN, PC2_IN, PC1_IN, PC0_IN,
  83. /* Port D */
  84. PD15_IN, PD14_IN, PD13_IN, PD12_IN,
  85. PD11_IN, PD10_IN, PD9_IN, PD8_IN,
  86. PD7_IN, PD6_IN, PD5_IN, PD4_IN,
  87. PD3_IN, PD2_IN, PD1_IN, PD0_IN,
  88. /* Port E */
  89. PE5_IN, PE4_IN,
  90. PE3_IN, PE2_IN, PE1_IN, PE0_IN,
  91. /* Port F */
  92. PF12_IN,
  93. PF11_IN, PF10_IN, PF9_IN, PF8_IN,
  94. PF7_IN, PF6_IN, PF5_IN, PF4_IN,
  95. PF3_IN, PF2_IN, PF1_IN, PF0_IN,
  96. /* Port G */
  97. PG24_IN,
  98. PG23_IN, PG22_IN, PG21_IN, PG20_IN,
  99. PG19_IN, PG18_IN, PG17_IN, PG16_IN,
  100. PG15_IN, PG14_IN, PG13_IN, PG12_IN,
  101. PG11_IN, PG10_IN, PG9_IN, PG8_IN,
  102. PG7_IN, PG6_IN, PG5_IN, PG4_IN,
  103. PG3_IN, PG2_IN, PG1_IN, PG0_IN,
  104. /* Port H - Port H does not have a Data Register */
  105. /* Port I - not on device */
  106. /* Port J */
  107. PJ12_IN,
  108. PJ11_IN, PJ10_IN, PJ9_IN, PJ8_IN,
  109. PJ7_IN, PJ6_IN, PJ5_IN, PJ4_IN,
  110. PJ3_IN, PJ2_IN, PJ1_IN, PJ0_IN,
  111. /* Port K */
  112. PK12_IN,
  113. PK11_IN, PK10_IN, PK9_IN, PK8_IN,
  114. PK7_IN, PK6_IN, PK5_IN, PK4_IN,
  115. PK3_IN, PK2_IN, PK1_IN, PK0_IN,
  116. PINMUX_INPUT_END,
  117. PINMUX_OUTPUT_BEGIN,
  118. FORCE_OUT,
  119. /* Port A */
  120. PA3_OUT, PA2_OUT, PA1_OUT, PA0_OUT,
  121. /* Port B */
  122. PB22_OUT, PB21_OUT, PB20_OUT,
  123. PB19_OUT, PB18_OUT, PB17_OUT, PB16_OUT,
  124. PB15_OUT, PB14_OUT, PB13_OUT, PB12_OUT,
  125. PB11_OUT, PB10_OUT, PB9_OUT, PB8_OUT,
  126. PB7_OUT, PB6_OUT, PB5_OUT, PB4_OUT,
  127. PB3_OUT, PB2_OUT, PB1_OUT,
  128. /* Port C */
  129. PC10_OUT, PC9_OUT, PC8_OUT,
  130. PC7_OUT, PC6_OUT, PC5_OUT, PC4_OUT,
  131. PC3_OUT, PC2_OUT, PC1_OUT, PC0_OUT,
  132. /* Port D */
  133. PD15_OUT, PD14_OUT, PD13_OUT, PD12_OUT,
  134. PD11_OUT, PD10_OUT, PD9_OUT, PD8_OUT,
  135. PD7_OUT, PD6_OUT, PD5_OUT, PD4_OUT,
  136. PD3_OUT, PD2_OUT, PD1_OUT, PD0_OUT,
  137. /* Port E */
  138. PE5_OUT, PE4_OUT,
  139. PE3_OUT, PE2_OUT, PE1_OUT, PE0_OUT,
  140. /* Port F */
  141. PF12_OUT,
  142. PF11_OUT, PF10_OUT, PF9_OUT, PF8_OUT,
  143. PF7_OUT, PF6_OUT, PF5_OUT, PF4_OUT,
  144. PF3_OUT, PF2_OUT, PF1_OUT, PF0_OUT,
  145. /* Port G */
  146. PG24_OUT,
  147. PG23_OUT, PG22_OUT, PG21_OUT, PG20_OUT,
  148. PG19_OUT, PG18_OUT, PG17_OUT, PG16_OUT,
  149. PG15_OUT, PG14_OUT, PG13_OUT, PG12_OUT,
  150. PG11_OUT, PG10_OUT, PG9_OUT, PG8_OUT,
  151. PG7_OUT, PG6_OUT, PG5_OUT, PG4_OUT,
  152. PG3_OUT, PG2_OUT, PG1_OUT, PG0_OUT,
  153. /* Port H - Port H does not have a Data Register */
  154. /* Port I - not on device */
  155. /* Port J */
  156. PJ12_OUT,
  157. PJ11_OUT, PJ10_OUT, PJ9_OUT, PJ8_OUT,
  158. PJ7_OUT, PJ6_OUT, PJ5_OUT, PJ4_OUT,
  159. PJ3_OUT, PJ2_OUT, PJ1_OUT, PJ0_OUT,
  160. /* Port K */
  161. PK12_OUT,
  162. PK11_OUT, PK10_OUT, PK9_OUT, PK8_OUT,
  163. PK7_OUT, PK6_OUT, PK5_OUT, PK4_OUT,
  164. PK3_OUT, PK2_OUT, PK1_OUT, PK0_OUT,
  165. PINMUX_OUTPUT_END,
  166. PINMUX_FUNCTION_BEGIN,
  167. /* Port A */
  168. PA3_IOR_IN, PA3_IOR_OUT,
  169. PA2_IOR_IN, PA2_IOR_OUT,
  170. PA1_IOR_IN, PA1_IOR_OUT,
  171. PA0_IOR_IN, PA0_IOR_OUT,
  172. /* Port B */
  173. PB11_IOR_IN, PB11_IOR_OUT,
  174. PB10_IOR_IN, PB10_IOR_OUT,
  175. PB9_IOR_IN, PB9_IOR_OUT,
  176. PB8_IOR_IN, PB8_IOR_OUT,
  177. PB22MD_00, PB22MD_01, PB22MD_10,
  178. PB21MD_0, PB21MD_1,
  179. PB20MD_0, PB20MD_1,
  180. PB19MD_00, PB19MD_01, PB19MD_10, PB19MD_11,
  181. PB18MD_00, PB18MD_01, PB18MD_10, PB18MD_11,
  182. PB17MD_00, PB17MD_01, PB17MD_10, PB17MD_11,
  183. PB16MD_00, PB16MD_01, PB16MD_10, PB16MD_11,
  184. PB15MD_00, PB15MD_01, PB15MD_10, PB15MD_11,
  185. PB14MD_00, PB14MD_01, PB14MD_10, PB14MD_11,
  186. PB13MD_00, PB13MD_01, PB13MD_10, PB13MD_11,
  187. PB12MD_00, PB12MD_01, PB12MD_10, PB12MD_11,
  188. PB11MD_00, PB11MD_01, PB11MD_10, PB11MD_11,
  189. PB10MD_00, PB10MD_01, PB10MD_10, PB10MD_11,
  190. PB9MD_00, PB9MD_01, PB9MD_10, PB9MD_11,
  191. PB8MD_00, PB8MD_01, PB8MD_10, PB8MD_11,
  192. PB7MD_00, PB7MD_01, PB7MD_10, PB7MD_11,
  193. PB6MD_00, PB6MD_01, PB6MD_10, PB6MD_11,
  194. PB5MD_00, PB5MD_01, PB5MD_10, PB5MD_11,
  195. PB4MD_00, PB4MD_01, PB4MD_10, PB4MD_11,
  196. PB3MD_0, PB3MD_1,
  197. PB2MD_0, PB2MD_1,
  198. PB1MD_0, PB1MD_1,
  199. /* Port C */
  200. PC14_IOR_IN, PC14_IOR_OUT,
  201. PC13_IOR_IN, PC13_IOR_OUT,
  202. PC12_IOR_IN, PC12_IOR_OUT,
  203. PC11_IOR_IN, PC11_IOR_OUT,
  204. PC10_IOR_IN, PC10_IOR_OUT,
  205. PC9_IOR_IN, PC9_IOR_OUT,
  206. PC8_IOR_IN, PC8_IOR_OUT,
  207. PC7_IOR_IN, PC7_IOR_OUT,
  208. PC6_IOR_IN, PC6_IOR_OUT,
  209. PC5_IOR_IN, PC5_IOR_OUT,
  210. PC4_IOR_IN, PC4_IOR_OUT,
  211. PC3_IOR_IN, PC3_IOR_OUT,
  212. PC2_IOR_IN, PC2_IOR_OUT,
  213. PC1_IOR_IN, PC1_IOR_OUT,
  214. PC0_IOR_IN, PC0_IOR_OUT,
  215. PC10MD_0, PC10MD_1,
  216. PC9MD_0, PC9MD_1,
  217. PC8MD_00, PC8MD_01, PC8MD_10, PC8MD_11,
  218. PC7MD_00, PC7MD_01, PC7MD_10, PC7MD_11,
  219. PC6MD_00, PC6MD_01, PC6MD_10, PC6MD_11,
  220. PC5MD_00, PC5MD_01, PC5MD_10, PC5MD_11,
  221. PC4MD_0, PC4MD_1,
  222. PC3MD_0, PC3MD_1,
  223. PC2MD_0, PC2MD_1,
  224. PC1MD_0, PC1MD_1,
  225. PC0MD_0, PC0MD_1,
  226. /* Port D */
  227. PD15_IOR_IN, PD15_IOR_OUT,
  228. PD14_IOR_IN, PD14_IOR_OUT,
  229. PD13_IOR_IN, PD13_IOR_OUT,
  230. PD12_IOR_IN, PD12_IOR_OUT,
  231. PD11_IOR_IN, PD11_IOR_OUT,
  232. PD10_IOR_IN, PD10_IOR_OUT,
  233. PD9_IOR_IN, PD9_IOR_OUT,
  234. PD8_IOR_IN, PD8_IOR_OUT,
  235. PD7_IOR_IN, PD7_IOR_OUT,
  236. PD6_IOR_IN, PD6_IOR_OUT,
  237. PD5_IOR_IN, PD5_IOR_OUT,
  238. PD4_IOR_IN, PD4_IOR_OUT,
  239. PD3_IOR_IN, PD3_IOR_OUT,
  240. PD2_IOR_IN, PD2_IOR_OUT,
  241. PD1_IOR_IN, PD1_IOR_OUT,
  242. PD0_IOR_IN, PD0_IOR_OUT,
  243. PD15MD_00, PD15MD_01, PD15MD_10, PD15MD_11,
  244. PD14MD_00, PD14MD_01, PD14MD_10, PD14MD_11,
  245. PD13MD_00, PD13MD_01, PD13MD_10, PD13MD_11,
  246. PD12MD_00, PD12MD_01, PD12MD_10, PD12MD_11,
  247. PD11MD_00, PD11MD_01, PD11MD_10, PD11MD_11,
  248. PD10MD_00, PD10MD_01, PD10MD_10, PD10MD_11,
  249. PD9MD_00, PD9MD_01, PD9MD_10, PD9MD_11,
  250. PD8MD_00, PD8MD_01, PD8MD_10, PD8MD_11,
  251. PD7MD_00, PD7MD_01, PD7MD_10, PD7MD_11,
  252. PD6MD_00, PD6MD_01, PD6MD_10, PD6MD_11,
  253. PD5MD_00, PD5MD_01, PD5MD_10, PD5MD_11,
  254. PD4MD_00, PD4MD_01, PD4MD_10, PD4MD_11,
  255. PD3MD_00, PD3MD_01, PD3MD_10, PD3MD_11,
  256. PD2MD_00, PD2MD_01, PD2MD_10, PD2MD_11,
  257. PD1MD_00, PD1MD_01, PD1MD_10, PD1MD_11,
  258. PD0MD_00, PD0MD_01, PD0MD_10, PD0MD_11,
  259. /* Port E */
  260. PE5_IOR_IN, PE5_IOR_OUT,
  261. PE4_IOR_IN, PE4_IOR_OUT,
  262. PE3_IOR_IN, PE3_IOR_OUT,
  263. PE2_IOR_IN, PE2_IOR_OUT,
  264. PE1_IOR_IN, PE1_IOR_OUT,
  265. PE0_IOR_IN, PE0_IOR_OUT,
  266. PE5MD_00, PE5MD_01, PE5MD_10, PE5MD_11,
  267. PE4MD_00, PE4MD_01, PE4MD_10, PE4MD_11,
  268. PE3MD_00, PE3MD_01, PE3MD_10, PE3MD_11,
  269. PE2MD_00, PE2MD_01, PE2MD_10, PE2MD_11,
  270. PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,
  271. PE1MD_100, PE1MD_101, PE1MD_110, PE1MD_111,
  272. PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11,
  273. /* Port F */
  274. PF12_IOR_IN, PF12_IOR_OUT,
  275. PF11_IOR_IN, PF11_IOR_OUT,
  276. PF10_IOR_IN, PF10_IOR_OUT,
  277. PF9_IOR_IN, PF9_IOR_OUT,
  278. PF8_IOR_IN, PF8_IOR_OUT,
  279. PF7_IOR_IN, PF7_IOR_OUT,
  280. PF6_IOR_IN, PF6_IOR_OUT,
  281. PF5_IOR_IN, PF5_IOR_OUT,
  282. PF4_IOR_IN, PF4_IOR_OUT,
  283. PF3_IOR_IN, PF3_IOR_OUT,
  284. PF2_IOR_IN, PF2_IOR_OUT,
  285. PF1_IOR_IN, PF1_IOR_OUT,
  286. PF0_IOR_IN, PF0_IOR_OUT,
  287. PF12MD_000, PF12MD_001, PF12MD_010, PF12MD_011,
  288. PF12MD_100, PF12MD_101, PF12MD_110, PF12MD_111,
  289. PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
  290. PF11MD_100, PF11MD_101, PF11MD_110, PF11MD_111,
  291. PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
  292. PF10MD_100, PF10MD_101, PF10MD_110, PF10MD_111,
  293. PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
  294. PF9MD_100, PF9MD_101, PF9MD_110, PF9MD_111,
  295. PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11,
  296. PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
  297. PF7MD_100, PF7MD_101, PF7MD_110, PF7MD_111,
  298. PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
  299. PF6MD_100, PF6MD_101, PF6MD_110, PF6MD_111,
  300. PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
  301. PF5MD_100, PF5MD_101, PF5MD_110, PF5MD_111,
  302. PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
  303. PF4MD_100, PF4MD_101, PF4MD_110, PF4MD_111,
  304. PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
  305. PF3MD_100, PF3MD_101, PF3MD_110, PF3MD_111,
  306. PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
  307. PF2MD_100, PF2MD_101, PF2MD_110, PF2MD_111,
  308. PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
  309. PF1MD_100, PF1MD_101, PF1MD_110, PF1MD_111,
  310. PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,
  311. PF0MD_100, PF0MD_101, PF0MD_110, PF0MD_111,
  312. /* Port G */
  313. PG24_IOR_IN, PG24_IOR_OUT,
  314. PG23_IOR_IN, PG23_IOR_OUT,
  315. PG22_IOR_IN, PG22_IOR_OUT,
  316. PG21_IOR_IN, PG21_IOR_OUT,
  317. PG20_IOR_IN, PG20_IOR_OUT,
  318. PG19_IOR_IN, PG19_IOR_OUT,
  319. PG18_IOR_IN, PG18_IOR_OUT,
  320. PG17_IOR_IN, PG17_IOR_OUT,
  321. PG16_IOR_IN, PG16_IOR_OUT,
  322. PG15_IOR_IN, PG15_IOR_OUT,
  323. PG14_IOR_IN, PG14_IOR_OUT,
  324. PG13_IOR_IN, PG13_IOR_OUT,
  325. PG12_IOR_IN, PG12_IOR_OUT,
  326. PG11_IOR_IN, PG11_IOR_OUT,
  327. PG10_IOR_IN, PG10_IOR_OUT,
  328. PG9_IOR_IN, PG9_IOR_OUT,
  329. PG8_IOR_IN, PG8_IOR_OUT,
  330. PG7_IOR_IN, PG7_IOR_OUT,
  331. PG6_IOR_IN, PG6_IOR_OUT,
  332. PG5_IOR_IN, PG5_IOR_OUT,
  333. PG4_IOR_IN, PG4_IOR_OUT,
  334. PG3_IOR_IN, PG3_IOR_OUT,
  335. PG2_IOR_IN, PG2_IOR_OUT,
  336. PG1_IOR_IN, PG1_IOR_OUT,
  337. PG0_IOR_IN, PG0_IOR_OUT,
  338. PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11,
  339. PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11,
  340. PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11,
  341. PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11,
  342. PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
  343. PG20MD_100, PG20MD_101, PG20MD_110, PG20MD_111,
  344. PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
  345. PG19MD_100, PG19MD_101, PG19MD_110, PG19MD_111,
  346. PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
  347. PG18MD_100, PG18MD_101, PG18MD_110, PG18MD_111,
  348. PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,
  349. PG17MD_100, PG17MD_101, PG17MD_110, PG17MD_111,
  350. PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,
  351. PG16MD_100, PG16MD_101, PG16MD_110, PG16MD_111,
  352. PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,
  353. PG15MD_100, PG15MD_101, PG15MD_110, PG15MD_111,
  354. PG14MD_000, PG14MD_001, PG14MD_010, PG14MD_011,
  355. PG14MD_100, PG14MD_101, PG14MD_110, PG14MD_111,
  356. PG13MD_000, PG13MD_001, PG13MD_010, PG13MD_011,
  357. PG13MD_100, PG13MD_101, PG13MD_110, PG13MD_111,
  358. PG12MD_000, PG12MD_001, PG12MD_010, PG12MD_011,
  359. PG12MD_100, PG12MD_101, PG12MD_110, PG12MD_111,
  360. PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
  361. PG11MD_100, PG11MD_101, PG11MD_110, PG11MD_111,
  362. PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
  363. PG10MD_100, PG10MD_101, PG10MD_110, PG10MD_111,
  364. PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
  365. PG9MD_100, PG9MD_101, PG9MD_110, PG9MD_111,
  366. PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
  367. PG8MD_100, PG8MD_101, PG8MD_110, PG8MD_111,
  368. PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11,
  369. PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11,
  370. PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11,
  371. PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11,
  372. PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11,
  373. PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11,
  374. PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11,
  375. PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
  376. PG0MD_100, PG0MD_101, PG0MD_110, PG0MD_111,
  377. /* Port H */
  378. PH7MD_0, PH7MD_1,
  379. PH6MD_0, PH6MD_1,
  380. PH5MD_0, PH5MD_1,
  381. PH4MD_0, PH4MD_1,
  382. PH3MD_0, PH3MD_1,
  383. PH2MD_0, PH2MD_1,
  384. PH1MD_0, PH1MD_1,
  385. PH0MD_0, PH0MD_1,
  386. /* Port I - not on device */
  387. /* Port J */
  388. PJ11_IOR_IN, PJ11_IOR_OUT,
  389. PJ10_IOR_IN, PJ10_IOR_OUT,
  390. PJ9_IOR_IN, PJ9_IOR_OUT,
  391. PJ8_IOR_IN, PJ8_IOR_OUT,
  392. PJ7_IOR_IN, PJ7_IOR_OUT,
  393. PJ6_IOR_IN, PJ6_IOR_OUT,
  394. PJ5_IOR_IN, PJ5_IOR_OUT,
  395. PJ4_IOR_IN, PJ4_IOR_OUT,
  396. PJ3_IOR_IN, PJ3_IOR_OUT,
  397. PJ2_IOR_IN, PJ2_IOR_OUT,
  398. PJ1_IOR_IN, PJ1_IOR_OUT,
  399. PJ0_IOR_IN, PJ0_IOR_OUT,
  400. PJ11MD_00, PJ11MD_01, PJ11MD_10, PJ11MD_11,
  401. PJ10MD_00, PJ10MD_01, PJ10MD_10, PJ10MD_11,
  402. PJ9MD_00, PJ9MD_01, PJ9MD_10, PJ9MD_11,
  403. PJ8MD_00, PJ8MD_01, PJ8MD_10, PJ8MD_11,
  404. PJ7MD_00, PJ7MD_01, PJ7MD_10, PJ7MD_11,
  405. PJ6MD_00, PJ6MD_01, PJ6MD_10, PJ6MD_11,
  406. PJ5MD_00, PJ5MD_01, PJ5MD_10, PJ5MD_11,
  407. PJ4MD_00, PJ4MD_01, PJ4MD_10, PJ4MD_11,
  408. PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11,
  409. PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
  410. PJ2MD_100, PJ2MD_101, PJ2MD_110, PJ2MD_111,
  411. PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
  412. PJ1MD_100, PJ1MD_101, PJ1MD_110, PJ1MD_111,
  413. PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
  414. PJ0MD_100, PJ0MD_101, PJ0MD_110, PJ0MD_111,
  415. /* Port K */
  416. PK11_IOR_IN, PK11_IOR_OUT,
  417. PK10_IOR_IN, PK10_IOR_OUT,
  418. PK9_IOR_IN, PK9_IOR_OUT,
  419. PK8_IOR_IN, PK8_IOR_OUT,
  420. PK7_IOR_IN, PK7_IOR_OUT,
  421. PK6_IOR_IN, PK6_IOR_OUT,
  422. PK5_IOR_IN, PK5_IOR_OUT,
  423. PK4_IOR_IN, PK4_IOR_OUT,
  424. PK3_IOR_IN, PK3_IOR_OUT,
  425. PK2_IOR_IN, PK2_IOR_OUT,
  426. PK1_IOR_IN, PK1_IOR_OUT,
  427. PK0_IOR_IN, PK0_IOR_OUT,
  428. PK11MD_00, PK11MD_01, PK11MD_10, PK11MD_11,
  429. PK10MD_00, PK10MD_01, PK10MD_10, PK10MD_11,
  430. PK9MD_00, PK9MD_01, PK9MD_10, PK9MD_11,
  431. PK8MD_00, PK8MD_01, PK8MD_10, PK8MD_11,
  432. PK7MD_00, PK7MD_01, PK7MD_10, PK7MD_11,
  433. PK6MD_00, PK6MD_01, PK6MD_10, PK6MD_11,
  434. PK5MD_00, PK5MD_01, PK5MD_10, PK5MD_11,
  435. PK4MD_00, PK4MD_01, PK4MD_10, PK4MD_11,
  436. PK3MD_00, PK3MD_01, PK3MD_10, PK3MD_11,
  437. PK2MD_00, PK2MD_01, PK2MD_10, PK2MD_11,
  438. PK1MD_00, PK1MD_01, PK1MD_10, PK1MD_11,
  439. PK0MD_00, PK0MD_01, PK0MD_10, PK0MD_11,
  440. PINMUX_FUNCTION_END,
  441. PINMUX_MARK_BEGIN,
  442. /* Port A */
  443. /* Port B */
  444. /* Port C */
  445. /* Port D */
  446. /* Port E */
  447. /* Port F */
  448. /* Port G */
  449. /* Port H */
  450. PHAN7_MARK, PHAN6_MARK, PHAN5_MARK, PHAN4_MARK,
  451. PHAN3_MARK, PHAN2_MARK, PHAN1_MARK, PHAN0_MARK,
  452. /* Port I - not on device */
  453. /* Port J */
  454. /* Port K */
  455. IRQ7_PC_MARK, IRQ6_PC_MARK, IRQ5_PC_MARK, IRQ4_PC_MARK,
  456. IRQ3_PG_MARK, IRQ2_PG_MARK, IRQ1_PJ_MARK, IRQ0_PJ_MARK,
  457. IRQ3_PE_MARK, IRQ2_PE_MARK, IRQ1_PE_MARK, IRQ0_PE_MARK,
  458. PINT7_PG_MARK, PINT6_PG_MARK, PINT5_PG_MARK, PINT4_PG_MARK,
  459. PINT3_PG_MARK, PINT2_PG_MARK, PINT1_PG_MARK, PINT0_PG_MARK,
  460. SD_CD_MARK, SD_D0_MARK, SD_D1_MARK, SD_D2_MARK, SD_D3_MARK,
  461. SD_WP_MARK, SD_CLK_MARK, SD_CMD_MARK,
  462. CRX0_MARK, CRX1_MARK,
  463. CTX0_MARK, CTX1_MARK,
  464. PWM1A_MARK, PWM1B_MARK, PWM1C_MARK, PWM1D_MARK,
  465. PWM1E_MARK, PWM1F_MARK, PWM1G_MARK, PWM1H_MARK,
  466. PWM2A_MARK, PWM2B_MARK, PWM2C_MARK, PWM2D_MARK,
  467. PWM2E_MARK, PWM2F_MARK, PWM2G_MARK, PWM2H_MARK,
  468. IERXD_MARK, IETXD_MARK,
  469. CRX0_CRX1_MARK,
  470. WDTOVF_MARK,
  471. CRX0X1_MARK,
  472. /* DMAC */
  473. TEND0_MARK, DACK0_MARK, DREQ0_MARK,
  474. TEND1_MARK, DACK1_MARK, DREQ1_MARK,
  475. /* ADC */
  476. ADTRG_MARK,
  477. /* BSC */
  478. A25_MARK, A24_MARK,
  479. A23_MARK, A22_MARK, A21_MARK, A20_MARK,
  480. A19_MARK, A18_MARK, A17_MARK, A16_MARK,
  481. A15_MARK, A14_MARK, A13_MARK, A12_MARK,
  482. A11_MARK, A10_MARK, A9_MARK, A8_MARK,
  483. A7_MARK, A6_MARK, A5_MARK, A4_MARK,
  484. A3_MARK, A2_MARK, A1_MARK, A0_MARK,
  485. D15_MARK, D14_MARK, D13_MARK, D12_MARK,
  486. D11_MARK, D10_MARK, D9_MARK, D8_MARK,
  487. D7_MARK, D6_MARK, D5_MARK, D4_MARK,
  488. D3_MARK, D2_MARK, D1_MARK, D0_MARK,
  489. BS_MARK,
  490. CS4_MARK, CS3_MARK, CS2_MARK, CS1_MARK, CS0_MARK,
  491. CS6CE1B_MARK, CS5CE1A_MARK,
  492. CE2A_MARK, CE2B_MARK,
  493. RD_MARK, RDWR_MARK,
  494. ICIOWRAH_MARK,
  495. ICIORD_MARK,
  496. WE1DQMUWE_MARK,
  497. WE0DQML_MARK,
  498. RAS_MARK, CAS_MARK, CKE_MARK,
  499. WAIT_MARK, BREQ_MARK, BACK_MARK, IOIS16_MARK,
  500. /* TMU */
  501. TIOC0A_MARK, TIOC0B_MARK, TIOC0C_MARK, TIOC0D_MARK,
  502. TIOC1A_MARK, TIOC1B_MARK,
  503. TIOC2A_MARK, TIOC2B_MARK,
  504. TIOC3A_MARK, TIOC3B_MARK, TIOC3C_MARK, TIOC3D_MARK,
  505. TIOC4A_MARK, TIOC4B_MARK, TIOC4C_MARK, TIOC4D_MARK,
  506. TCLKA_MARK, TCLKB_MARK, TCLKC_MARK, TCLKD_MARK,
  507. /* SCIF */
  508. SCK0_MARK, SCK1_MARK, SCK2_MARK, SCK3_MARK,
  509. RXD0_MARK, RXD1_MARK, RXD2_MARK, RXD3_MARK,
  510. TXD0_MARK, TXD1_MARK, TXD2_MARK, TXD3_MARK,
  511. RXD4_MARK, RXD5_MARK, RXD6_MARK, RXD7_MARK,
  512. TXD4_MARK, TXD5_MARK, TXD6_MARK, TXD7_MARK,
  513. RTS1_MARK, RTS3_MARK,
  514. CTS1_MARK, CTS3_MARK,
  515. /* RSPI */
  516. RSPCK0_MARK, RSPCK1_MARK,
  517. MOSI0_MARK, MOSI1_MARK,
  518. MISO0_PF12_MARK, MISO1_MARK, MISO1_PG19_MARK,
  519. SSL00_MARK, SSL10_MARK,
  520. /* IIC3 */
  521. SCL0_MARK, SCL1_MARK, SCL2_MARK,
  522. SDA0_MARK, SDA1_MARK, SDA2_MARK,
  523. /* SSI */
  524. SSISCK0_MARK,
  525. SSIWS0_MARK,
  526. SSITXD0_MARK,
  527. SSIRXD0_MARK,
  528. SSIWS1_MARK, SSIWS2_MARK, SSIWS3_MARK,
  529. SSISCK1_MARK, SSISCK2_MARK, SSISCK3_MARK,
  530. SSIDATA1_MARK, SSIDATA2_MARK, SSIDATA3_MARK,
  531. AUDIO_CLK_MARK,
  532. /* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
  533. SIOFTXD_MARK, SIOFRXD_MARK, SIOFSYNC_MARK, SIOFSCK_MARK,
  534. /* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
  535. SPDIF_IN_MARK, SPDIF_OUT_MARK,
  536. /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
  537. FCE_MARK,
  538. FRB_MARK,
  539. /* VDC3 */
  540. DV_CLK_MARK,
  541. DV_VSYNC_MARK, DV_HSYNC_MARK,
  542. DV_DATA7_MARK, DV_DATA6_MARK, DV_DATA5_MARK, DV_DATA4_MARK,
  543. DV_DATA3_MARK, DV_DATA2_MARK, DV_DATA1_MARK, DV_DATA0_MARK,
  544. LCD_CLK_MARK, LCD_EXTCLK_MARK,
  545. LCD_VSYNC_MARK, LCD_HSYNC_MARK, LCD_DE_MARK,
  546. LCD_DATA15_MARK, LCD_DATA14_MARK, LCD_DATA13_MARK, LCD_DATA12_MARK,
  547. LCD_DATA11_MARK, LCD_DATA10_MARK, LCD_DATA9_MARK, LCD_DATA8_MARK,
  548. LCD_DATA7_MARK, LCD_DATA6_MARK, LCD_DATA5_MARK, LCD_DATA4_MARK,
  549. LCD_DATA3_MARK, LCD_DATA2_MARK, LCD_DATA1_MARK, LCD_DATA0_MARK,
  550. LCD_M_DISP_MARK,
  551. PINMUX_MARK_END,
  552. };
  553. static const u16 pinmux_data[] = {
  554. /* Port A */
  555. PINMUX_DATA(PA3_DATA, PA3_IN),
  556. PINMUX_DATA(PA2_DATA, PA2_IN),
  557. PINMUX_DATA(PA1_DATA, PA1_IN),
  558. PINMUX_DATA(PA0_DATA, PA0_IN),
  559. /* Port B */
  560. PINMUX_DATA(PB22_DATA, PB22MD_00, PB22_IN, PB22_OUT),
  561. PINMUX_DATA(A22_MARK, PB22MD_01),
  562. PINMUX_DATA(CS4_MARK, PB22MD_10),
  563. PINMUX_DATA(PB21_DATA, PB21MD_0, PB21_IN, PB21_OUT),
  564. PINMUX_DATA(A21_MARK, PB21MD_1),
  565. PINMUX_DATA(A20_MARK, PB20MD_1),
  566. PINMUX_DATA(A19_MARK, PB19MD_01),
  567. PINMUX_DATA(A18_MARK, PB18MD_01),
  568. PINMUX_DATA(A17_MARK, PB17MD_01),
  569. PINMUX_DATA(A16_MARK, PB16MD_01),
  570. PINMUX_DATA(A15_MARK, PB15MD_01),
  571. PINMUX_DATA(A14_MARK, PB14MD_01),
  572. PINMUX_DATA(A13_MARK, PB13MD_01),
  573. PINMUX_DATA(A12_MARK, PB12MD_01),
  574. PINMUX_DATA(A11_MARK, PB11MD_01),
  575. PINMUX_DATA(A10_MARK, PB10MD_01),
  576. PINMUX_DATA(A9_MARK, PB9MD_01),
  577. PINMUX_DATA(A8_MARK, PB8MD_01),
  578. PINMUX_DATA(A7_MARK, PB7MD_01),
  579. PINMUX_DATA(A6_MARK, PB6MD_01),
  580. PINMUX_DATA(A5_MARK, PB5MD_01),
  581. PINMUX_DATA(A4_MARK, PB4MD_01),
  582. PINMUX_DATA(A3_MARK, PB3MD_1),
  583. PINMUX_DATA(A2_MARK, PB2MD_1),
  584. PINMUX_DATA(A1_MARK, PB1MD_1),
  585. /* Port C */
  586. PINMUX_DATA(PC10_DATA, PC10MD_0),
  587. PINMUX_DATA(TIOC2B_MARK, PC1MD_1),
  588. PINMUX_DATA(PC9_DATA, PC9MD_0),
  589. PINMUX_DATA(TIOC2A_MARK, PC9MD_1),
  590. PINMUX_DATA(PC8_DATA, PC8MD_00),
  591. PINMUX_DATA(CS3_MARK, PC8MD_01),
  592. PINMUX_DATA(TIOC4D_MARK, PC8MD_10),
  593. PINMUX_DATA(IRQ7_PC_MARK, PC8MD_11),
  594. PINMUX_DATA(PC7_DATA, PC7MD_00),
  595. PINMUX_DATA(CKE_MARK, PC7MD_01),
  596. PINMUX_DATA(TIOC4C_MARK, PC7MD_10),
  597. PINMUX_DATA(IRQ6_PC_MARK, PC7MD_11),
  598. PINMUX_DATA(PC6_DATA, PC6MD_00),
  599. PINMUX_DATA(CAS_MARK, PC6MD_01),
  600. PINMUX_DATA(TIOC4B_MARK, PC6MD_10),
  601. PINMUX_DATA(IRQ5_PC_MARK, PC6MD_11),
  602. PINMUX_DATA(PC5_DATA, PC5MD_00),
  603. PINMUX_DATA(RAS_MARK, PC5MD_01),
  604. PINMUX_DATA(TIOC4A_MARK, PC5MD_10),
  605. PINMUX_DATA(IRQ4_PC_MARK, PC5MD_11),
  606. PINMUX_DATA(PC4_DATA, PC4MD_0),
  607. PINMUX_DATA(WE1DQMUWE_MARK, PC4MD_1),
  608. PINMUX_DATA(PC3_DATA, PC3MD_0),
  609. PINMUX_DATA(WE0DQML_MARK, PC3MD_1),
  610. PINMUX_DATA(PC2_DATA, PC2MD_0),
  611. PINMUX_DATA(RDWR_MARK, PC2MD_1),
  612. PINMUX_DATA(PC1_DATA, PC1MD_0),
  613. PINMUX_DATA(RD_MARK, PC1MD_1),
  614. PINMUX_DATA(PC0_DATA, PC0MD_0),
  615. PINMUX_DATA(CS0_MARK, PC0MD_1),
  616. /* Port D */
  617. PINMUX_DATA(D15_MARK, PD15MD_01),
  618. PINMUX_DATA(D14_MARK, PD14MD_01),
  619. PINMUX_DATA(D13_MARK, PD13MD_01),
  620. PINMUX_DATA(D12_MARK, PD12MD_01),
  621. PINMUX_DATA(D11_MARK, PD11MD_01),
  622. PINMUX_DATA(D10_MARK, PD10MD_01),
  623. PINMUX_DATA(D9_MARK, PD9MD_01),
  624. PINMUX_DATA(D8_MARK, PD8MD_01),
  625. PINMUX_DATA(D7_MARK, PD7MD_01),
  626. PINMUX_DATA(D6_MARK, PD6MD_01),
  627. PINMUX_DATA(D5_MARK, PD5MD_01),
  628. PINMUX_DATA(D4_MARK, PD4MD_01),
  629. PINMUX_DATA(D3_MARK, PD3MD_01),
  630. PINMUX_DATA(D2_MARK, PD2MD_01),
  631. PINMUX_DATA(D1_MARK, PD1MD_01),
  632. PINMUX_DATA(D0_MARK, PD0MD_01),
  633. /* Port E */
  634. PINMUX_DATA(PE5_DATA, PE5MD_00),
  635. PINMUX_DATA(SDA2_MARK, PE5MD_01),
  636. PINMUX_DATA(DV_HSYNC_MARK, PE5MD_11),
  637. PINMUX_DATA(PE4_DATA, PE4MD_00),
  638. PINMUX_DATA(SCL2_MARK, PE4MD_01),
  639. PINMUX_DATA(DV_VSYNC_MARK, PE4MD_11),
  640. PINMUX_DATA(PE3_DATA, PE3MD_00),
  641. PINMUX_DATA(SDA1_MARK, PE3MD_01),
  642. PINMUX_DATA(IRQ3_PE_MARK, PE3MD_11),
  643. PINMUX_DATA(PE2_DATA, PE2MD_00),
  644. PINMUX_DATA(SCL1_MARK, PE2MD_01),
  645. PINMUX_DATA(IRQ2_PE_MARK, PE2MD_11),
  646. PINMUX_DATA(PE1_DATA, PE1MD_000),
  647. PINMUX_DATA(SDA0_MARK, PE1MD_001),
  648. PINMUX_DATA(IOIS16_MARK, PE1MD_010),
  649. PINMUX_DATA(IRQ1_PE_MARK, PE1MD_011),
  650. PINMUX_DATA(TCLKA_MARK, PE1MD_100),
  651. PINMUX_DATA(ADTRG_MARK, PE1MD_101),
  652. PINMUX_DATA(PE0_DATA, PE0MD_00),
  653. PINMUX_DATA(SCL0_MARK, PE0MD_01),
  654. PINMUX_DATA(AUDIO_CLK_MARK, PE0MD_10),
  655. PINMUX_DATA(IRQ0_PE_MARK, PE0MD_11),
  656. /* Port F */
  657. PINMUX_DATA(PF12_DATA, PF12MD_000),
  658. PINMUX_DATA(BS_MARK, PF12MD_001),
  659. PINMUX_DATA(MISO0_PF12_MARK, PF12MD_011),
  660. PINMUX_DATA(TIOC3D_MARK, PF12MD_100),
  661. PINMUX_DATA(SPDIF_OUT_MARK, PF12MD_101),
  662. PINMUX_DATA(PF11_DATA, PF11MD_000),
  663. PINMUX_DATA(A25_MARK, PF11MD_001),
  664. PINMUX_DATA(SSIDATA3_MARK, PF11MD_010),
  665. PINMUX_DATA(MOSI0_MARK, PF11MD_011),
  666. PINMUX_DATA(TIOC3C_MARK, PF11MD_100),
  667. PINMUX_DATA(SPDIF_IN_MARK, PF11MD_101),
  668. PINMUX_DATA(PF10_DATA, PF10MD_000),
  669. PINMUX_DATA(A24_MARK, PF10MD_001),
  670. PINMUX_DATA(SSIWS3_MARK, PF10MD_010),
  671. PINMUX_DATA(SSL00_MARK, PF10MD_011),
  672. PINMUX_DATA(TIOC3B_MARK, PF10MD_100),
  673. PINMUX_DATA(FCE_MARK, PF10MD_101),
  674. PINMUX_DATA(PF9_DATA, PF9MD_000),
  675. PINMUX_DATA(A23_MARK, PF9MD_001),
  676. PINMUX_DATA(SSISCK3_MARK, PF9MD_010),
  677. PINMUX_DATA(RSPCK0_MARK, PF9MD_011),
  678. PINMUX_DATA(TIOC3A_MARK, PF9MD_100),
  679. PINMUX_DATA(FRB_MARK, PF9MD_101),
  680. PINMUX_DATA(PF8_DATA, PF8MD_00),
  681. PINMUX_DATA(CE2B_MARK, PF8MD_01),
  682. PINMUX_DATA(SSIDATA3_MARK, PF8MD_10),
  683. PINMUX_DATA(DV_CLK_MARK, PF8MD_11),
  684. PINMUX_DATA(PF7_DATA, PF7MD_000),
  685. PINMUX_DATA(CE2A_MARK, PF7MD_001),
  686. PINMUX_DATA(SSIWS3_MARK, PF7MD_010),
  687. PINMUX_DATA(DV_DATA7_MARK, PF7MD_011),
  688. PINMUX_DATA(TCLKD_MARK, PF7MD_100),
  689. PINMUX_DATA(PF6_DATA, PF6MD_000),
  690. PINMUX_DATA(CS6CE1B_MARK, PF6MD_001),
  691. PINMUX_DATA(SSISCK3_MARK, PF6MD_010),
  692. PINMUX_DATA(DV_DATA6_MARK, PF6MD_011),
  693. PINMUX_DATA(TCLKB_MARK, PF6MD_100),
  694. PINMUX_DATA(PF5_DATA, PF5MD_000),
  695. PINMUX_DATA(CS5CE1A_MARK, PF5MD_001),
  696. PINMUX_DATA(SSIDATA2_MARK, PF5MD_010),
  697. PINMUX_DATA(DV_DATA5_MARK, PF5MD_011),
  698. PINMUX_DATA(TCLKC_MARK, PF5MD_100),
  699. PINMUX_DATA(PF4_DATA, PF4MD_000),
  700. PINMUX_DATA(ICIOWRAH_MARK, PF4MD_001),
  701. PINMUX_DATA(SSIWS2_MARK, PF4MD_010),
  702. PINMUX_DATA(DV_DATA4_MARK, PF4MD_011),
  703. PINMUX_DATA(TXD3_MARK, PF4MD_100),
  704. PINMUX_DATA(PF3_DATA, PF3MD_000),
  705. PINMUX_DATA(ICIORD_MARK, PF3MD_001),
  706. PINMUX_DATA(SSISCK2_MARK, PF3MD_010),
  707. PINMUX_DATA(DV_DATA3_MARK, PF3MD_011),
  708. PINMUX_DATA(RXD3_MARK, PF3MD_100),
  709. PINMUX_DATA(PF2_DATA, PF2MD_000),
  710. PINMUX_DATA(BACK_MARK, PF2MD_001),
  711. PINMUX_DATA(SSIDATA1_MARK, PF2MD_010),
  712. PINMUX_DATA(DV_DATA2_MARK, PF2MD_011),
  713. PINMUX_DATA(TXD2_MARK, PF2MD_100),
  714. PINMUX_DATA(DACK0_MARK, PF2MD_101),
  715. PINMUX_DATA(PF1_DATA, PF1MD_000),
  716. PINMUX_DATA(BREQ_MARK, PF1MD_001),
  717. PINMUX_DATA(SSIWS1_MARK, PF1MD_010),
  718. PINMUX_DATA(DV_DATA1_MARK, PF1MD_011),
  719. PINMUX_DATA(RXD2_MARK, PF1MD_100),
  720. PINMUX_DATA(DREQ0_MARK, PF1MD_101),
  721. PINMUX_DATA(PF0_DATA, PF0MD_000),
  722. PINMUX_DATA(WAIT_MARK, PF0MD_001),
  723. PINMUX_DATA(SSISCK1_MARK, PF0MD_010),
  724. PINMUX_DATA(DV_DATA0_MARK, PF0MD_011),
  725. PINMUX_DATA(SCK2_MARK, PF0MD_100),
  726. PINMUX_DATA(TEND0_MARK, PF0MD_101),
  727. /* Port G */
  728. PINMUX_DATA(PG24_DATA, PG24MD_00),
  729. PINMUX_DATA(MOSI0_MARK, PG24MD_01),
  730. PINMUX_DATA(TIOC0D_MARK, PG24MD_10),
  731. PINMUX_DATA(PG23_DATA, PG23MD_00),
  732. PINMUX_DATA(MOSI1_MARK, PG23MD_01),
  733. PINMUX_DATA(TIOC0C_MARK, PG23MD_10),
  734. PINMUX_DATA(PG22_DATA, PG22MD_00),
  735. PINMUX_DATA(SSL10_MARK, PG22MD_01),
  736. PINMUX_DATA(TIOC0B_MARK, PG22MD_10),
  737. PINMUX_DATA(PG21_DATA, PG21MD_00),
  738. PINMUX_DATA(RSPCK1_MARK, PG21MD_01),
  739. PINMUX_DATA(TIOC0A_MARK, PG21MD_10),
  740. PINMUX_DATA(PG20_DATA, PG20MD_000),
  741. PINMUX_DATA(LCD_EXTCLK_MARK, PG20MD_001),
  742. PINMUX_DATA(MISO1_MARK, PG20MD_011),
  743. PINMUX_DATA(TXD7_MARK, PG20MD_100),
  744. PINMUX_DATA(PG19_DATA, PG19MD_000),
  745. PINMUX_DATA(LCD_CLK_MARK, PG19MD_001),
  746. PINMUX_DATA(TIOC2B_MARK, PG19MD_010),
  747. PINMUX_DATA(MISO1_PG19_MARK, PG19MD_011),
  748. PINMUX_DATA(RXD7_MARK, PG19MD_100),
  749. PINMUX_DATA(PG18_DATA, PG18MD_000),
  750. PINMUX_DATA(LCD_DE_MARK, PG18MD_001),
  751. PINMUX_DATA(TIOC2A_MARK, PG18MD_010),
  752. PINMUX_DATA(SSL10_MARK, PG18MD_011),
  753. PINMUX_DATA(TXD6_MARK, PG18MD_100),
  754. PINMUX_DATA(PG17_DATA, PG17MD_000),
  755. PINMUX_DATA(LCD_HSYNC_MARK, PG17MD_001),
  756. PINMUX_DATA(TIOC1B_MARK, PG17MD_010),
  757. PINMUX_DATA(RSPCK1_MARK, PG17MD_011),
  758. PINMUX_DATA(RXD6_MARK, PG17MD_100),
  759. PINMUX_DATA(PG16_DATA, PG16MD_000),
  760. PINMUX_DATA(LCD_VSYNC_MARK, PG16MD_001),
  761. PINMUX_DATA(TIOC1A_MARK, PG16MD_010),
  762. PINMUX_DATA(TXD3_MARK, PG16MD_011),
  763. PINMUX_DATA(CTS1_MARK, PG16MD_100),
  764. PINMUX_DATA(PG15_DATA, PG15MD_000),
  765. PINMUX_DATA(LCD_DATA15_MARK, PG15MD_001),
  766. PINMUX_DATA(TIOC0D_MARK, PG15MD_010),
  767. PINMUX_DATA(RXD3_MARK, PG15MD_011),
  768. PINMUX_DATA(RTS1_MARK, PG15MD_100),
  769. PINMUX_DATA(PG14_DATA, PG14MD_000),
  770. PINMUX_DATA(LCD_DATA14_MARK, PG14MD_001),
  771. PINMUX_DATA(TIOC0C_MARK, PG14MD_010),
  772. PINMUX_DATA(SCK1_MARK, PG14MD_100),
  773. PINMUX_DATA(PG13_DATA, PG13MD_000),
  774. PINMUX_DATA(LCD_DATA13_MARK, PG13MD_001),
  775. PINMUX_DATA(TIOC0B_MARK, PG13MD_010),
  776. PINMUX_DATA(TXD1_MARK, PG13MD_100),
  777. PINMUX_DATA(PG12_DATA, PG12MD_000),
  778. PINMUX_DATA(LCD_DATA12_MARK, PG12MD_001),
  779. PINMUX_DATA(TIOC0A_MARK, PG12MD_010),
  780. PINMUX_DATA(RXD1_MARK, PG12MD_100),
  781. PINMUX_DATA(PG11_DATA, PG11MD_000),
  782. PINMUX_DATA(LCD_DATA11_MARK, PG11MD_001),
  783. PINMUX_DATA(SSITXD0_MARK, PG11MD_010),
  784. PINMUX_DATA(IRQ3_PG_MARK, PG11MD_011),
  785. PINMUX_DATA(TXD5_MARK, PG11MD_100),
  786. PINMUX_DATA(SIOFTXD_MARK, PG11MD_101),
  787. PINMUX_DATA(PG10_DATA, PG10MD_000),
  788. PINMUX_DATA(LCD_DATA10_MARK, PG10MD_001),
  789. PINMUX_DATA(SSIRXD0_MARK, PG10MD_010),
  790. PINMUX_DATA(IRQ2_PG_MARK, PG10MD_011),
  791. PINMUX_DATA(RXD5_MARK, PG10MD_100),
  792. PINMUX_DATA(SIOFRXD_MARK, PG10MD_101),
  793. PINMUX_DATA(PG9_DATA, PG9MD_000),
  794. PINMUX_DATA(LCD_DATA9_MARK, PG9MD_001),
  795. PINMUX_DATA(SSIWS0_MARK, PG9MD_010),
  796. PINMUX_DATA(TXD4_MARK, PG9MD_100),
  797. PINMUX_DATA(SIOFSYNC_MARK, PG9MD_101),
  798. PINMUX_DATA(PG8_DATA, PG8MD_000),
  799. PINMUX_DATA(LCD_DATA8_MARK, PG8MD_001),
  800. PINMUX_DATA(SSISCK0_MARK, PG8MD_010),
  801. PINMUX_DATA(RXD4_MARK, PG8MD_100),
  802. PINMUX_DATA(SIOFSCK_MARK, PG8MD_101),
  803. PINMUX_DATA(PG7_DATA, PG7MD_00),
  804. PINMUX_DATA(LCD_DATA7_MARK, PG7MD_01),
  805. PINMUX_DATA(SD_CD_MARK, PG7MD_10),
  806. PINMUX_DATA(PINT7_PG_MARK, PG7MD_11),
  807. PINMUX_DATA(PG6_DATA, PG7MD_00),
  808. PINMUX_DATA(LCD_DATA6_MARK, PG7MD_01),
  809. PINMUX_DATA(SD_WP_MARK, PG7MD_10),
  810. PINMUX_DATA(PINT6_PG_MARK, PG7MD_11),
  811. PINMUX_DATA(PG5_DATA, PG5MD_00),
  812. PINMUX_DATA(LCD_DATA5_MARK, PG5MD_01),
  813. PINMUX_DATA(SD_D1_MARK, PG5MD_10),
  814. PINMUX_DATA(PINT5_PG_MARK, PG5MD_11),
  815. PINMUX_DATA(PG4_DATA, PG4MD_00),
  816. PINMUX_DATA(LCD_DATA4_MARK, PG4MD_01),
  817. PINMUX_DATA(SD_D0_MARK, PG4MD_10),
  818. PINMUX_DATA(PINT4_PG_MARK, PG4MD_11),
  819. PINMUX_DATA(PG3_DATA, PG3MD_00),
  820. PINMUX_DATA(LCD_DATA3_MARK, PG3MD_01),
  821. PINMUX_DATA(SD_CLK_MARK, PG3MD_10),
  822. PINMUX_DATA(PINT3_PG_MARK, PG3MD_11),
  823. PINMUX_DATA(PG2_DATA, PG2MD_00),
  824. PINMUX_DATA(LCD_DATA2_MARK, PG2MD_01),
  825. PINMUX_DATA(SD_CMD_MARK, PG2MD_10),
  826. PINMUX_DATA(PINT2_PG_MARK, PG2MD_11),
  827. PINMUX_DATA(PG1_DATA, PG1MD_00),
  828. PINMUX_DATA(LCD_DATA1_MARK, PG1MD_01),
  829. PINMUX_DATA(SD_D3_MARK, PG1MD_10),
  830. PINMUX_DATA(PINT1_PG_MARK, PG1MD_11),
  831. PINMUX_DATA(PG0_DATA, PG0MD_000),
  832. PINMUX_DATA(LCD_DATA0_MARK, PG0MD_001),
  833. PINMUX_DATA(SD_D2_MARK, PG0MD_010),
  834. PINMUX_DATA(PINT0_PG_MARK, PG0MD_011),
  835. PINMUX_DATA(WDTOVF_MARK, PG0MD_100),
  836. /* Port H */
  837. PINMUX_DATA(PH7_DATA, PH7MD_0),
  838. PINMUX_DATA(PHAN7_MARK, PH7MD_1),
  839. PINMUX_DATA(PH6_DATA, PH6MD_0),
  840. PINMUX_DATA(PHAN6_MARK, PH6MD_1),
  841. PINMUX_DATA(PH5_DATA, PH5MD_0),
  842. PINMUX_DATA(PHAN5_MARK, PH5MD_1),
  843. PINMUX_DATA(PH4_DATA, PH4MD_0),
  844. PINMUX_DATA(PHAN4_MARK, PH4MD_1),
  845. PINMUX_DATA(PH3_DATA, PH3MD_0),
  846. PINMUX_DATA(PHAN3_MARK, PH3MD_1),
  847. PINMUX_DATA(PH2_DATA, PH2MD_0),
  848. PINMUX_DATA(PHAN2_MARK, PH2MD_1),
  849. PINMUX_DATA(PH1_DATA, PH1MD_0),
  850. PINMUX_DATA(PHAN1_MARK, PH1MD_1),
  851. PINMUX_DATA(PH0_DATA, PH0MD_0),
  852. PINMUX_DATA(PHAN0_MARK, PH0MD_1),
  853. /* Port I - not on device */
  854. /* Port J */
  855. PINMUX_DATA(PJ11_DATA, PJ11MD_00),
  856. PINMUX_DATA(PWM2H_MARK, PJ11MD_01),
  857. PINMUX_DATA(DACK1_MARK, PJ11MD_10),
  858. PINMUX_DATA(PJ10_DATA, PJ10MD_00),
  859. PINMUX_DATA(PWM2G_MARK, PJ10MD_01),
  860. PINMUX_DATA(DREQ1_MARK, PJ10MD_10),
  861. PINMUX_DATA(PJ9_DATA, PJ9MD_00),
  862. PINMUX_DATA(PWM2F_MARK, PJ9MD_01),
  863. PINMUX_DATA(TEND1_MARK, PJ9MD_10),
  864. PINMUX_DATA(PJ8_DATA, PJ8MD_00),
  865. PINMUX_DATA(PWM2E_MARK, PJ8MD_01),
  866. PINMUX_DATA(RTS3_MARK, PJ8MD_10),
  867. PINMUX_DATA(PJ7_DATA, PJ7MD_00),
  868. PINMUX_DATA(TIOC1B_MARK, PJ7MD_01),
  869. PINMUX_DATA(CTS3_MARK, PJ7MD_10),
  870. PINMUX_DATA(PJ6_DATA, PJ6MD_00),
  871. PINMUX_DATA(TIOC1A_MARK, PJ6MD_01),
  872. PINMUX_DATA(SCK3_MARK, PJ6MD_10),
  873. PINMUX_DATA(PJ5_DATA, PJ5MD_00),
  874. PINMUX_DATA(IERXD_MARK, PJ5MD_01),
  875. PINMUX_DATA(TXD3_MARK, PJ5MD_10),
  876. PINMUX_DATA(PJ4_DATA, PJ4MD_00),
  877. PINMUX_DATA(IETXD_MARK, PJ4MD_01),
  878. PINMUX_DATA(RXD3_MARK, PJ4MD_10),
  879. PINMUX_DATA(PJ3_DATA, PJ3MD_00),
  880. PINMUX_DATA(CRX1_MARK, PJ3MD_01),
  881. PINMUX_DATA(CRX0X1_MARK, PJ3MD_10),
  882. PINMUX_DATA(IRQ1_PJ_MARK, PJ3MD_11),
  883. PINMUX_DATA(PJ2_DATA, PJ2MD_000),
  884. PINMUX_DATA(CTX1_MARK, PJ2MD_001),
  885. PINMUX_DATA(CRX0_CRX1_MARK, PJ2MD_010),
  886. PINMUX_DATA(CS2_MARK, PJ2MD_011),
  887. PINMUX_DATA(SCK0_MARK, PJ2MD_100),
  888. PINMUX_DATA(LCD_M_DISP_MARK, PJ2MD_101),
  889. PINMUX_DATA(PJ1_DATA, PJ1MD_000),
  890. PINMUX_DATA(CRX0_MARK, PJ1MD_001),
  891. PINMUX_DATA(IERXD_MARK, PJ1MD_010),
  892. PINMUX_DATA(IRQ0_PJ_MARK, PJ1MD_011),
  893. PINMUX_DATA(RXD0_MARK, PJ1MD_100),
  894. PINMUX_DATA(PJ0_DATA, PJ0MD_000),
  895. PINMUX_DATA(CTX0_MARK, PJ0MD_001),
  896. PINMUX_DATA(IERXD_MARK, PJ0MD_010),
  897. PINMUX_DATA(CS1_MARK, PJ0MD_011),
  898. PINMUX_DATA(TXD0_MARK, PJ0MD_100),
  899. PINMUX_DATA(A0_MARK, PJ0MD_101),
  900. /* Port K */
  901. PINMUX_DATA(PK11_DATA, PK11MD_00),
  902. PINMUX_DATA(PWM2D_MARK, PK11MD_01),
  903. PINMUX_DATA(SSITXD0_MARK, PK11MD_10),
  904. PINMUX_DATA(PK10_DATA, PK10MD_00),
  905. PINMUX_DATA(PWM2C_MARK, PK10MD_01),
  906. PINMUX_DATA(SSIRXD0_MARK, PK10MD_10),
  907. PINMUX_DATA(PK9_DATA, PK9MD_00),
  908. PINMUX_DATA(PWM2B_MARK, PK9MD_01),
  909. PINMUX_DATA(SSIWS0_MARK, PK9MD_10),
  910. PINMUX_DATA(PK8_DATA, PK8MD_00),
  911. PINMUX_DATA(PWM2A_MARK, PK8MD_01),
  912. PINMUX_DATA(SSISCK0_MARK, PK8MD_10),
  913. PINMUX_DATA(PK7_DATA, PK7MD_00),
  914. PINMUX_DATA(PWM1H_MARK, PK7MD_01),
  915. PINMUX_DATA(SD_CD_MARK, PK7MD_10),
  916. PINMUX_DATA(PK6_DATA, PK6MD_00),
  917. PINMUX_DATA(PWM1G_MARK, PK6MD_01),
  918. PINMUX_DATA(SD_WP_MARK, PK6MD_10),
  919. PINMUX_DATA(PK5_DATA, PK5MD_00),
  920. PINMUX_DATA(PWM1F_MARK, PK5MD_01),
  921. PINMUX_DATA(SD_D1_MARK, PK5MD_10),
  922. PINMUX_DATA(PK4_DATA, PK4MD_00),
  923. PINMUX_DATA(PWM1E_MARK, PK4MD_01),
  924. PINMUX_DATA(SD_D0_MARK, PK4MD_10),
  925. PINMUX_DATA(PK3_DATA, PK3MD_00),
  926. PINMUX_DATA(PWM1D_MARK, PK3MD_01),
  927. PINMUX_DATA(SD_CLK_MARK, PK3MD_10),
  928. PINMUX_DATA(PK2_DATA, PK2MD_00),
  929. PINMUX_DATA(PWM1C_MARK, PK2MD_01),
  930. PINMUX_DATA(SD_CMD_MARK, PK2MD_10),
  931. PINMUX_DATA(PK1_DATA, PK1MD_00),
  932. PINMUX_DATA(PWM1B_MARK, PK1MD_01),
  933. PINMUX_DATA(SD_D3_MARK, PK1MD_10),
  934. PINMUX_DATA(PK0_DATA, PK0MD_00),
  935. PINMUX_DATA(PWM1A_MARK, PK0MD_01),
  936. PINMUX_DATA(SD_D2_MARK, PK0MD_10),
  937. };
  938. static const struct sh_pfc_pin pinmux_pins[] = {
  939. /* Port A */
  940. PINMUX_GPIO(PA3),
  941. PINMUX_GPIO(PA2),
  942. PINMUX_GPIO(PA1),
  943. PINMUX_GPIO(PA0),
  944. /* Port B */
  945. PINMUX_GPIO(PB22),
  946. PINMUX_GPIO(PB21),
  947. PINMUX_GPIO(PB20),
  948. PINMUX_GPIO(PB19),
  949. PINMUX_GPIO(PB18),
  950. PINMUX_GPIO(PB17),
  951. PINMUX_GPIO(PB16),
  952. PINMUX_GPIO(PB15),
  953. PINMUX_GPIO(PB14),
  954. PINMUX_GPIO(PB13),
  955. PINMUX_GPIO(PB12),
  956. PINMUX_GPIO(PB11),
  957. PINMUX_GPIO(PB10),
  958. PINMUX_GPIO(PB9),
  959. PINMUX_GPIO(PB8),
  960. PINMUX_GPIO(PB7),
  961. PINMUX_GPIO(PB6),
  962. PINMUX_GPIO(PB5),
  963. PINMUX_GPIO(PB4),
  964. PINMUX_GPIO(PB3),
  965. PINMUX_GPIO(PB2),
  966. PINMUX_GPIO(PB1),
  967. /* Port C */
  968. PINMUX_GPIO(PC10),
  969. PINMUX_GPIO(PC9),
  970. PINMUX_GPIO(PC8),
  971. PINMUX_GPIO(PC7),
  972. PINMUX_GPIO(PC6),
  973. PINMUX_GPIO(PC5),
  974. PINMUX_GPIO(PC4),
  975. PINMUX_GPIO(PC3),
  976. PINMUX_GPIO(PC2),
  977. PINMUX_GPIO(PC1),
  978. PINMUX_GPIO(PC0),
  979. /* Port D */
  980. PINMUX_GPIO(PD15),
  981. PINMUX_GPIO(PD14),
  982. PINMUX_GPIO(PD13),
  983. PINMUX_GPIO(PD12),
  984. PINMUX_GPIO(PD11),
  985. PINMUX_GPIO(PD10),
  986. PINMUX_GPIO(PD9),
  987. PINMUX_GPIO(PD8),
  988. PINMUX_GPIO(PD7),
  989. PINMUX_GPIO(PD6),
  990. PINMUX_GPIO(PD5),
  991. PINMUX_GPIO(PD4),
  992. PINMUX_GPIO(PD3),
  993. PINMUX_GPIO(PD2),
  994. PINMUX_GPIO(PD1),
  995. PINMUX_GPIO(PD0),
  996. /* Port E */
  997. PINMUX_GPIO(PE5),
  998. PINMUX_GPIO(PE4),
  999. PINMUX_GPIO(PE3),
  1000. PINMUX_GPIO(PE2),
  1001. PINMUX_GPIO(PE1),
  1002. PINMUX_GPIO(PE0),
  1003. /* Port F */
  1004. PINMUX_GPIO(PF12),
  1005. PINMUX_GPIO(PF11),
  1006. PINMUX_GPIO(PF10),
  1007. PINMUX_GPIO(PF9),
  1008. PINMUX_GPIO(PF8),
  1009. PINMUX_GPIO(PF7),
  1010. PINMUX_GPIO(PF6),
  1011. PINMUX_GPIO(PF5),
  1012. PINMUX_GPIO(PF4),
  1013. PINMUX_GPIO(PF3),
  1014. PINMUX_GPIO(PF2),
  1015. PINMUX_GPIO(PF1),
  1016. PINMUX_GPIO(PF0),
  1017. /* Port G */
  1018. PINMUX_GPIO(PG24),
  1019. PINMUX_GPIO(PG23),
  1020. PINMUX_GPIO(PG22),
  1021. PINMUX_GPIO(PG21),
  1022. PINMUX_GPIO(PG20),
  1023. PINMUX_GPIO(PG19),
  1024. PINMUX_GPIO(PG18),
  1025. PINMUX_GPIO(PG17),
  1026. PINMUX_GPIO(PG16),
  1027. PINMUX_GPIO(PG15),
  1028. PINMUX_GPIO(PG14),
  1029. PINMUX_GPIO(PG13),
  1030. PINMUX_GPIO(PG12),
  1031. PINMUX_GPIO(PG11),
  1032. PINMUX_GPIO(PG10),
  1033. PINMUX_GPIO(PG9),
  1034. PINMUX_GPIO(PG8),
  1035. PINMUX_GPIO(PG7),
  1036. PINMUX_GPIO(PG6),
  1037. PINMUX_GPIO(PG5),
  1038. PINMUX_GPIO(PG4),
  1039. PINMUX_GPIO(PG3),
  1040. PINMUX_GPIO(PG2),
  1041. PINMUX_GPIO(PG1),
  1042. PINMUX_GPIO(PG0),
  1043. /* Port H - Port H does not have a Data Register */
  1044. /* Port I - not on device */
  1045. /* Port J */
  1046. PINMUX_GPIO(PJ11),
  1047. PINMUX_GPIO(PJ10),
  1048. PINMUX_GPIO(PJ9),
  1049. PINMUX_GPIO(PJ8),
  1050. PINMUX_GPIO(PJ7),
  1051. PINMUX_GPIO(PJ6),
  1052. PINMUX_GPIO(PJ5),
  1053. PINMUX_GPIO(PJ4),
  1054. PINMUX_GPIO(PJ3),
  1055. PINMUX_GPIO(PJ2),
  1056. PINMUX_GPIO(PJ1),
  1057. PINMUX_GPIO(PJ0),
  1058. /* Port K */
  1059. PINMUX_GPIO(PK11),
  1060. PINMUX_GPIO(PK10),
  1061. PINMUX_GPIO(PK9),
  1062. PINMUX_GPIO(PK8),
  1063. PINMUX_GPIO(PK7),
  1064. PINMUX_GPIO(PK6),
  1065. PINMUX_GPIO(PK5),
  1066. PINMUX_GPIO(PK4),
  1067. PINMUX_GPIO(PK3),
  1068. PINMUX_GPIO(PK2),
  1069. PINMUX_GPIO(PK1),
  1070. PINMUX_GPIO(PK0),
  1071. };
  1072. #define PINMUX_FN_BASE ARRAY_SIZE(pinmux_pins)
  1073. static const struct pinmux_func pinmux_func_gpios[] = {
  1074. /* INTC */
  1075. GPIO_FN(PINT7_PG),
  1076. GPIO_FN(PINT6_PG),
  1077. GPIO_FN(PINT5_PG),
  1078. GPIO_FN(PINT4_PG),
  1079. GPIO_FN(PINT3_PG),
  1080. GPIO_FN(PINT2_PG),
  1081. GPIO_FN(PINT1_PG),
  1082. GPIO_FN(IRQ7_PC),
  1083. GPIO_FN(IRQ6_PC),
  1084. GPIO_FN(IRQ5_PC),
  1085. GPIO_FN(IRQ4_PC),
  1086. GPIO_FN(IRQ3_PG),
  1087. GPIO_FN(IRQ2_PG),
  1088. GPIO_FN(IRQ1_PJ),
  1089. GPIO_FN(IRQ0_PJ),
  1090. GPIO_FN(IRQ3_PE),
  1091. GPIO_FN(IRQ2_PE),
  1092. GPIO_FN(IRQ1_PE),
  1093. GPIO_FN(IRQ0_PE),
  1094. /* WDT */
  1095. GPIO_FN(WDTOVF),
  1096. /* CAN */
  1097. GPIO_FN(CTX1),
  1098. GPIO_FN(CRX1),
  1099. GPIO_FN(CTX0),
  1100. GPIO_FN(CRX0),
  1101. GPIO_FN(CRX0_CRX1),
  1102. /* DMAC */
  1103. GPIO_FN(TEND0),
  1104. GPIO_FN(DACK0),
  1105. GPIO_FN(DREQ0),
  1106. GPIO_FN(TEND1),
  1107. GPIO_FN(DACK1),
  1108. GPIO_FN(DREQ1),
  1109. /* ADC */
  1110. GPIO_FN(ADTRG),
  1111. /* BSCh */
  1112. GPIO_FN(A25),
  1113. GPIO_FN(A24),
  1114. GPIO_FN(A23),
  1115. GPIO_FN(A22),
  1116. GPIO_FN(A21),
  1117. GPIO_FN(A20),
  1118. GPIO_FN(A19),
  1119. GPIO_FN(A18),
  1120. GPIO_FN(A17),
  1121. GPIO_FN(A16),
  1122. GPIO_FN(A15),
  1123. GPIO_FN(A14),
  1124. GPIO_FN(A13),
  1125. GPIO_FN(A12),
  1126. GPIO_FN(A11),
  1127. GPIO_FN(A10),
  1128. GPIO_FN(A9),
  1129. GPIO_FN(A8),
  1130. GPIO_FN(A7),
  1131. GPIO_FN(A6),
  1132. GPIO_FN(A5),
  1133. GPIO_FN(A4),
  1134. GPIO_FN(A3),
  1135. GPIO_FN(A2),
  1136. GPIO_FN(A1),
  1137. GPIO_FN(A0),
  1138. GPIO_FN(D15),
  1139. GPIO_FN(D14),
  1140. GPIO_FN(D13),
  1141. GPIO_FN(D12),
  1142. GPIO_FN(D11),
  1143. GPIO_FN(D10),
  1144. GPIO_FN(D9),
  1145. GPIO_FN(D8),
  1146. GPIO_FN(D7),
  1147. GPIO_FN(D6),
  1148. GPIO_FN(D5),
  1149. GPIO_FN(D4),
  1150. GPIO_FN(D3),
  1151. GPIO_FN(D2),
  1152. GPIO_FN(D1),
  1153. GPIO_FN(D0),
  1154. GPIO_FN(BS),
  1155. GPIO_FN(CS4),
  1156. GPIO_FN(CS3),
  1157. GPIO_FN(CS2),
  1158. GPIO_FN(CS1),
  1159. GPIO_FN(CS0),
  1160. GPIO_FN(CS6CE1B),
  1161. GPIO_FN(CS5CE1A),
  1162. GPIO_FN(CE2A),
  1163. GPIO_FN(CE2B),
  1164. GPIO_FN(RD),
  1165. GPIO_FN(RDWR),
  1166. GPIO_FN(ICIOWRAH),
  1167. GPIO_FN(ICIORD),
  1168. GPIO_FN(WE1DQMUWE),
  1169. GPIO_FN(WE0DQML),
  1170. GPIO_FN(RAS),
  1171. GPIO_FN(CAS),
  1172. GPIO_FN(CKE),
  1173. GPIO_FN(WAIT),
  1174. GPIO_FN(BREQ),
  1175. GPIO_FN(BACK),
  1176. GPIO_FN(IOIS16),
  1177. /* TMU */
  1178. GPIO_FN(TIOC4D),
  1179. GPIO_FN(TIOC4C),
  1180. GPIO_FN(TIOC4B),
  1181. GPIO_FN(TIOC4A),
  1182. GPIO_FN(TIOC3D),
  1183. GPIO_FN(TIOC3C),
  1184. GPIO_FN(TIOC3B),
  1185. GPIO_FN(TIOC3A),
  1186. GPIO_FN(TIOC2B),
  1187. GPIO_FN(TIOC1B),
  1188. GPIO_FN(TIOC2A),
  1189. GPIO_FN(TIOC1A),
  1190. GPIO_FN(TIOC0D),
  1191. GPIO_FN(TIOC0C),
  1192. GPIO_FN(TIOC0B),
  1193. GPIO_FN(TIOC0A),
  1194. GPIO_FN(TCLKD),
  1195. GPIO_FN(TCLKC),
  1196. GPIO_FN(TCLKB),
  1197. GPIO_FN(TCLKA),
  1198. /* SCIF */
  1199. GPIO_FN(TXD0),
  1200. GPIO_FN(RXD0),
  1201. GPIO_FN(SCK0),
  1202. GPIO_FN(TXD1),
  1203. GPIO_FN(RXD1),
  1204. GPIO_FN(SCK1),
  1205. GPIO_FN(TXD2),
  1206. GPIO_FN(RXD2),
  1207. GPIO_FN(SCK2),
  1208. GPIO_FN(RTS3),
  1209. GPIO_FN(CTS3),
  1210. GPIO_FN(TXD3),
  1211. GPIO_FN(RXD3),
  1212. GPIO_FN(SCK3),
  1213. GPIO_FN(TXD4),
  1214. GPIO_FN(RXD4),
  1215. GPIO_FN(TXD5),
  1216. GPIO_FN(RXD5),
  1217. GPIO_FN(TXD6),
  1218. GPIO_FN(RXD6),
  1219. GPIO_FN(TXD7),
  1220. GPIO_FN(RXD7),
  1221. GPIO_FN(RTS1),
  1222. GPIO_FN(CTS1),
  1223. /* RSPI */
  1224. GPIO_FN(RSPCK0),
  1225. GPIO_FN(MOSI0),
  1226. GPIO_FN(MISO0_PF12),
  1227. GPIO_FN(MISO1),
  1228. GPIO_FN(SSL00),
  1229. GPIO_FN(RSPCK1),
  1230. GPIO_FN(MOSI1),
  1231. GPIO_FN(MISO1_PG19),
  1232. GPIO_FN(SSL10),
  1233. /* IIC3 */
  1234. GPIO_FN(SCL0),
  1235. GPIO_FN(SCL1),
  1236. GPIO_FN(SCL2),
  1237. GPIO_FN(SDA0),
  1238. GPIO_FN(SDA1),
  1239. GPIO_FN(SDA2),
  1240. /* SSI */
  1241. GPIO_FN(SSISCK0),
  1242. GPIO_FN(SSIWS0),
  1243. GPIO_FN(SSITXD0),
  1244. GPIO_FN(SSIRXD0),
  1245. GPIO_FN(SSIWS1),
  1246. GPIO_FN(SSIWS2),
  1247. GPIO_FN(SSIWS3),
  1248. GPIO_FN(SSISCK1),
  1249. GPIO_FN(SSISCK2),
  1250. GPIO_FN(SSISCK3),
  1251. GPIO_FN(SSIDATA1),
  1252. GPIO_FN(SSIDATA2),
  1253. GPIO_FN(SSIDATA3),
  1254. GPIO_FN(AUDIO_CLK),
  1255. /* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
  1256. GPIO_FN(SIOFTXD),
  1257. GPIO_FN(SIOFRXD),
  1258. GPIO_FN(SIOFSYNC),
  1259. GPIO_FN(SIOFSCK),
  1260. /* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
  1261. GPIO_FN(SPDIF_IN),
  1262. GPIO_FN(SPDIF_OUT),
  1263. /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
  1264. GPIO_FN(FCE),
  1265. GPIO_FN(FRB),
  1266. /* VDC3 */
  1267. GPIO_FN(DV_CLK),
  1268. GPIO_FN(DV_VSYNC),
  1269. GPIO_FN(DV_HSYNC),
  1270. GPIO_FN(DV_DATA7),
  1271. GPIO_FN(DV_DATA6),
  1272. GPIO_FN(DV_DATA5),
  1273. GPIO_FN(DV_DATA4),
  1274. GPIO_FN(DV_DATA3),
  1275. GPIO_FN(DV_DATA2),
  1276. GPIO_FN(DV_DATA1),
  1277. GPIO_FN(DV_DATA0),
  1278. GPIO_FN(LCD_CLK),
  1279. GPIO_FN(LCD_EXTCLK),
  1280. GPIO_FN(LCD_VSYNC),
  1281. GPIO_FN(LCD_HSYNC),
  1282. GPIO_FN(LCD_DE),
  1283. GPIO_FN(LCD_DATA15),
  1284. GPIO_FN(LCD_DATA14),
  1285. GPIO_FN(LCD_DATA13),
  1286. GPIO_FN(LCD_DATA12),
  1287. GPIO_FN(LCD_DATA11),
  1288. GPIO_FN(LCD_DATA10),
  1289. GPIO_FN(LCD_DATA9),
  1290. GPIO_FN(LCD_DATA8),
  1291. GPIO_FN(LCD_DATA7),
  1292. GPIO_FN(LCD_DATA6),
  1293. GPIO_FN(LCD_DATA5),
  1294. GPIO_FN(LCD_DATA4),
  1295. GPIO_FN(LCD_DATA3),
  1296. GPIO_FN(LCD_DATA2),
  1297. GPIO_FN(LCD_DATA1),
  1298. GPIO_FN(LCD_DATA0),
  1299. GPIO_FN(LCD_M_DISP),
  1300. };
  1301. static const struct pinmux_cfg_reg pinmux_config_regs[] = {
  1302. { PINMUX_CFG_REG("PAIOR0", 0xfffe3812, 16, 1) {
  1303. 0, 0, 0, 0, 0, 0, 0, 0,
  1304. 0, 0, 0, 0, 0, 0, 0, 0,
  1305. 0, 0, 0, 0, 0, 0, 0, 0,
  1306. PA3_IN, PA3_OUT,
  1307. PA2_IN, PA2_OUT,
  1308. PA1_IN, PA1_OUT,
  1309. PA0_IN, PA0_OUT }
  1310. },
  1311. { PINMUX_CFG_REG("PBCR5", 0xfffe3824, 16, 4) {
  1312. 0, 0, 0, 0, 0, 0, 0, 0,
  1313. 0, 0, 0, 0, 0, 0, 0, 0,
  1314. PB22MD_00, PB22MD_01, PB22MD_10, 0, 0, 0, 0, 0,
  1315. 0, 0, 0, 0, 0, 0, 0, 0,
  1316. PB21MD_0, PB21MD_1, 0, 0, 0, 0, 0, 0,
  1317. 0, 0, 0, 0, 0, 0, 0, 0,
  1318. 0, PB20MD_1, 0, 0, 0, 0, 0, 0,
  1319. 0, 0, 0, 0, 0, 0, 0, 0 }
  1320. },
  1321. { PINMUX_CFG_REG("PBCR4", 0xfffe3826, 16, 4) {
  1322. 0, PB19MD_01, 0, 0, 0, 0, 0, 0,
  1323. 0, 0, 0, 0, 0, 0, 0, 0,
  1324. 0, PB18MD_01, 0, 0, 0, 0, 0, 0,
  1325. 0, 0, 0, 0, 0, 0, 0, 0,
  1326. 0, PB17MD_01, 0, 0, 0, 0, 0, 0,
  1327. 0, 0, 0, 0, 0, 0, 0, 0,
  1328. 0, PB16MD_01, 0, 0, 0, 0, 0, 0,
  1329. 0, 0, 0, 0, 0, 0, 0, 0 }
  1330. },
  1331. { PINMUX_CFG_REG("PBCR3", 0xfffe3828, 16, 4) {
  1332. 0, PB15MD_01, 0, 0, 0, 0, 0, 0,
  1333. 0, 0, 0, 0, 0, 0, 0, 0,
  1334. 0, PB14MD_01, 0, 0, 0, 0, 0, 0,
  1335. 0, 0, 0, 0, 0, 0, 0, 0,
  1336. 0, PB13MD_01, 0, 0, 0, 0, 0, 0,
  1337. 0, 0, 0, 0, 0, 0, 0, 0,
  1338. 0, PB12MD_01, 0, 0, 0, 0, 0, 0,
  1339. 0, 0, 0, 0, 0, 0, 0, 0 }
  1340. },
  1341. { PINMUX_CFG_REG("PBCR2", 0xfffe382a, 16, 4) {
  1342. 0, PB11MD_01, 0, 0, 0, 0, 0, 0,
  1343. 0, 0, 0, 0, 0, 0, 0, 0,
  1344. 0, PB10MD_01, 0, 0, 0, 0, 0, 0,
  1345. 0, 0, 0, 0, 0, 0, 0, 0,
  1346. 0, PB9MD_01, 0, 0, 0, 0, 0, 0,
  1347. 0, 0, 0, 0, 0, 0, 0, 0,
  1348. 0, PB8MD_01, 0, 0, 0, 0, 0, 0,
  1349. 0, 0, 0, 0, 0, 0, 0, 0 }
  1350. },
  1351. { PINMUX_CFG_REG("PBCR1", 0xfffe382c, 16, 4) {
  1352. 0, PB7MD_01, 0, 0, 0, 0, 0, 0,
  1353. 0, 0, 0, 0, 0, 0, 0, 0,
  1354. 0, PB6MD_01, 0, 0, 0, 0, 0, 0,
  1355. 0, 0, 0, 0, 0, 0, 0, 0,
  1356. 0, PB5MD_01, 0, 0, 0, 0, 0, 0,
  1357. 0, 0, 0, 0, 0, 0, 0, 0,
  1358. 0, PB4MD_01, 0, 0, 0, 0, 0, 0,
  1359. 0, 0, 0, 0, 0, 0, 0, 0 }
  1360. },
  1361. { PINMUX_CFG_REG("PBCR0", 0xfffe382e, 16, 4) {
  1362. 0, PB3MD_1, 0, 0, 0, 0, 0, 0,
  1363. 0, 0, 0, 0, 0, 0, 0, 0,
  1364. 0, PB2MD_1, 0, 0, 0, 0, 0, 0,
  1365. 0, 0, 0, 0, 0, 0, 0, 0,
  1366. 0, PB1MD_1, 0, 0, 0, 0, 0, 0,
  1367. 0, 0, 0, 0, 0, 0, 0, 0,
  1368. 0, 0, 0, 0, 0, 0, 0, 0,
  1369. 0, 0, 0, 0, 0, 0, 0, 0 }
  1370. },
  1371. { PINMUX_CFG_REG("PBIOR1", 0xfffe3830, 16, 1) {
  1372. 0, 0, 0, 0, 0, 0, 0, 0,
  1373. 0, 0, 0, 0, 0, 0, 0, 0,
  1374. 0, 0,
  1375. PB22_IN, PB22_OUT,
  1376. PB21_IN, PB21_OUT,
  1377. PB20_IN, PB20_OUT,
  1378. PB19_IN, PB19_OUT,
  1379. PB18_IN, PB18_OUT,
  1380. PB17_IN, PB17_OUT,
  1381. PB16_IN, PB16_OUT }
  1382. },
  1383. { PINMUX_CFG_REG("PBIOR0", 0xfffe3832, 16, 1) {
  1384. PB15_IN, PB15_OUT,
  1385. PB14_IN, PB14_OUT,
  1386. PB13_IN, PB13_OUT,
  1387. PB12_IN, PB12_OUT,
  1388. PB11_IN, PB11_OUT,
  1389. PB10_IN, PB10_OUT,
  1390. PB9_IN, PB9_OUT,
  1391. PB8_IN, PB8_OUT,
  1392. PB7_IN, PB7_OUT,
  1393. PB6_IN, PB6_OUT,
  1394. PB5_IN, PB5_OUT,
  1395. PB4_IN, PB4_OUT,
  1396. PB3_IN, PB3_OUT,
  1397. PB2_IN, PB2_OUT,
  1398. PB1_IN, PB1_OUT,
  1399. 0, 0 }
  1400. },
  1401. { PINMUX_CFG_REG("PCCR2", 0xfffe384a, 16, 4) {
  1402. 0, 0, 0, 0, 0, 0, 0, 0,
  1403. 0, 0, 0, 0, 0, 0, 0, 0,
  1404. PC10MD_0, PC10MD_1, 0, 0, 0, 0, 0, 0,
  1405. 0, 0, 0, 0, 0, 0, 0, 0,
  1406. PC9MD_0, PC9MD_1, 0, 0, 0, 0, 0, 0,
  1407. 0, 0, 0, 0, 0, 0, 0, 0,
  1408. PC8MD_00, PC8MD_01, PC8MD_10, PC8MD_11, 0, 0, 0, 0,
  1409. 0, 0, 0, 0, 0, 0, 0, 0 }
  1410. },
  1411. { PINMUX_CFG_REG("PCCR1", 0xfffe384c, 16, 4) {
  1412. PC7MD_00, PC7MD_01, PC7MD_10, PC7MD_11, 0, 0, 0, 0,
  1413. 0, 0, 0, 0, 0, 0, 0, 0,
  1414. PC6MD_00, PC6MD_01, PC6MD_10, PC6MD_11, 0, 0, 0, 0,
  1415. 0, 0, 0, 0, 0, 0, 0, 0,
  1416. PC5MD_00, PC5MD_01, PC5MD_10, PC5MD_11, 0, 0, 0, 0,
  1417. 0, 0, 0, 0, 0, 0, 0, 0,
  1418. PC4MD_0, PC4MD_1, 0, 0, 0, 0, 0, 0,
  1419. 0, 0, 0, 0, 0, 0, 0, 0 }
  1420. },
  1421. { PINMUX_CFG_REG("PCCR0", 0xfffe384e, 16, 4) {
  1422. PC3MD_0, PC3MD_1, 0, 0, 0, 0, 0, 0,
  1423. 0, 0, 0, 0, 0, 0, 0, 0,
  1424. PC2MD_0, PC2MD_1, 0, 0, 0, 0, 0, 0,
  1425. 0, 0, 0, 0, 0, 0, 0, 0,
  1426. PC1MD_0, PC1MD_1, 0, 0, 0, 0, 0, 0,
  1427. 0, 0, 0, 0, 0, 0, 0, 0,
  1428. PC0MD_0, PC0MD_1, 0, 0, 0, 0, 0, 0,
  1429. 0, 0, 0, 0, 0, 0, 0, 0 }
  1430. },
  1431. { PINMUX_CFG_REG("PCIOR0", 0xfffe3852, 16, 1) {
  1432. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  1433. PC10_IN, PC10_OUT,
  1434. PC9_IN, PC9_OUT,
  1435. PC8_IN, PC8_OUT,
  1436. PC7_IN, PC7_OUT,
  1437. PC6_IN, PC6_OUT,
  1438. PC5_IN, PC5_OUT,
  1439. PC4_IN, PC4_OUT,
  1440. PC3_IN, PC3_OUT,
  1441. PC2_IN, PC2_OUT,
  1442. PC1_IN, PC1_OUT,
  1443. PC0_IN, PC0_OUT
  1444. }
  1445. },
  1446. { PINMUX_CFG_REG("PDCR3", 0xfffe3868, 16, 4) {
  1447. 0, PD15MD_01, 0, 0, 0, 0, 0, 0,
  1448. 0, 0, 0, 0, 0, 0, 0, 0,
  1449. 0, PD14MD_01, 0, 0, 0, 0, 0, 0,
  1450. 0, 0, 0, 0, 0, 0, 0, 0,
  1451. 0, PD13MD_01, 0, 0, 0, 0, 0, 0,
  1452. 0, 0, 0, 0, 0, 0, 0, 0,
  1453. 0, PD12MD_01, 0, 0, 0, 0, 0, 0,
  1454. 0, 0, 0, 0, 0, 0, 0, 0 }
  1455. },
  1456. { PINMUX_CFG_REG("PDCR2", 0xfffe386a, 16, 4) {
  1457. 0, PD11MD_01, 0, 0, 0, 0, 0, 0,
  1458. 0, 0, 0, 0, 0, 0, 0, 0,
  1459. 0, PD10MD_01, 0, 0, 0, 0, 0, 0,
  1460. 0, 0, 0, 0, 0, 0, 0, 0,
  1461. 0, PD9MD_01, 0, 0, 0, 0, 0, 0,
  1462. 0, 0, 0, 0, 0, 0, 0, 0,
  1463. 0, PD8MD_01, 0, 0, 0, 0, 0, 0,
  1464. 0, 0, 0, 0, 0, 0, 0, 0 }
  1465. },
  1466. { PINMUX_CFG_REG("PDCR1", 0xfffe386c, 16, 4) {
  1467. 0, PD7MD_01, 0, 0, 0, 0, 0, 0,
  1468. 0, 0, 0, 0, 0, 0, 0, 0,
  1469. 0, PD6MD_01, 0, 0, 0, 0, 0, 0,
  1470. 0, 0, 0, 0, 0, 0, 0, 0,
  1471. 0, PD5MD_01, 0, 0, 0, 0, 0, 0,
  1472. 0, 0, 0, 0, 0, 0, 0, 0,
  1473. 0, PD4MD_01, 0, 0, 0, 0, 0, 0,
  1474. 0, 0, 0, 0, 0, 0, 0, 0 }
  1475. },
  1476. { PINMUX_CFG_REG("PDCR0", 0xfffe386e, 16, 4) {
  1477. 0, PD3MD_01, 0, 0, 0, 0, 0, 0,
  1478. 0, 0, 0, 0, 0, 0, 0, 0,
  1479. 0, PD2MD_01, 0, 0, 0, 0, 0, 0,
  1480. 0, 0, 0, 0, 0, 0, 0, 0,
  1481. 0, PD1MD_01, 0, 0, 0, 0, 0, 0,
  1482. 0, 0, 0, 0, 0, 0, 0, 0,
  1483. 0, PD0MD_01, 0, 0, 0, 0, 0, 0,
  1484. 0, 0, 0, 0, 0, 0, 0, 0 }
  1485. },
  1486. { PINMUX_CFG_REG("PDIOR0", 0xfffe3872, 16, 1) {
  1487. PD15_IN, PD15_OUT,
  1488. PD14_IN, PD14_OUT,
  1489. PD13_IN, PD13_OUT,
  1490. PD12_IN, PD12_OUT,
  1491. PD11_IN, PD11_OUT,
  1492. PD10_IN, PD10_OUT,
  1493. PD9_IN, PD9_OUT,
  1494. PD8_IN, PD8_OUT,
  1495. PD7_IN, PD7_OUT,
  1496. PD6_IN, PD6_OUT,
  1497. PD5_IN, PD5_OUT,
  1498. PD4_IN, PD4_OUT,
  1499. PD3_IN, PD3_OUT,
  1500. PD2_IN, PD2_OUT,
  1501. PD1_IN, PD1_OUT,
  1502. PD0_IN, PD0_OUT }
  1503. },
  1504. { PINMUX_CFG_REG("PECR1", 0xfffe388c, 16, 4) {
  1505. 0, 0, 0, 0, 0, 0, 0, 0,
  1506. 0, 0, 0, 0, 0, 0, 0, 0,
  1507. 0, 0, 0, 0, 0, 0, 0, 0,
  1508. 0, 0, 0, 0, 0, 0, 0, 0,
  1509. PE5MD_00, PE5MD_01, 0, PE5MD_11, 0, 0, 0, 0,
  1510. 0, 0, 0, 0, 0, 0, 0, 0,
  1511. PE4MD_00, PE4MD_01, 0, PE4MD_11, 0, 0, 0, 0,
  1512. 0, 0, 0, 0, 0, 0, 0, 0 }
  1513. },
  1514. { PINMUX_CFG_REG("PECR0", 0xfffe388e, 16, 4) {
  1515. PE3MD_00, PE3MD_01, 0, PE3MD_11, 0, 0, 0, 0,
  1516. 0, 0, 0, 0, 0, 0, 0, 0,
  1517. PE2MD_00, PE2MD_01, 0, PE2MD_11, 0, 0, 0, 0,
  1518. 0, 0, 0, 0, 0, 0, 0, 0,
  1519. PE1MD_000, PE1MD_001, PE1MD_010, PE1MD_011,
  1520. PE1MD_100, PE1MD_101, 0, 0,
  1521. 0, 0, 0, 0, 0, 0, 0, 0,
  1522. PE0MD_00, PE0MD_01, PE0MD_10, PE0MD_11, 0, 0, 0, 0,
  1523. 0, 0, 0, 0, 0, 0, 0, 0 }
  1524. },
  1525. { PINMUX_CFG_REG("PEIOR0", 0xfffe3892, 16, 1) {
  1526. 0, 0, 0, 0, 0, 0, 0, 0,
  1527. 0, 0, 0, 0, 0, 0, 0, 0,
  1528. 0, 0, 0, 0,
  1529. PE5_IN, PE5_OUT,
  1530. PE4_IN, PE4_OUT,
  1531. PE3_IN, PE3_OUT,
  1532. PE2_IN, PE2_OUT,
  1533. PE1_IN, PE1_OUT,
  1534. PE0_IN, PE0_OUT }
  1535. },
  1536. { PINMUX_CFG_REG("PFCR3", 0xfffe38a8, 16, 4) {
  1537. PF12MD_000, PF12MD_001, 0, PF12MD_011,
  1538. PF12MD_100, PF12MD_101, 0, 0,
  1539. 0, 0, 0, 0, 0, 0, 0, 0 }
  1540. },
  1541. { PINMUX_CFG_REG("PFCR2", 0xfffe38aa, 16, 4) {
  1542. PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
  1543. PF11MD_100, PF11MD_101, 0, 0,
  1544. 0, 0, 0, 0, 0, 0, 0, 0,
  1545. PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
  1546. PF10MD_100, PF10MD_101, 0, 0,
  1547. 0, 0, 0, 0, 0, 0, 0, 0,
  1548. PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
  1549. PF9MD_100, PF9MD_101, 0, 0,
  1550. 0, 0, 0, 0, 0, 0, 0, 0,
  1551. PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11, 0, 0, 0, 0,
  1552. 0, 0, 0, 0, 0, 0, 0, 0 }
  1553. },
  1554. { PINMUX_CFG_REG("PFCR1", 0xfffe38ac, 16, 4) {
  1555. PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
  1556. PF7MD_100, 0, 0, 0,
  1557. 0, 0, 0, 0, 0, 0, 0, 0,
  1558. PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
  1559. PF6MD_100, 0, 0, 0,
  1560. 0, 0, 0, 0, 0, 0, 0, 0,
  1561. PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
  1562. PF5MD_100, 0, 0, 0,
  1563. 0, 0, 0, 0, 0, 0, 0, 0,
  1564. PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
  1565. PF4MD_100, 0, 0, 0,
  1566. 0, 0, 0, 0, 0, 0, 0, 0 }
  1567. },
  1568. { PINMUX_CFG_REG("PFCR0", 0xfffe38ae, 16, 4) {
  1569. PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
  1570. PF3MD_100, 0, 0, 0,
  1571. 0, 0, 0, 0, 0, 0, 0, 0,
  1572. PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
  1573. PF2MD_100, PF2MD_101, 0, 0,
  1574. 0, 0, 0, 0, 0, 0, 0, 0,
  1575. PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
  1576. PF1MD_100, PF1MD_101, 0, 0,
  1577. 0, 0, 0, 0, 0, 0, 0, 0
  1578. }
  1579. },
  1580. { PINMUX_CFG_REG("PFIOR0", 0xfffe38b2, 16, 1) {
  1581. 0, 0, 0, 0, 0, 0,
  1582. PF12_IN, PF12_OUT,
  1583. PF11_IN, PF11_OUT,
  1584. PF10_IN, PF10_OUT,
  1585. PF9_IN, PF9_OUT,
  1586. PF8_IN, PF8_OUT,
  1587. PF7_IN, PF7_OUT,
  1588. PF6_IN, PF6_OUT,
  1589. PF5_IN, PF5_OUT,
  1590. PF4_IN, PF4_OUT,
  1591. PF3_IN, PF3_OUT,
  1592. PF2_IN, PF2_OUT,
  1593. PF1_IN, PF1_OUT,
  1594. PF0_IN, PF0_OUT }
  1595. },
  1596. { PINMUX_CFG_REG("PGCR7", 0xfffe38c0, 16, 4) {
  1597. 0, 0, 0, 0, 0, 0, 0, 0,
  1598. 0, 0, 0, 0, 0, 0, 0, 0,
  1599. 0, 0, 0, 0, 0, 0, 0, 0,
  1600. 0, 0, 0, 0, 0, 0, 0, 0,
  1601. 0, 0, 0, 0, 0, 0, 0, 0,
  1602. 0, 0, 0, 0, 0, 0, 0, 0,
  1603. PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
  1604. PG0MD_100, 0, 0, 0,
  1605. 0, 0, 0, 0, 0, 0, 0, 0 }
  1606. },
  1607. { PINMUX_CFG_REG("PGCR6", 0xfffe38c2, 16, 4) {
  1608. 0, 0, 0, 0, 0, 0, 0, 0,
  1609. 0, 0, 0, 0, 0, 0, 0, 0,
  1610. 0, 0, 0, 0, 0, 0, 0, 0,
  1611. 0, 0, 0, 0, 0, 0, 0, 0,
  1612. 0, 0, 0, 0, 0, 0, 0, 0,
  1613. 0, 0, 0, 0, 0, 0, 0, 0,
  1614. PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11, 0, 0, 0, 0,
  1615. 0, 0, 0, 0, 0, 0, 0, 0 }
  1616. },
  1617. { PINMUX_CFG_REG("PGCR5", 0xfffe38c4, 16, 4) {
  1618. PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11, 0, 0, 0, 0,
  1619. 0, 0, 0, 0, 0, 0, 0, 0,
  1620. PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11, 0, 0, 0, 0,
  1621. 0, 0, 0, 0, 0, 0, 0, 0,
  1622. PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11, 0, 0, 0, 0,
  1623. 0, 0, 0, 0, 0, 0, 0, 0,
  1624. PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
  1625. PG20MD_100, 0, 0, 0,
  1626. 0, 0, 0, 0, 0, 0, 0, 0 }
  1627. },
  1628. { PINMUX_CFG_REG("PGCR4", 0xfffe38c6, 16, 4) {
  1629. PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
  1630. PG19MD_100, 0, 0, 0,
  1631. 0, 0, 0, 0, 0, 0, 0, 0,
  1632. PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
  1633. PG18MD_100, 0, 0, 0,
  1634. 0, 0, 0, 0, 0, 0, 0, 0,
  1635. PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,
  1636. PG17MD_100, 0, 0, 0,
  1637. 0, 0, 0, 0, 0, 0, 0, 0,
  1638. PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,
  1639. PG16MD_100, 0, 0, 0,
  1640. 0, 0, 0, 0, 0, 0, 0, 0 }
  1641. },
  1642. { PINMUX_CFG_REG("PGCR3", 0xfffe38c8, 16, 4) {
  1643. PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,
  1644. PG15MD_100, 0, 0, 0,
  1645. 0, 0, 0, 0, 0, 0, 0, 0,
  1646. PG14MD_000, PG14MD_001, PG14MD_010, 0,
  1647. PG14MD_100, 0, 0, 0,
  1648. 0, 0, 0, 0, 0, 0, 0, 0,
  1649. PG13MD_000, PG13MD_001, PG13MD_010, 0,
  1650. PG13MD_100, 0, 0, 0,
  1651. 0, 0, 0, 0, 0, 0, 0, 0,
  1652. PG12MD_000, PG12MD_001, PG12MD_010, 0,
  1653. PG12MD_100, 0, 0, 0,
  1654. 0, 0, 0, 0, 0, 0, 0, 0 }
  1655. },
  1656. { PINMUX_CFG_REG("PGCR2", 0xfffe38ca, 16, 4) {
  1657. PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
  1658. PG11MD_100, PG11MD_101, 0, 0,
  1659. 0, 0, 0, 0, 0, 0, 0, 0,
  1660. PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
  1661. PG10MD_100, PG10MD_101, 0, 0,
  1662. 0, 0, 0, 0, 0, 0, 0, 0,
  1663. PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
  1664. PG9MD_100, PG9MD_101, 0, 0,
  1665. 0, 0, 0, 0, 0, 0, 0, 0,
  1666. PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
  1667. PG8MD_100, PG8MD_101, 0, 0,
  1668. 0, 0, 0, 0, 0, 0, 0, 0 }
  1669. },
  1670. { PINMUX_CFG_REG("PGCR1", 0xfffe38cc, 16, 4) {
  1671. PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11, 0, 0, 0, 0,
  1672. 0, 0, 0, 0, 0, 0, 0, 0,
  1673. PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11, 0, 0, 0, 0,
  1674. 0, 0, 0, 0, 0, 0, 0, 0,
  1675. PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11, 0, 0, 0, 0,
  1676. 0, 0, 0, 0, 0, 0, 0, 0,
  1677. PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11, 0, 0, 0, 0,
  1678. 0, 0, 0, 0, 0, 0, 0, 0 }
  1679. },
  1680. { PINMUX_CFG_REG("PGCR0", 0xfffe38ce, 16, 4) {
  1681. PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11, 0, 0, 0, 0,
  1682. 0, 0, 0, 0, 0, 0, 0, 0,
  1683. PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11, 0, 0, 0, 0,
  1684. 0, 0, 0, 0, 0, 0, 0, 0,
  1685. PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11, 0, 0, 0, 0,
  1686. 0, 0, 0, 0, 0, 0, 0, 0,
  1687. 0, 0, 0, 0, 0, 0, 0, 0,
  1688. 0, 0, 0, 0, 0, 0, 0, 0 }
  1689. },
  1690. { PINMUX_CFG_REG("PGIOR1", 0xfffe38d0, 16, 1) {
  1691. 0, 0, 0, 0, 0, 0, 0, 0,
  1692. 0, 0, 0, 0, 0, 0,
  1693. PG24_IN, PG24_OUT,
  1694. PG23_IN, PG23_OUT,
  1695. PG22_IN, PG22_OUT,
  1696. PG21_IN, PG21_OUT,
  1697. PG20_IN, PG20_OUT,
  1698. PG19_IN, PG19_OUT,
  1699. PG18_IN, PG18_OUT,
  1700. PG17_IN, PG17_OUT,
  1701. PG16_IN, PG16_OUT }
  1702. },
  1703. { PINMUX_CFG_REG("PGIOR0", 0xfffe38d2, 16, 1) {
  1704. PG15_IN, PG15_OUT,
  1705. PG14_IN, PG14_OUT,
  1706. PG13_IN, PG13_OUT,
  1707. PG12_IN, PG12_OUT,
  1708. PG11_IN, PG11_OUT,
  1709. PG10_IN, PG10_OUT,
  1710. PG9_IN, PG9_OUT,
  1711. PG8_IN, PG8_OUT,
  1712. PG7_IN, PG7_OUT,
  1713. PG6_IN, PG6_OUT,
  1714. PG5_IN, PG5_OUT,
  1715. PG4_IN, PG4_OUT,
  1716. PG3_IN, PG3_OUT,
  1717. PG2_IN, PG2_OUT,
  1718. PG1_IN, PG1_OUT,
  1719. PG0_IN, PG0_OUT
  1720. }
  1721. },
  1722. { PINMUX_CFG_REG("PHCR1", 0xfffe38ec, 16, 4) {
  1723. PH7MD_0, PH7MD_1, 0, 0, 0, 0, 0, 0,
  1724. 0, 0, 0, 0, 0, 0, 0, 0,
  1725. PH6MD_0, PH6MD_1, 0, 0, 0, 0, 0, 0,
  1726. 0, 0, 0, 0, 0, 0, 0, 0,
  1727. PH5MD_0, PH5MD_1, 0, 0, 0, 0, 0, 0,
  1728. 0, 0, 0, 0, 0, 0, 0, 0,
  1729. PH4MD_0, PH4MD_1, 0, 0, 0, 0, 0, 0,
  1730. 0, 0, 0, 0, 0, 0, 0, 0 }
  1731. },
  1732. { PINMUX_CFG_REG("PHCR0", 0xfffe38ee, 16, 4) {
  1733. PH3MD_0, PH3MD_1, 0, 0, 0, 0, 0, 0,
  1734. 0, 0, 0, 0, 0, 0, 0, 0,
  1735. PH2MD_0, PH2MD_1, 0, 0, 0, 0, 0, 0,
  1736. 0, 0, 0, 0, 0, 0, 0, 0,
  1737. PH1MD_0, PH1MD_1, 0, 0, 0, 0, 0, 0,
  1738. 0, 0, 0, 0, 0, 0, 0, 0,
  1739. PH0MD_0, PH0MD_1, 0, 0, 0, 0, 0, 0,
  1740. 0, 0, 0, 0, 0, 0, 0, 0 }
  1741. },
  1742. { PINMUX_CFG_REG("PJCR2", 0xfffe390a, 16, 4) {
  1743. PJ11MD_00, PJ11MD_01, PJ11MD_10, 0, 0, 0, 0, 0,
  1744. 0, 0, 0, 0, 0, 0, 0, 0,
  1745. PJ10MD_00, PJ10MD_01, PJ10MD_10, 0, 0, 0, 0, 0,
  1746. 0, 0, 0, 0, 0, 0, 0, 0,
  1747. PJ9MD_00, PJ9MD_01, PJ9MD_10, 0, 0, 0, 0, 0,
  1748. 0, 0, 0, 0, 0, 0, 0, 0,
  1749. PJ8MD_00, PJ8MD_01, PJ8MD_10, 0, 0, 0, 0, 0,
  1750. 0, 0, 0, 0, 0, 0, 0, 0 }
  1751. },
  1752. { PINMUX_CFG_REG("PJCR1", 0xfffe390c, 16, 4) {
  1753. PJ7MD_00, PJ7MD_01, PJ7MD_10, 0, 0, 0, 0, 0,
  1754. 0, 0, 0, 0, 0, 0, 0, 0,
  1755. PJ6MD_00, PJ6MD_01, PJ6MD_10, 0, 0, 0, 0, 0,
  1756. 0, 0, 0, 0, 0, 0, 0, 0,
  1757. PJ5MD_00, PJ5MD_01, PJ5MD_10, 0, 0, 0, 0, 0,
  1758. 0, 0, 0, 0, 0, 0, 0, 0,
  1759. PJ4MD_00, PJ4MD_01, PJ4MD_10, 0, 0, 0, 0, 0,
  1760. 0, 0, 0, 0, 0, 0, 0, 0 }
  1761. },
  1762. { PINMUX_CFG_REG("PJCR0", 0xfffe390e, 16, 4) {
  1763. PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11, 0, 0, 0, 0,
  1764. 0, 0, 0, 0, 0, 0, 0, 0,
  1765. PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
  1766. PJ2MD_100, PJ2MD_101, 0, 0,
  1767. 0, 0, 0, 0, 0, 0, 0, 0,
  1768. PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
  1769. PJ1MD_100, 0, 0, 0,
  1770. 0, 0, 0, 0, 0, 0, 0, 0,
  1771. PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
  1772. PJ0MD_100, PJ0MD_101, 0, 0,
  1773. 0, 0, 0, 0, 0, 0, 0, 0, }
  1774. },
  1775. { PINMUX_CFG_REG("PJIOR0", 0xfffe3912, 16, 1) {
  1776. 0, 0, 0, 0, 0, 0, 0, 0,
  1777. PJ11_IN, PJ11_OUT,
  1778. PJ10_IN, PJ10_OUT,
  1779. PJ9_IN, PJ9_OUT,
  1780. PJ8_IN, PJ8_OUT,
  1781. PJ7_IN, PJ7_OUT,
  1782. PJ6_IN, PJ6_OUT,
  1783. PJ5_IN, PJ5_OUT,
  1784. PJ4_IN, PJ4_OUT,
  1785. PJ3_IN, PJ3_OUT,
  1786. PJ2_IN, PJ2_OUT,
  1787. PJ1_IN, PJ1_OUT,
  1788. PJ0_IN, PJ0_OUT }
  1789. },
  1790. { PINMUX_CFG_REG("PKCR2", 0xfffe392a, 16, 4) {
  1791. PK11MD_00, PK11MD_01, PK11MD_10, 0, 0, 0, 0, 0,
  1792. 0, 0, 0, 0, 0, 0, 0, 0,
  1793. PK10MD_00, PK10MD_01, PK10MD_10, 0, 0, 0, 0, 0,
  1794. 0, 0, 0, 0, 0, 0, 0, 0,
  1795. PK9MD_00, PK9MD_01, PK9MD_10, 0, 0, 0, 0, 0,
  1796. 0, 0, 0, 0, 0, 0, 0, 0,
  1797. PK8MD_00, PK8MD_01, PK8MD_10, 0, 0, 0, 0, 0,
  1798. 0, 0, 0, 0, 0, 0, 0, 0 }
  1799. },
  1800. { PINMUX_CFG_REG("PKCR1", 0xfffe392c, 16, 4) {
  1801. PK7MD_00, PK7MD_01, PK7MD_10, 0, 0, 0, 0, 0,
  1802. 0, 0, 0, 0, 0, 0, 0, 0,
  1803. PK6MD_00, PK6MD_01, PK6MD_10, 0, 0, 0, 0, 0,
  1804. 0, 0, 0, 0, 0, 0, 0, 0,
  1805. PK5MD_00, PK5MD_01, PK5MD_10, 0, 0, 0, 0, 0,
  1806. 0, 0, 0, 0, 0, 0, 0, 0,
  1807. PK4MD_00, PK4MD_01, PK4MD_10, 0, 0, 0, 0, 0,
  1808. 0, 0, 0, 0, 0, 0, 0, 0 }
  1809. },
  1810. { PINMUX_CFG_REG("PKCR0", 0xfffe392e, 16, 4) {
  1811. PK3MD_00, PK3MD_01, PK3MD_10, 0, 0, 0, 0, 0,
  1812. 0, 0, 0, 0, 0, 0, 0, 0,
  1813. PK2MD_00, PK2MD_01, PK2MD_10, 0, 0, 0, 0, 0,
  1814. 0, 0, 0, 0, 0, 0, 0, 0,
  1815. PK1MD_00, PK1MD_01, PK1MD_10, 0, 0, 0, 0, 0,
  1816. 0, 0, 0, 0, 0, 0, 0, 0,
  1817. PK0MD_00, PK0MD_01, PK0MD_10, 0, 0, 0, 0, 0,
  1818. 0, 0, 0, 0, 0, 0, 0, 0 }
  1819. },
  1820. { PINMUX_CFG_REG("PKIOR0", 0xfffe3932, 16, 1) {
  1821. 0, 0, 0, 0, 0, 0, 0, 0,
  1822. PJ11_IN, PJ11_OUT,
  1823. PJ10_IN, PJ10_OUT,
  1824. PJ9_IN, PJ9_OUT,
  1825. PJ8_IN, PJ8_OUT,
  1826. PJ7_IN, PJ7_OUT,
  1827. PJ6_IN, PJ6_OUT,
  1828. PJ5_IN, PJ5_OUT,
  1829. PJ4_IN, PJ4_OUT,
  1830. PJ3_IN, PJ3_OUT,
  1831. PJ2_IN, PJ2_OUT,
  1832. PJ1_IN, PJ1_OUT,
  1833. PJ0_IN, PJ0_OUT }
  1834. },
  1835. {}
  1836. };
  1837. static const struct pinmux_data_reg pinmux_data_regs[] = {
  1838. { PINMUX_DATA_REG("PADR1", 0xfffe3814, 16) {
  1839. 0, 0, 0, 0, 0, 0, 0, PA3_DATA,
  1840. 0, 0, 0, 0, 0, 0, 0, PA2_DATA }
  1841. },
  1842. { PINMUX_DATA_REG("PADR0", 0xfffe3816, 16) {
  1843. 0, 0, 0, 0, 0, 0, 0, PA1_DATA,
  1844. 0, 0, 0, 0, 0, 0, 0, PA0_DATA }
  1845. },
  1846. { PINMUX_DATA_REG("PBDR1", 0xfffe3834, 16) {
  1847. 0, 0, 0, 0, 0, 0, 0, 0,
  1848. 0, PB22_DATA, PB21_DATA, PB20_DATA,
  1849. PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA }
  1850. },
  1851. { PINMUX_DATA_REG("PBDR0", 0xfffe3836, 16) {
  1852. PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
  1853. PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
  1854. PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
  1855. PB3_DATA, PB2_DATA, PB1_DATA, 0 }
  1856. },
  1857. { PINMUX_DATA_REG("PCDR0", 0xfffe3856, 16) {
  1858. 0, 0, 0, 0,
  1859. 0, PC10_DATA, PC9_DATA, PC8_DATA,
  1860. PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
  1861. PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA }
  1862. },
  1863. { PINMUX_DATA_REG("PDDR0", 0xfffe3876, 16) {
  1864. PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
  1865. PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
  1866. PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
  1867. PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA }
  1868. },
  1869. { PINMUX_DATA_REG("PEDR0", 0xfffe3896, 16) {
  1870. 0, 0, 0, 0, 0, 0, 0, 0,
  1871. 0, 0, PE5_DATA, PE4_DATA,
  1872. PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA }
  1873. },
  1874. { PINMUX_DATA_REG("PFDR0", 0xfffe38b6, 16) {
  1875. 0, 0, 0, PF12_DATA,
  1876. PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
  1877. PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
  1878. PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA }
  1879. },
  1880. { PINMUX_DATA_REG("PGDR1", 0xfffe38d4, 16) {
  1881. 0, 0, 0, 0, 0, 0, 0, PG24_DATA,
  1882. PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
  1883. PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA }
  1884. },
  1885. { PINMUX_DATA_REG("PGDR0", 0xfffe38d6, 16) {
  1886. PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
  1887. PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
  1888. PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
  1889. PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA }
  1890. },
  1891. { PINMUX_DATA_REG("PJDR0", 0xfffe3916, 16) {
  1892. 0, 0, 0, PJ12_DATA,
  1893. PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
  1894. PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
  1895. PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA }
  1896. },
  1897. { PINMUX_DATA_REG("PKDR0", 0xfffe3936, 16) {
  1898. 0, 0, 0, PK12_DATA,
  1899. PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,
  1900. PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,
  1901. PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA }
  1902. },
  1903. { }
  1904. };
  1905. const struct sh_pfc_soc_info sh7264_pinmux_info = {
  1906. .name = "sh7264_pfc",
  1907. .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END, FORCE_IN },
  1908. .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END, FORCE_OUT },
  1909. .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
  1910. .pins = pinmux_pins,
  1911. .nr_pins = ARRAY_SIZE(pinmux_pins),
  1912. .func_gpios = pinmux_func_gpios,
  1913. .nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
  1914. .cfg_regs = pinmux_config_regs,
  1915. .data_regs = pinmux_data_regs,
  1916. .pinmux_data = pinmux_data,
  1917. .pinmux_data_size = ARRAY_SIZE(pinmux_data),
  1918. };