pfc-sh7264.c 56 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136
  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. CRX0_CRX1_MARK, CTX0_CTX1_MARK,
  465. PWM1A_MARK, PWM1B_MARK, PWM1C_MARK, PWM1D_MARK,
  466. PWM1E_MARK, PWM1F_MARK, PWM1G_MARK, PWM1H_MARK,
  467. PWM2A_MARK, PWM2B_MARK, PWM2C_MARK, PWM2D_MARK,
  468. PWM2E_MARK, PWM2F_MARK, PWM2G_MARK, PWM2H_MARK,
  469. IERXD_MARK, IETXD_MARK,
  470. WDTOVF_MARK,
  471. /* DMAC */
  472. TEND0_MARK, DACK0_MARK, DREQ0_MARK,
  473. TEND1_MARK, DACK1_MARK, DREQ1_MARK,
  474. /* ADC */
  475. ADTRG_MARK,
  476. /* BSC */
  477. A25_MARK, A24_MARK,
  478. A23_MARK, A22_MARK, A21_MARK, A20_MARK,
  479. A19_MARK, A18_MARK, A17_MARK, A16_MARK,
  480. A15_MARK, A14_MARK, A13_MARK, A12_MARK,
  481. A11_MARK, A10_MARK, A9_MARK, A8_MARK,
  482. A7_MARK, A6_MARK, A5_MARK, A4_MARK,
  483. A3_MARK, A2_MARK, A1_MARK, A0_MARK,
  484. D15_MARK, D14_MARK, D13_MARK, D12_MARK,
  485. D11_MARK, D10_MARK, D9_MARK, D8_MARK,
  486. D7_MARK, D6_MARK, D5_MARK, D4_MARK,
  487. D3_MARK, D2_MARK, D1_MARK, D0_MARK,
  488. BS_MARK,
  489. CS4_MARK, CS3_MARK, CS2_MARK, CS1_MARK, CS0_MARK,
  490. CS6CE1B_MARK, CS5CE1A_MARK,
  491. CE2A_MARK, CE2B_MARK,
  492. RD_MARK, RDWR_MARK,
  493. ICIOWRAH_MARK,
  494. ICIORD_MARK,
  495. WE1DQMUWE_MARK,
  496. WE0DQML_MARK,
  497. RAS_MARK, CAS_MARK, CKE_MARK,
  498. WAIT_MARK, BREQ_MARK, BACK_MARK, IOIS16_MARK,
  499. /* TMU */
  500. TIOC0A_MARK, TIOC0B_MARK, TIOC0C_MARK, TIOC0D_MARK,
  501. TIOC1A_MARK, TIOC1B_MARK,
  502. TIOC2A_MARK, TIOC2B_MARK,
  503. TIOC3A_MARK, TIOC3B_MARK, TIOC3C_MARK, TIOC3D_MARK,
  504. TIOC4A_MARK, TIOC4B_MARK, TIOC4C_MARK, TIOC4D_MARK,
  505. TCLKA_MARK, TCLKB_MARK, TCLKC_MARK, TCLKD_MARK,
  506. /* SCIF */
  507. SCK0_MARK, SCK1_MARK, SCK2_MARK, SCK3_MARK,
  508. RXD0_MARK, RXD1_MARK, RXD2_MARK, RXD3_MARK,
  509. TXD0_MARK, TXD1_MARK, TXD2_MARK, TXD3_MARK,
  510. RXD4_MARK, RXD5_MARK, RXD6_MARK, RXD7_MARK,
  511. TXD4_MARK, TXD5_MARK, TXD6_MARK, TXD7_MARK,
  512. RTS1_MARK, RTS3_MARK,
  513. CTS1_MARK, CTS3_MARK,
  514. /* RSPI */
  515. RSPCK0_MARK, RSPCK1_MARK,
  516. MOSI0_MARK, MOSI1_MARK,
  517. MISO0_PF12_MARK, MISO1_MARK, MISO1_PG19_MARK,
  518. SSL00_MARK, SSL10_MARK,
  519. /* IIC3 */
  520. SCL0_MARK, SCL1_MARK, SCL2_MARK,
  521. SDA0_MARK, SDA1_MARK, SDA2_MARK,
  522. /* SSI */
  523. SSISCK0_MARK,
  524. SSIWS0_MARK,
  525. SSITXD0_MARK,
  526. SSIRXD0_MARK,
  527. SSIWS1_MARK, SSIWS2_MARK, SSIWS3_MARK,
  528. SSISCK1_MARK, SSISCK2_MARK, SSISCK3_MARK,
  529. SSIDATA1_MARK, SSIDATA2_MARK, SSIDATA3_MARK,
  530. AUDIO_CLK_MARK,
  531. /* SIOF */ /* NOTE Shares AUDIO_CLK with SSI */
  532. SIOFTXD_MARK, SIOFRXD_MARK, SIOFSYNC_MARK, SIOFSCK_MARK,
  533. /* SPDIF */ /* NOTE Shares AUDIO_CLK with SSI */
  534. SPDIF_IN_MARK, SPDIF_OUT_MARK,
  535. /* NANDFMC */ /* NOTE Controller is not available in boot mode 0 */
  536. FCE_MARK,
  537. FRB_MARK,
  538. /* VDC3 */
  539. DV_CLK_MARK,
  540. DV_VSYNC_MARK, DV_HSYNC_MARK,
  541. DV_DATA7_MARK, DV_DATA6_MARK, DV_DATA5_MARK, DV_DATA4_MARK,
  542. DV_DATA3_MARK, DV_DATA2_MARK, DV_DATA1_MARK, DV_DATA0_MARK,
  543. LCD_CLK_MARK, LCD_EXTCLK_MARK,
  544. LCD_VSYNC_MARK, LCD_HSYNC_MARK, LCD_DE_MARK,
  545. LCD_DATA15_MARK, LCD_DATA14_MARK, LCD_DATA13_MARK, LCD_DATA12_MARK,
  546. LCD_DATA11_MARK, LCD_DATA10_MARK, LCD_DATA9_MARK, LCD_DATA8_MARK,
  547. LCD_DATA7_MARK, LCD_DATA6_MARK, LCD_DATA5_MARK, LCD_DATA4_MARK,
  548. LCD_DATA3_MARK, LCD_DATA2_MARK, LCD_DATA1_MARK, LCD_DATA0_MARK,
  549. LCD_M_DISP_MARK,
  550. PINMUX_MARK_END,
  551. };
  552. static const u16 pinmux_data[] = {
  553. /* Port A */
  554. PINMUX_DATA(PA3_DATA, PA3_IN),
  555. PINMUX_DATA(PA2_DATA, PA2_IN),
  556. PINMUX_DATA(PA1_DATA, PA1_IN),
  557. PINMUX_DATA(PA0_DATA, PA0_IN),
  558. /* Port B */
  559. PINMUX_DATA(PB22_DATA, PB22MD_00, PB22_IN, PB22_OUT),
  560. PINMUX_DATA(A22_MARK, PB22MD_01),
  561. PINMUX_DATA(CS4_MARK, PB22MD_10),
  562. PINMUX_DATA(PB21_DATA, PB21MD_0, PB21_IN, PB21_OUT),
  563. PINMUX_DATA(A21_MARK, PB21MD_1),
  564. PINMUX_DATA(A20_MARK, PB20MD_1),
  565. PINMUX_DATA(A19_MARK, PB19MD_01),
  566. PINMUX_DATA(A18_MARK, PB18MD_01),
  567. PINMUX_DATA(A17_MARK, PB17MD_01),
  568. PINMUX_DATA(A16_MARK, PB16MD_01),
  569. PINMUX_DATA(A15_MARK, PB15MD_01),
  570. PINMUX_DATA(A14_MARK, PB14MD_01),
  571. PINMUX_DATA(A13_MARK, PB13MD_01),
  572. PINMUX_DATA(A12_MARK, PB12MD_01),
  573. PINMUX_DATA(A11_MARK, PB11MD_01),
  574. PINMUX_DATA(A10_MARK, PB10MD_01),
  575. PINMUX_DATA(A9_MARK, PB9MD_01),
  576. PINMUX_DATA(A8_MARK, PB8MD_01),
  577. PINMUX_DATA(A7_MARK, PB7MD_01),
  578. PINMUX_DATA(A6_MARK, PB6MD_01),
  579. PINMUX_DATA(A5_MARK, PB5MD_01),
  580. PINMUX_DATA(A4_MARK, PB4MD_01),
  581. PINMUX_DATA(A3_MARK, PB3MD_1),
  582. PINMUX_DATA(A2_MARK, PB2MD_1),
  583. PINMUX_DATA(A1_MARK, PB1MD_1),
  584. /* Port C */
  585. PINMUX_DATA(PC10_DATA, PC10MD_0),
  586. PINMUX_DATA(TIOC2B_MARK, PC1MD_1),
  587. PINMUX_DATA(PC9_DATA, PC9MD_0),
  588. PINMUX_DATA(TIOC2A_MARK, PC9MD_1),
  589. PINMUX_DATA(PC8_DATA, PC8MD_00),
  590. PINMUX_DATA(CS3_MARK, PC8MD_01),
  591. PINMUX_DATA(TIOC4D_MARK, PC8MD_10),
  592. PINMUX_DATA(IRQ7_PC_MARK, PC8MD_11),
  593. PINMUX_DATA(PC7_DATA, PC7MD_00),
  594. PINMUX_DATA(CKE_MARK, PC7MD_01),
  595. PINMUX_DATA(TIOC4C_MARK, PC7MD_10),
  596. PINMUX_DATA(IRQ6_PC_MARK, PC7MD_11),
  597. PINMUX_DATA(PC6_DATA, PC6MD_00),
  598. PINMUX_DATA(CAS_MARK, PC6MD_01),
  599. PINMUX_DATA(TIOC4B_MARK, PC6MD_10),
  600. PINMUX_DATA(IRQ5_PC_MARK, PC6MD_11),
  601. PINMUX_DATA(PC5_DATA, PC5MD_00),
  602. PINMUX_DATA(RAS_MARK, PC5MD_01),
  603. PINMUX_DATA(TIOC4A_MARK, PC5MD_10),
  604. PINMUX_DATA(IRQ4_PC_MARK, PC5MD_11),
  605. PINMUX_DATA(PC4_DATA, PC4MD_0),
  606. PINMUX_DATA(WE1DQMUWE_MARK, PC4MD_1),
  607. PINMUX_DATA(PC3_DATA, PC3MD_0),
  608. PINMUX_DATA(WE0DQML_MARK, PC3MD_1),
  609. PINMUX_DATA(PC2_DATA, PC2MD_0),
  610. PINMUX_DATA(RDWR_MARK, PC2MD_1),
  611. PINMUX_DATA(PC1_DATA, PC1MD_0),
  612. PINMUX_DATA(RD_MARK, PC1MD_1),
  613. PINMUX_DATA(PC0_DATA, PC0MD_0),
  614. PINMUX_DATA(CS0_MARK, PC0MD_1),
  615. /* Port D */
  616. PINMUX_DATA(D15_MARK, PD15MD_01),
  617. PINMUX_DATA(D14_MARK, PD14MD_01),
  618. PINMUX_DATA(D13_MARK, PD13MD_01),
  619. PINMUX_DATA(D12_MARK, PD12MD_01),
  620. PINMUX_DATA(D11_MARK, PD11MD_01),
  621. PINMUX_DATA(D10_MARK, PD10MD_01),
  622. PINMUX_DATA(D9_MARK, PD9MD_01),
  623. PINMUX_DATA(D8_MARK, PD8MD_01),
  624. PINMUX_DATA(D7_MARK, PD7MD_01),
  625. PINMUX_DATA(D6_MARK, PD6MD_01),
  626. PINMUX_DATA(D5_MARK, PD5MD_01),
  627. PINMUX_DATA(D4_MARK, PD4MD_01),
  628. PINMUX_DATA(D3_MARK, PD3MD_01),
  629. PINMUX_DATA(D2_MARK, PD2MD_01),
  630. PINMUX_DATA(D1_MARK, PD1MD_01),
  631. PINMUX_DATA(D0_MARK, PD0MD_01),
  632. /* Port E */
  633. PINMUX_DATA(PE5_DATA, PE5MD_00),
  634. PINMUX_DATA(SDA2_MARK, PE5MD_01),
  635. PINMUX_DATA(DV_HSYNC_MARK, PE5MD_11),
  636. PINMUX_DATA(PE4_DATA, PE4MD_00),
  637. PINMUX_DATA(SCL2_MARK, PE4MD_01),
  638. PINMUX_DATA(DV_VSYNC_MARK, PE4MD_11),
  639. PINMUX_DATA(PE3_DATA, PE3MD_00),
  640. PINMUX_DATA(SDA1_MARK, PE3MD_01),
  641. PINMUX_DATA(IRQ3_PE_MARK, PE3MD_11),
  642. PINMUX_DATA(PE2_DATA, PE2MD_00),
  643. PINMUX_DATA(SCL1_MARK, PE2MD_01),
  644. PINMUX_DATA(IRQ2_PE_MARK, PE2MD_11),
  645. PINMUX_DATA(PE1_DATA, PE1MD_000),
  646. PINMUX_DATA(SDA0_MARK, PE1MD_001),
  647. PINMUX_DATA(IOIS16_MARK, PE1MD_010),
  648. PINMUX_DATA(IRQ1_PE_MARK, PE1MD_011),
  649. PINMUX_DATA(TCLKA_MARK, PE1MD_100),
  650. PINMUX_DATA(ADTRG_MARK, PE1MD_101),
  651. PINMUX_DATA(PE0_DATA, PE0MD_00),
  652. PINMUX_DATA(SCL0_MARK, PE0MD_01),
  653. PINMUX_DATA(AUDIO_CLK_MARK, PE0MD_10),
  654. PINMUX_DATA(IRQ0_PE_MARK, PE0MD_11),
  655. /* Port F */
  656. PINMUX_DATA(PF12_DATA, PF12MD_000),
  657. PINMUX_DATA(BS_MARK, PF12MD_001),
  658. PINMUX_DATA(MISO0_PF12_MARK, PF12MD_011),
  659. PINMUX_DATA(TIOC3D_MARK, PF12MD_100),
  660. PINMUX_DATA(SPDIF_OUT_MARK, PF12MD_101),
  661. PINMUX_DATA(PF11_DATA, PF11MD_000),
  662. PINMUX_DATA(A25_MARK, PF11MD_001),
  663. PINMUX_DATA(SSIDATA3_MARK, PF11MD_010),
  664. PINMUX_DATA(MOSI0_MARK, PF11MD_011),
  665. PINMUX_DATA(TIOC3C_MARK, PF11MD_100),
  666. PINMUX_DATA(SPDIF_IN_MARK, PF11MD_101),
  667. PINMUX_DATA(PF10_DATA, PF10MD_000),
  668. PINMUX_DATA(A24_MARK, PF10MD_001),
  669. PINMUX_DATA(SSIWS3_MARK, PF10MD_010),
  670. PINMUX_DATA(SSL00_MARK, PF10MD_011),
  671. PINMUX_DATA(TIOC3B_MARK, PF10MD_100),
  672. PINMUX_DATA(FCE_MARK, PF10MD_101),
  673. PINMUX_DATA(PF9_DATA, PF9MD_000),
  674. PINMUX_DATA(A23_MARK, PF9MD_001),
  675. PINMUX_DATA(SSISCK3_MARK, PF9MD_010),
  676. PINMUX_DATA(RSPCK0_MARK, PF9MD_011),
  677. PINMUX_DATA(TIOC3A_MARK, PF9MD_100),
  678. PINMUX_DATA(FRB_MARK, PF9MD_101),
  679. PINMUX_DATA(PF8_DATA, PF8MD_00),
  680. PINMUX_DATA(CE2B_MARK, PF8MD_01),
  681. PINMUX_DATA(SSIDATA3_MARK, PF8MD_10),
  682. PINMUX_DATA(DV_CLK_MARK, PF8MD_11),
  683. PINMUX_DATA(PF7_DATA, PF7MD_000),
  684. PINMUX_DATA(CE2A_MARK, PF7MD_001),
  685. PINMUX_DATA(SSIWS3_MARK, PF7MD_010),
  686. PINMUX_DATA(DV_DATA7_MARK, PF7MD_011),
  687. PINMUX_DATA(TCLKD_MARK, PF7MD_100),
  688. PINMUX_DATA(PF6_DATA, PF6MD_000),
  689. PINMUX_DATA(CS6CE1B_MARK, PF6MD_001),
  690. PINMUX_DATA(SSISCK3_MARK, PF6MD_010),
  691. PINMUX_DATA(DV_DATA6_MARK, PF6MD_011),
  692. PINMUX_DATA(TCLKB_MARK, PF6MD_100),
  693. PINMUX_DATA(PF5_DATA, PF5MD_000),
  694. PINMUX_DATA(CS5CE1A_MARK, PF5MD_001),
  695. PINMUX_DATA(SSIDATA2_MARK, PF5MD_010),
  696. PINMUX_DATA(DV_DATA5_MARK, PF5MD_011),
  697. PINMUX_DATA(TCLKC_MARK, PF5MD_100),
  698. PINMUX_DATA(PF4_DATA, PF4MD_000),
  699. PINMUX_DATA(ICIOWRAH_MARK, PF4MD_001),
  700. PINMUX_DATA(SSIWS2_MARK, PF4MD_010),
  701. PINMUX_DATA(DV_DATA4_MARK, PF4MD_011),
  702. PINMUX_DATA(TXD3_MARK, PF4MD_100),
  703. PINMUX_DATA(PF3_DATA, PF3MD_000),
  704. PINMUX_DATA(ICIORD_MARK, PF3MD_001),
  705. PINMUX_DATA(SSISCK2_MARK, PF3MD_010),
  706. PINMUX_DATA(DV_DATA3_MARK, PF3MD_011),
  707. PINMUX_DATA(RXD3_MARK, PF3MD_100),
  708. PINMUX_DATA(PF2_DATA, PF2MD_000),
  709. PINMUX_DATA(BACK_MARK, PF2MD_001),
  710. PINMUX_DATA(SSIDATA1_MARK, PF2MD_010),
  711. PINMUX_DATA(DV_DATA2_MARK, PF2MD_011),
  712. PINMUX_DATA(TXD2_MARK, PF2MD_100),
  713. PINMUX_DATA(DACK0_MARK, PF2MD_101),
  714. PINMUX_DATA(PF1_DATA, PF1MD_000),
  715. PINMUX_DATA(BREQ_MARK, PF1MD_001),
  716. PINMUX_DATA(SSIWS1_MARK, PF1MD_010),
  717. PINMUX_DATA(DV_DATA1_MARK, PF1MD_011),
  718. PINMUX_DATA(RXD2_MARK, PF1MD_100),
  719. PINMUX_DATA(DREQ0_MARK, PF1MD_101),
  720. PINMUX_DATA(PF0_DATA, PF0MD_000),
  721. PINMUX_DATA(WAIT_MARK, PF0MD_001),
  722. PINMUX_DATA(SSISCK1_MARK, PF0MD_010),
  723. PINMUX_DATA(DV_DATA0_MARK, PF0MD_011),
  724. PINMUX_DATA(SCK2_MARK, PF0MD_100),
  725. PINMUX_DATA(TEND0_MARK, PF0MD_101),
  726. /* Port G */
  727. PINMUX_DATA(PG24_DATA, PG24MD_00),
  728. PINMUX_DATA(MOSI0_MARK, PG24MD_01),
  729. PINMUX_DATA(TIOC0D_MARK, PG24MD_10),
  730. PINMUX_DATA(PG23_DATA, PG23MD_00),
  731. PINMUX_DATA(MOSI1_MARK, PG23MD_01),
  732. PINMUX_DATA(TIOC0C_MARK, PG23MD_10),
  733. PINMUX_DATA(PG22_DATA, PG22MD_00),
  734. PINMUX_DATA(SSL10_MARK, PG22MD_01),
  735. PINMUX_DATA(TIOC0B_MARK, PG22MD_10),
  736. PINMUX_DATA(PG21_DATA, PG21MD_00),
  737. PINMUX_DATA(RSPCK1_MARK, PG21MD_01),
  738. PINMUX_DATA(TIOC0A_MARK, PG21MD_10),
  739. PINMUX_DATA(PG20_DATA, PG20MD_000),
  740. PINMUX_DATA(LCD_EXTCLK_MARK, PG20MD_001),
  741. PINMUX_DATA(MISO1_MARK, PG20MD_011),
  742. PINMUX_DATA(TXD7_MARK, PG20MD_100),
  743. PINMUX_DATA(PG19_DATA, PG19MD_000),
  744. PINMUX_DATA(LCD_CLK_MARK, PG19MD_001),
  745. PINMUX_DATA(TIOC2B_MARK, PG19MD_010),
  746. PINMUX_DATA(MISO1_PG19_MARK, PG19MD_011),
  747. PINMUX_DATA(RXD7_MARK, PG19MD_100),
  748. PINMUX_DATA(PG18_DATA, PG18MD_000),
  749. PINMUX_DATA(LCD_DE_MARK, PG18MD_001),
  750. PINMUX_DATA(TIOC2A_MARK, PG18MD_010),
  751. PINMUX_DATA(SSL10_MARK, PG18MD_011),
  752. PINMUX_DATA(TXD6_MARK, PG18MD_100),
  753. PINMUX_DATA(PG17_DATA, PG17MD_000),
  754. PINMUX_DATA(LCD_HSYNC_MARK, PG17MD_001),
  755. PINMUX_DATA(TIOC1B_MARK, PG17MD_010),
  756. PINMUX_DATA(RSPCK1_MARK, PG17MD_011),
  757. PINMUX_DATA(RXD6_MARK, PG17MD_100),
  758. PINMUX_DATA(PG16_DATA, PG16MD_000),
  759. PINMUX_DATA(LCD_VSYNC_MARK, PG16MD_001),
  760. PINMUX_DATA(TIOC1A_MARK, PG16MD_010),
  761. PINMUX_DATA(TXD3_MARK, PG16MD_011),
  762. PINMUX_DATA(CTS1_MARK, PG16MD_100),
  763. PINMUX_DATA(PG15_DATA, PG15MD_000),
  764. PINMUX_DATA(LCD_DATA15_MARK, PG15MD_001),
  765. PINMUX_DATA(TIOC0D_MARK, PG15MD_010),
  766. PINMUX_DATA(RXD3_MARK, PG15MD_011),
  767. PINMUX_DATA(RTS1_MARK, PG15MD_100),
  768. PINMUX_DATA(PG14_DATA, PG14MD_000),
  769. PINMUX_DATA(LCD_DATA14_MARK, PG14MD_001),
  770. PINMUX_DATA(TIOC0C_MARK, PG14MD_010),
  771. PINMUX_DATA(SCK1_MARK, PG14MD_100),
  772. PINMUX_DATA(PG13_DATA, PG13MD_000),
  773. PINMUX_DATA(LCD_DATA13_MARK, PG13MD_001),
  774. PINMUX_DATA(TIOC0B_MARK, PG13MD_010),
  775. PINMUX_DATA(TXD1_MARK, PG13MD_100),
  776. PINMUX_DATA(PG12_DATA, PG12MD_000),
  777. PINMUX_DATA(LCD_DATA12_MARK, PG12MD_001),
  778. PINMUX_DATA(TIOC0A_MARK, PG12MD_010),
  779. PINMUX_DATA(RXD1_MARK, PG12MD_100),
  780. PINMUX_DATA(PG11_DATA, PG11MD_000),
  781. PINMUX_DATA(LCD_DATA11_MARK, PG11MD_001),
  782. PINMUX_DATA(SSITXD0_MARK, PG11MD_010),
  783. PINMUX_DATA(IRQ3_PG_MARK, PG11MD_011),
  784. PINMUX_DATA(TXD5_MARK, PG11MD_100),
  785. PINMUX_DATA(SIOFTXD_MARK, PG11MD_101),
  786. PINMUX_DATA(PG10_DATA, PG10MD_000),
  787. PINMUX_DATA(LCD_DATA10_MARK, PG10MD_001),
  788. PINMUX_DATA(SSIRXD0_MARK, PG10MD_010),
  789. PINMUX_DATA(IRQ2_PG_MARK, PG10MD_011),
  790. PINMUX_DATA(RXD5_MARK, PG10MD_100),
  791. PINMUX_DATA(SIOFRXD_MARK, PG10MD_101),
  792. PINMUX_DATA(PG9_DATA, PG9MD_000),
  793. PINMUX_DATA(LCD_DATA9_MARK, PG9MD_001),
  794. PINMUX_DATA(SSIWS0_MARK, PG9MD_010),
  795. PINMUX_DATA(TXD4_MARK, PG9MD_100),
  796. PINMUX_DATA(SIOFSYNC_MARK, PG9MD_101),
  797. PINMUX_DATA(PG8_DATA, PG8MD_000),
  798. PINMUX_DATA(LCD_DATA8_MARK, PG8MD_001),
  799. PINMUX_DATA(SSISCK0_MARK, PG8MD_010),
  800. PINMUX_DATA(RXD4_MARK, PG8MD_100),
  801. PINMUX_DATA(SIOFSCK_MARK, PG8MD_101),
  802. PINMUX_DATA(PG7_DATA, PG7MD_00),
  803. PINMUX_DATA(LCD_DATA7_MARK, PG7MD_01),
  804. PINMUX_DATA(SD_CD_MARK, PG7MD_10),
  805. PINMUX_DATA(PINT7_PG_MARK, PG7MD_11),
  806. PINMUX_DATA(PG6_DATA, PG7MD_00),
  807. PINMUX_DATA(LCD_DATA6_MARK, PG7MD_01),
  808. PINMUX_DATA(SD_WP_MARK, PG7MD_10),
  809. PINMUX_DATA(PINT6_PG_MARK, PG7MD_11),
  810. PINMUX_DATA(PG5_DATA, PG5MD_00),
  811. PINMUX_DATA(LCD_DATA5_MARK, PG5MD_01),
  812. PINMUX_DATA(SD_D1_MARK, PG5MD_10),
  813. PINMUX_DATA(PINT5_PG_MARK, PG5MD_11),
  814. PINMUX_DATA(PG4_DATA, PG4MD_00),
  815. PINMUX_DATA(LCD_DATA4_MARK, PG4MD_01),
  816. PINMUX_DATA(SD_D0_MARK, PG4MD_10),
  817. PINMUX_DATA(PINT4_PG_MARK, PG4MD_11),
  818. PINMUX_DATA(PG3_DATA, PG3MD_00),
  819. PINMUX_DATA(LCD_DATA3_MARK, PG3MD_01),
  820. PINMUX_DATA(SD_CLK_MARK, PG3MD_10),
  821. PINMUX_DATA(PINT3_PG_MARK, PG3MD_11),
  822. PINMUX_DATA(PG2_DATA, PG2MD_00),
  823. PINMUX_DATA(LCD_DATA2_MARK, PG2MD_01),
  824. PINMUX_DATA(SD_CMD_MARK, PG2MD_10),
  825. PINMUX_DATA(PINT2_PG_MARK, PG2MD_11),
  826. PINMUX_DATA(PG1_DATA, PG1MD_00),
  827. PINMUX_DATA(LCD_DATA1_MARK, PG1MD_01),
  828. PINMUX_DATA(SD_D3_MARK, PG1MD_10),
  829. PINMUX_DATA(PINT1_PG_MARK, PG1MD_11),
  830. PINMUX_DATA(PG0_DATA, PG0MD_000),
  831. PINMUX_DATA(LCD_DATA0_MARK, PG0MD_001),
  832. PINMUX_DATA(SD_D2_MARK, PG0MD_010),
  833. PINMUX_DATA(PINT0_PG_MARK, PG0MD_011),
  834. PINMUX_DATA(WDTOVF_MARK, PG0MD_100),
  835. /* Port H */
  836. PINMUX_DATA(PH7_DATA, PH7MD_0),
  837. PINMUX_DATA(PHAN7_MARK, PH7MD_1),
  838. PINMUX_DATA(PH6_DATA, PH6MD_0),
  839. PINMUX_DATA(PHAN6_MARK, PH6MD_1),
  840. PINMUX_DATA(PH5_DATA, PH5MD_0),
  841. PINMUX_DATA(PHAN5_MARK, PH5MD_1),
  842. PINMUX_DATA(PH4_DATA, PH4MD_0),
  843. PINMUX_DATA(PHAN4_MARK, PH4MD_1),
  844. PINMUX_DATA(PH3_DATA, PH3MD_0),
  845. PINMUX_DATA(PHAN3_MARK, PH3MD_1),
  846. PINMUX_DATA(PH2_DATA, PH2MD_0),
  847. PINMUX_DATA(PHAN2_MARK, PH2MD_1),
  848. PINMUX_DATA(PH1_DATA, PH1MD_0),
  849. PINMUX_DATA(PHAN1_MARK, PH1MD_1),
  850. PINMUX_DATA(PH0_DATA, PH0MD_0),
  851. PINMUX_DATA(PHAN0_MARK, PH0MD_1),
  852. /* Port I - not on device */
  853. /* Port J */
  854. PINMUX_DATA(PJ11_DATA, PJ11MD_00),
  855. PINMUX_DATA(PWM2H_MARK, PJ11MD_01),
  856. PINMUX_DATA(DACK1_MARK, PJ11MD_10),
  857. PINMUX_DATA(PJ10_DATA, PJ10MD_00),
  858. PINMUX_DATA(PWM2G_MARK, PJ10MD_01),
  859. PINMUX_DATA(DREQ1_MARK, PJ10MD_10),
  860. PINMUX_DATA(PJ9_DATA, PJ9MD_00),
  861. PINMUX_DATA(PWM2F_MARK, PJ9MD_01),
  862. PINMUX_DATA(TEND1_MARK, PJ9MD_10),
  863. PINMUX_DATA(PJ8_DATA, PJ8MD_00),
  864. PINMUX_DATA(PWM2E_MARK, PJ8MD_01),
  865. PINMUX_DATA(RTS3_MARK, PJ8MD_10),
  866. PINMUX_DATA(PJ7_DATA, PJ7MD_00),
  867. PINMUX_DATA(TIOC1B_MARK, PJ7MD_01),
  868. PINMUX_DATA(CTS3_MARK, PJ7MD_10),
  869. PINMUX_DATA(PJ6_DATA, PJ6MD_00),
  870. PINMUX_DATA(TIOC1A_MARK, PJ6MD_01),
  871. PINMUX_DATA(SCK3_MARK, PJ6MD_10),
  872. PINMUX_DATA(PJ5_DATA, PJ5MD_00),
  873. PINMUX_DATA(IERXD_MARK, PJ5MD_01),
  874. PINMUX_DATA(TXD3_MARK, PJ5MD_10),
  875. PINMUX_DATA(PJ4_DATA, PJ4MD_00),
  876. PINMUX_DATA(IETXD_MARK, PJ4MD_01),
  877. PINMUX_DATA(RXD3_MARK, PJ4MD_10),
  878. PINMUX_DATA(PJ3_DATA, PJ3MD_00),
  879. PINMUX_DATA(CRX1_MARK, PJ3MD_01),
  880. PINMUX_DATA(CRX0_CRX1_MARK, PJ3MD_10),
  881. PINMUX_DATA(IRQ1_PJ_MARK, PJ3MD_11),
  882. PINMUX_DATA(PJ2_DATA, PJ2MD_000),
  883. PINMUX_DATA(CTX1_MARK, PJ2MD_001),
  884. PINMUX_DATA(CTX0_CTX1_MARK, PJ2MD_010),
  885. PINMUX_DATA(CS2_MARK, PJ2MD_011),
  886. PINMUX_DATA(SCK0_MARK, PJ2MD_100),
  887. PINMUX_DATA(LCD_M_DISP_MARK, PJ2MD_101),
  888. PINMUX_DATA(PJ1_DATA, PJ1MD_000),
  889. PINMUX_DATA(CRX0_MARK, PJ1MD_001),
  890. PINMUX_DATA(IERXD_MARK, PJ1MD_010),
  891. PINMUX_DATA(IRQ0_PJ_MARK, PJ1MD_011),
  892. PINMUX_DATA(RXD0_MARK, PJ1MD_100),
  893. PINMUX_DATA(PJ0_DATA, PJ0MD_000),
  894. PINMUX_DATA(CTX0_MARK, PJ0MD_001),
  895. PINMUX_DATA(IERXD_MARK, PJ0MD_010),
  896. PINMUX_DATA(CS1_MARK, PJ0MD_011),
  897. PINMUX_DATA(TXD0_MARK, PJ0MD_100),
  898. PINMUX_DATA(A0_MARK, PJ0MD_101),
  899. /* Port K */
  900. PINMUX_DATA(PK11_DATA, PK11MD_00),
  901. PINMUX_DATA(PWM2D_MARK, PK11MD_01),
  902. PINMUX_DATA(SSITXD0_MARK, PK11MD_10),
  903. PINMUX_DATA(PK10_DATA, PK10MD_00),
  904. PINMUX_DATA(PWM2C_MARK, PK10MD_01),
  905. PINMUX_DATA(SSIRXD0_MARK, PK10MD_10),
  906. PINMUX_DATA(PK9_DATA, PK9MD_00),
  907. PINMUX_DATA(PWM2B_MARK, PK9MD_01),
  908. PINMUX_DATA(SSIWS0_MARK, PK9MD_10),
  909. PINMUX_DATA(PK8_DATA, PK8MD_00),
  910. PINMUX_DATA(PWM2A_MARK, PK8MD_01),
  911. PINMUX_DATA(SSISCK0_MARK, PK8MD_10),
  912. PINMUX_DATA(PK7_DATA, PK7MD_00),
  913. PINMUX_DATA(PWM1H_MARK, PK7MD_01),
  914. PINMUX_DATA(SD_CD_MARK, PK7MD_10),
  915. PINMUX_DATA(PK6_DATA, PK6MD_00),
  916. PINMUX_DATA(PWM1G_MARK, PK6MD_01),
  917. PINMUX_DATA(SD_WP_MARK, PK6MD_10),
  918. PINMUX_DATA(PK5_DATA, PK5MD_00),
  919. PINMUX_DATA(PWM1F_MARK, PK5MD_01),
  920. PINMUX_DATA(SD_D1_MARK, PK5MD_10),
  921. PINMUX_DATA(PK4_DATA, PK4MD_00),
  922. PINMUX_DATA(PWM1E_MARK, PK4MD_01),
  923. PINMUX_DATA(SD_D0_MARK, PK4MD_10),
  924. PINMUX_DATA(PK3_DATA, PK3MD_00),
  925. PINMUX_DATA(PWM1D_MARK, PK3MD_01),
  926. PINMUX_DATA(SD_CLK_MARK, PK3MD_10),
  927. PINMUX_DATA(PK2_DATA, PK2MD_00),
  928. PINMUX_DATA(PWM1C_MARK, PK2MD_01),
  929. PINMUX_DATA(SD_CMD_MARK, PK2MD_10),
  930. PINMUX_DATA(PK1_DATA, PK1MD_00),
  931. PINMUX_DATA(PWM1B_MARK, PK1MD_01),
  932. PINMUX_DATA(SD_D3_MARK, PK1MD_10),
  933. PINMUX_DATA(PK0_DATA, PK0MD_00),
  934. PINMUX_DATA(PWM1A_MARK, PK0MD_01),
  935. PINMUX_DATA(SD_D2_MARK, PK0MD_10),
  936. };
  937. static const struct sh_pfc_pin pinmux_pins[] = {
  938. /* Port A */
  939. PINMUX_GPIO(PA3),
  940. PINMUX_GPIO(PA2),
  941. PINMUX_GPIO(PA1),
  942. PINMUX_GPIO(PA0),
  943. /* Port B */
  944. PINMUX_GPIO(PB22),
  945. PINMUX_GPIO(PB21),
  946. PINMUX_GPIO(PB20),
  947. PINMUX_GPIO(PB19),
  948. PINMUX_GPIO(PB18),
  949. PINMUX_GPIO(PB17),
  950. PINMUX_GPIO(PB16),
  951. PINMUX_GPIO(PB15),
  952. PINMUX_GPIO(PB14),
  953. PINMUX_GPIO(PB13),
  954. PINMUX_GPIO(PB12),
  955. PINMUX_GPIO(PB11),
  956. PINMUX_GPIO(PB10),
  957. PINMUX_GPIO(PB9),
  958. PINMUX_GPIO(PB8),
  959. PINMUX_GPIO(PB7),
  960. PINMUX_GPIO(PB6),
  961. PINMUX_GPIO(PB5),
  962. PINMUX_GPIO(PB4),
  963. PINMUX_GPIO(PB3),
  964. PINMUX_GPIO(PB2),
  965. PINMUX_GPIO(PB1),
  966. /* Port C */
  967. PINMUX_GPIO(PC10),
  968. PINMUX_GPIO(PC9),
  969. PINMUX_GPIO(PC8),
  970. PINMUX_GPIO(PC7),
  971. PINMUX_GPIO(PC6),
  972. PINMUX_GPIO(PC5),
  973. PINMUX_GPIO(PC4),
  974. PINMUX_GPIO(PC3),
  975. PINMUX_GPIO(PC2),
  976. PINMUX_GPIO(PC1),
  977. PINMUX_GPIO(PC0),
  978. /* Port D */
  979. PINMUX_GPIO(PD15),
  980. PINMUX_GPIO(PD14),
  981. PINMUX_GPIO(PD13),
  982. PINMUX_GPIO(PD12),
  983. PINMUX_GPIO(PD11),
  984. PINMUX_GPIO(PD10),
  985. PINMUX_GPIO(PD9),
  986. PINMUX_GPIO(PD8),
  987. PINMUX_GPIO(PD7),
  988. PINMUX_GPIO(PD6),
  989. PINMUX_GPIO(PD5),
  990. PINMUX_GPIO(PD4),
  991. PINMUX_GPIO(PD3),
  992. PINMUX_GPIO(PD2),
  993. PINMUX_GPIO(PD1),
  994. PINMUX_GPIO(PD0),
  995. /* Port E */
  996. PINMUX_GPIO(PE5),
  997. PINMUX_GPIO(PE4),
  998. PINMUX_GPIO(PE3),
  999. PINMUX_GPIO(PE2),
  1000. PINMUX_GPIO(PE1),
  1001. PINMUX_GPIO(PE0),
  1002. /* Port F */
  1003. PINMUX_GPIO(PF12),
  1004. PINMUX_GPIO(PF11),
  1005. PINMUX_GPIO(PF10),
  1006. PINMUX_GPIO(PF9),
  1007. PINMUX_GPIO(PF8),
  1008. PINMUX_GPIO(PF7),
  1009. PINMUX_GPIO(PF6),
  1010. PINMUX_GPIO(PF5),
  1011. PINMUX_GPIO(PF4),
  1012. PINMUX_GPIO(PF3),
  1013. PINMUX_GPIO(PF2),
  1014. PINMUX_GPIO(PF1),
  1015. PINMUX_GPIO(PF0),
  1016. /* Port G */
  1017. PINMUX_GPIO(PG24),
  1018. PINMUX_GPIO(PG23),
  1019. PINMUX_GPIO(PG22),
  1020. PINMUX_GPIO(PG21),
  1021. PINMUX_GPIO(PG20),
  1022. PINMUX_GPIO(PG19),
  1023. PINMUX_GPIO(PG18),
  1024. PINMUX_GPIO(PG17),
  1025. PINMUX_GPIO(PG16),
  1026. PINMUX_GPIO(PG15),
  1027. PINMUX_GPIO(PG14),
  1028. PINMUX_GPIO(PG13),
  1029. PINMUX_GPIO(PG12),
  1030. PINMUX_GPIO(PG11),
  1031. PINMUX_GPIO(PG10),
  1032. PINMUX_GPIO(PG9),
  1033. PINMUX_GPIO(PG8),
  1034. PINMUX_GPIO(PG7),
  1035. PINMUX_GPIO(PG6),
  1036. PINMUX_GPIO(PG5),
  1037. PINMUX_GPIO(PG4),
  1038. PINMUX_GPIO(PG3),
  1039. PINMUX_GPIO(PG2),
  1040. PINMUX_GPIO(PG1),
  1041. PINMUX_GPIO(PG0),
  1042. /* Port H - Port H does not have a Data Register */
  1043. /* Port I - not on device */
  1044. /* Port J */
  1045. PINMUX_GPIO(PJ11),
  1046. PINMUX_GPIO(PJ10),
  1047. PINMUX_GPIO(PJ9),
  1048. PINMUX_GPIO(PJ8),
  1049. PINMUX_GPIO(PJ7),
  1050. PINMUX_GPIO(PJ6),
  1051. PINMUX_GPIO(PJ5),
  1052. PINMUX_GPIO(PJ4),
  1053. PINMUX_GPIO(PJ3),
  1054. PINMUX_GPIO(PJ2),
  1055. PINMUX_GPIO(PJ1),
  1056. PINMUX_GPIO(PJ0),
  1057. /* Port K */
  1058. PINMUX_GPIO(PK11),
  1059. PINMUX_GPIO(PK10),
  1060. PINMUX_GPIO(PK9),
  1061. PINMUX_GPIO(PK8),
  1062. PINMUX_GPIO(PK7),
  1063. PINMUX_GPIO(PK6),
  1064. PINMUX_GPIO(PK5),
  1065. PINMUX_GPIO(PK4),
  1066. PINMUX_GPIO(PK3),
  1067. PINMUX_GPIO(PK2),
  1068. PINMUX_GPIO(PK1),
  1069. PINMUX_GPIO(PK0),
  1070. };
  1071. #define PINMUX_FN_BASE ARRAY_SIZE(pinmux_pins)
  1072. static const struct pinmux_func pinmux_func_gpios[] = {
  1073. /* INTC */
  1074. GPIO_FN(PINT7_PG),
  1075. GPIO_FN(PINT6_PG),
  1076. GPIO_FN(PINT5_PG),
  1077. GPIO_FN(PINT4_PG),
  1078. GPIO_FN(PINT3_PG),
  1079. GPIO_FN(PINT2_PG),
  1080. GPIO_FN(PINT1_PG),
  1081. GPIO_FN(IRQ7_PC),
  1082. GPIO_FN(IRQ6_PC),
  1083. GPIO_FN(IRQ5_PC),
  1084. GPIO_FN(IRQ4_PC),
  1085. GPIO_FN(IRQ3_PG),
  1086. GPIO_FN(IRQ2_PG),
  1087. GPIO_FN(IRQ1_PJ),
  1088. GPIO_FN(IRQ0_PJ),
  1089. GPIO_FN(IRQ3_PE),
  1090. GPIO_FN(IRQ2_PE),
  1091. GPIO_FN(IRQ1_PE),
  1092. GPIO_FN(IRQ0_PE),
  1093. /* WDT */
  1094. GPIO_FN(WDTOVF),
  1095. /* CAN */
  1096. GPIO_FN(CTX1),
  1097. GPIO_FN(CRX1),
  1098. GPIO_FN(CTX0),
  1099. GPIO_FN(CTX0_CTX1),
  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. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  1538. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  1539. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  1540. PF12MD_000, PF12MD_001, 0, PF12MD_011,
  1541. PF12MD_100, PF12MD_101, 0, 0,
  1542. 0, 0, 0, 0, 0, 0, 0, 0 }
  1543. },
  1544. { PINMUX_CFG_REG("PFCR2", 0xfffe38aa, 16, 4) {
  1545. PF11MD_000, PF11MD_001, PF11MD_010, PF11MD_011,
  1546. PF11MD_100, PF11MD_101, 0, 0,
  1547. 0, 0, 0, 0, 0, 0, 0, 0,
  1548. PF10MD_000, PF10MD_001, PF10MD_010, PF10MD_011,
  1549. PF10MD_100, PF10MD_101, 0, 0,
  1550. 0, 0, 0, 0, 0, 0, 0, 0,
  1551. PF9MD_000, PF9MD_001, PF9MD_010, PF9MD_011,
  1552. PF9MD_100, PF9MD_101, 0, 0,
  1553. 0, 0, 0, 0, 0, 0, 0, 0,
  1554. PF8MD_00, PF8MD_01, PF8MD_10, PF8MD_11, 0, 0, 0, 0,
  1555. 0, 0, 0, 0, 0, 0, 0, 0 }
  1556. },
  1557. { PINMUX_CFG_REG("PFCR1", 0xfffe38ac, 16, 4) {
  1558. PF7MD_000, PF7MD_001, PF7MD_010, PF7MD_011,
  1559. PF7MD_100, 0, 0, 0,
  1560. 0, 0, 0, 0, 0, 0, 0, 0,
  1561. PF6MD_000, PF6MD_001, PF6MD_010, PF6MD_011,
  1562. PF6MD_100, 0, 0, 0,
  1563. 0, 0, 0, 0, 0, 0, 0, 0,
  1564. PF5MD_000, PF5MD_001, PF5MD_010, PF5MD_011,
  1565. PF5MD_100, 0, 0, 0,
  1566. 0, 0, 0, 0, 0, 0, 0, 0,
  1567. PF4MD_000, PF4MD_001, PF4MD_010, PF4MD_011,
  1568. PF4MD_100, 0, 0, 0,
  1569. 0, 0, 0, 0, 0, 0, 0, 0 }
  1570. },
  1571. { PINMUX_CFG_REG("PFCR0", 0xfffe38ae, 16, 4) {
  1572. PF3MD_000, PF3MD_001, PF3MD_010, PF3MD_011,
  1573. PF3MD_100, 0, 0, 0,
  1574. 0, 0, 0, 0, 0, 0, 0, 0,
  1575. PF2MD_000, PF2MD_001, PF2MD_010, PF2MD_011,
  1576. PF2MD_100, PF2MD_101, 0, 0,
  1577. 0, 0, 0, 0, 0, 0, 0, 0,
  1578. PF1MD_000, PF1MD_001, PF1MD_010, PF1MD_011,
  1579. PF1MD_100, PF1MD_101, 0, 0,
  1580. 0, 0, 0, 0, 0, 0, 0, 0,
  1581. PF0MD_000, PF0MD_001, PF0MD_010, PF0MD_011,
  1582. PF0MD_100, PF0MD_101, 0, 0,
  1583. 0, 0, 0, 0, 0, 0, 0, 0 }
  1584. },
  1585. { PINMUX_CFG_REG("PFIOR0", 0xfffe38b2, 16, 1) {
  1586. 0, 0, 0, 0, 0, 0,
  1587. PF12_IN, PF12_OUT,
  1588. PF11_IN, PF11_OUT,
  1589. PF10_IN, PF10_OUT,
  1590. PF9_IN, PF9_OUT,
  1591. PF8_IN, PF8_OUT,
  1592. PF7_IN, PF7_OUT,
  1593. PF6_IN, PF6_OUT,
  1594. PF5_IN, PF5_OUT,
  1595. PF4_IN, PF4_OUT,
  1596. PF3_IN, PF3_OUT,
  1597. PF2_IN, PF2_OUT,
  1598. PF1_IN, PF1_OUT,
  1599. PF0_IN, PF0_OUT }
  1600. },
  1601. { PINMUX_CFG_REG("PGCR7", 0xfffe38c0, 16, 4) {
  1602. 0, 0, 0, 0, 0, 0, 0, 0,
  1603. 0, 0, 0, 0, 0, 0, 0, 0,
  1604. 0, 0, 0, 0, 0, 0, 0, 0,
  1605. 0, 0, 0, 0, 0, 0, 0, 0,
  1606. 0, 0, 0, 0, 0, 0, 0, 0,
  1607. 0, 0, 0, 0, 0, 0, 0, 0,
  1608. PG0MD_000, PG0MD_001, PG0MD_010, PG0MD_011,
  1609. PG0MD_100, 0, 0, 0,
  1610. 0, 0, 0, 0, 0, 0, 0, 0 }
  1611. },
  1612. { PINMUX_CFG_REG("PGCR6", 0xfffe38c2, 16, 4) {
  1613. 0, 0, 0, 0, 0, 0, 0, 0,
  1614. 0, 0, 0, 0, 0, 0, 0, 0,
  1615. 0, 0, 0, 0, 0, 0, 0, 0,
  1616. 0, 0, 0, 0, 0, 0, 0, 0,
  1617. 0, 0, 0, 0, 0, 0, 0, 0,
  1618. 0, 0, 0, 0, 0, 0, 0, 0,
  1619. PG24MD_00, PG24MD_01, PG24MD_10, PG24MD_11, 0, 0, 0, 0,
  1620. 0, 0, 0, 0, 0, 0, 0, 0 }
  1621. },
  1622. { PINMUX_CFG_REG("PGCR5", 0xfffe38c4, 16, 4) {
  1623. PG23MD_00, PG23MD_01, PG23MD_10, PG23MD_11, 0, 0, 0, 0,
  1624. 0, 0, 0, 0, 0, 0, 0, 0,
  1625. PG22MD_00, PG22MD_01, PG22MD_10, PG22MD_11, 0, 0, 0, 0,
  1626. 0, 0, 0, 0, 0, 0, 0, 0,
  1627. PG21MD_00, PG21MD_01, PG21MD_10, PG21MD_11, 0, 0, 0, 0,
  1628. 0, 0, 0, 0, 0, 0, 0, 0,
  1629. PG20MD_000, PG20MD_001, PG20MD_010, PG20MD_011,
  1630. PG20MD_100, 0, 0, 0,
  1631. 0, 0, 0, 0, 0, 0, 0, 0 }
  1632. },
  1633. { PINMUX_CFG_REG("PGCR4", 0xfffe38c6, 16, 4) {
  1634. PG19MD_000, PG19MD_001, PG19MD_010, PG19MD_011,
  1635. PG19MD_100, 0, 0, 0,
  1636. 0, 0, 0, 0, 0, 0, 0, 0,
  1637. PG18MD_000, PG18MD_001, PG18MD_010, PG18MD_011,
  1638. PG18MD_100, 0, 0, 0,
  1639. 0, 0, 0, 0, 0, 0, 0, 0,
  1640. PG17MD_000, PG17MD_001, PG17MD_010, PG17MD_011,
  1641. PG17MD_100, 0, 0, 0,
  1642. 0, 0, 0, 0, 0, 0, 0, 0,
  1643. PG16MD_000, PG16MD_001, PG16MD_010, PG16MD_011,
  1644. PG16MD_100, 0, 0, 0,
  1645. 0, 0, 0, 0, 0, 0, 0, 0 }
  1646. },
  1647. { PINMUX_CFG_REG("PGCR3", 0xfffe38c8, 16, 4) {
  1648. PG15MD_000, PG15MD_001, PG15MD_010, PG15MD_011,
  1649. PG15MD_100, 0, 0, 0,
  1650. 0, 0, 0, 0, 0, 0, 0, 0,
  1651. PG14MD_000, PG14MD_001, PG14MD_010, 0,
  1652. PG14MD_100, 0, 0, 0,
  1653. 0, 0, 0, 0, 0, 0, 0, 0,
  1654. PG13MD_000, PG13MD_001, PG13MD_010, 0,
  1655. PG13MD_100, 0, 0, 0,
  1656. 0, 0, 0, 0, 0, 0, 0, 0,
  1657. PG12MD_000, PG12MD_001, PG12MD_010, 0,
  1658. PG12MD_100, 0, 0, 0,
  1659. 0, 0, 0, 0, 0, 0, 0, 0 }
  1660. },
  1661. { PINMUX_CFG_REG("PGCR2", 0xfffe38ca, 16, 4) {
  1662. PG11MD_000, PG11MD_001, PG11MD_010, PG11MD_011,
  1663. PG11MD_100, PG11MD_101, 0, 0,
  1664. 0, 0, 0, 0, 0, 0, 0, 0,
  1665. PG10MD_000, PG10MD_001, PG10MD_010, PG10MD_011,
  1666. PG10MD_100, PG10MD_101, 0, 0,
  1667. 0, 0, 0, 0, 0, 0, 0, 0,
  1668. PG9MD_000, PG9MD_001, PG9MD_010, PG9MD_011,
  1669. PG9MD_100, PG9MD_101, 0, 0,
  1670. 0, 0, 0, 0, 0, 0, 0, 0,
  1671. PG8MD_000, PG8MD_001, PG8MD_010, PG8MD_011,
  1672. PG8MD_100, PG8MD_101, 0, 0,
  1673. 0, 0, 0, 0, 0, 0, 0, 0 }
  1674. },
  1675. { PINMUX_CFG_REG("PGCR1", 0xfffe38cc, 16, 4) {
  1676. PG7MD_00, PG7MD_01, PG7MD_10, PG7MD_11, 0, 0, 0, 0,
  1677. 0, 0, 0, 0, 0, 0, 0, 0,
  1678. PG6MD_00, PG6MD_01, PG6MD_10, PG6MD_11, 0, 0, 0, 0,
  1679. 0, 0, 0, 0, 0, 0, 0, 0,
  1680. PG5MD_00, PG5MD_01, PG5MD_10, PG5MD_11, 0, 0, 0, 0,
  1681. 0, 0, 0, 0, 0, 0, 0, 0,
  1682. PG4MD_00, PG4MD_01, PG4MD_10, PG4MD_11, 0, 0, 0, 0,
  1683. 0, 0, 0, 0, 0, 0, 0, 0 }
  1684. },
  1685. { PINMUX_CFG_REG("PGCR0", 0xfffe38ce, 16, 4) {
  1686. PG3MD_00, PG3MD_01, PG3MD_10, PG3MD_11, 0, 0, 0, 0,
  1687. 0, 0, 0, 0, 0, 0, 0, 0,
  1688. PG2MD_00, PG2MD_01, PG2MD_10, PG2MD_11, 0, 0, 0, 0,
  1689. 0, 0, 0, 0, 0, 0, 0, 0,
  1690. PG1MD_00, PG1MD_01, PG1MD_10, PG1MD_11, 0, 0, 0, 0,
  1691. 0, 0, 0, 0, 0, 0, 0, 0,
  1692. 0, 0, 0, 0, 0, 0, 0, 0,
  1693. 0, 0, 0, 0, 0, 0, 0, 0 }
  1694. },
  1695. { PINMUX_CFG_REG("PGIOR1", 0xfffe38d0, 16, 1) {
  1696. 0, 0, 0, 0, 0, 0, 0, 0,
  1697. 0, 0, 0, 0, 0, 0,
  1698. PG24_IN, PG24_OUT,
  1699. PG23_IN, PG23_OUT,
  1700. PG22_IN, PG22_OUT,
  1701. PG21_IN, PG21_OUT,
  1702. PG20_IN, PG20_OUT,
  1703. PG19_IN, PG19_OUT,
  1704. PG18_IN, PG18_OUT,
  1705. PG17_IN, PG17_OUT,
  1706. PG16_IN, PG16_OUT }
  1707. },
  1708. { PINMUX_CFG_REG("PGIOR0", 0xfffe38d2, 16, 1) {
  1709. PG15_IN, PG15_OUT,
  1710. PG14_IN, PG14_OUT,
  1711. PG13_IN, PG13_OUT,
  1712. PG12_IN, PG12_OUT,
  1713. PG11_IN, PG11_OUT,
  1714. PG10_IN, PG10_OUT,
  1715. PG9_IN, PG9_OUT,
  1716. PG8_IN, PG8_OUT,
  1717. PG7_IN, PG7_OUT,
  1718. PG6_IN, PG6_OUT,
  1719. PG5_IN, PG5_OUT,
  1720. PG4_IN, PG4_OUT,
  1721. PG3_IN, PG3_OUT,
  1722. PG2_IN, PG2_OUT,
  1723. PG1_IN, PG1_OUT,
  1724. PG0_IN, PG0_OUT
  1725. }
  1726. },
  1727. { PINMUX_CFG_REG("PHCR1", 0xfffe38ec, 16, 4) {
  1728. PH7MD_0, PH7MD_1, 0, 0, 0, 0, 0, 0,
  1729. 0, 0, 0, 0, 0, 0, 0, 0,
  1730. PH6MD_0, PH6MD_1, 0, 0, 0, 0, 0, 0,
  1731. 0, 0, 0, 0, 0, 0, 0, 0,
  1732. PH5MD_0, PH5MD_1, 0, 0, 0, 0, 0, 0,
  1733. 0, 0, 0, 0, 0, 0, 0, 0,
  1734. PH4MD_0, PH4MD_1, 0, 0, 0, 0, 0, 0,
  1735. 0, 0, 0, 0, 0, 0, 0, 0 }
  1736. },
  1737. { PINMUX_CFG_REG("PHCR0", 0xfffe38ee, 16, 4) {
  1738. PH3MD_0, PH3MD_1, 0, 0, 0, 0, 0, 0,
  1739. 0, 0, 0, 0, 0, 0, 0, 0,
  1740. PH2MD_0, PH2MD_1, 0, 0, 0, 0, 0, 0,
  1741. 0, 0, 0, 0, 0, 0, 0, 0,
  1742. PH1MD_0, PH1MD_1, 0, 0, 0, 0, 0, 0,
  1743. 0, 0, 0, 0, 0, 0, 0, 0,
  1744. PH0MD_0, PH0MD_1, 0, 0, 0, 0, 0, 0,
  1745. 0, 0, 0, 0, 0, 0, 0, 0 }
  1746. },
  1747. { PINMUX_CFG_REG("PJCR2", 0xfffe390a, 16, 4) {
  1748. PJ11MD_00, PJ11MD_01, PJ11MD_10, 0, 0, 0, 0, 0,
  1749. 0, 0, 0, 0, 0, 0, 0, 0,
  1750. PJ10MD_00, PJ10MD_01, PJ10MD_10, 0, 0, 0, 0, 0,
  1751. 0, 0, 0, 0, 0, 0, 0, 0,
  1752. PJ9MD_00, PJ9MD_01, PJ9MD_10, 0, 0, 0, 0, 0,
  1753. 0, 0, 0, 0, 0, 0, 0, 0,
  1754. PJ8MD_00, PJ8MD_01, PJ8MD_10, 0, 0, 0, 0, 0,
  1755. 0, 0, 0, 0, 0, 0, 0, 0 }
  1756. },
  1757. { PINMUX_CFG_REG("PJCR1", 0xfffe390c, 16, 4) {
  1758. PJ7MD_00, PJ7MD_01, PJ7MD_10, 0, 0, 0, 0, 0,
  1759. 0, 0, 0, 0, 0, 0, 0, 0,
  1760. PJ6MD_00, PJ6MD_01, PJ6MD_10, 0, 0, 0, 0, 0,
  1761. 0, 0, 0, 0, 0, 0, 0, 0,
  1762. PJ5MD_00, PJ5MD_01, PJ5MD_10, 0, 0, 0, 0, 0,
  1763. 0, 0, 0, 0, 0, 0, 0, 0,
  1764. PJ4MD_00, PJ4MD_01, PJ4MD_10, 0, 0, 0, 0, 0,
  1765. 0, 0, 0, 0, 0, 0, 0, 0 }
  1766. },
  1767. { PINMUX_CFG_REG("PJCR0", 0xfffe390e, 16, 4) {
  1768. PJ3MD_00, PJ3MD_01, PJ3MD_10, PJ3MD_11, 0, 0, 0, 0,
  1769. 0, 0, 0, 0, 0, 0, 0, 0,
  1770. PJ2MD_000, PJ2MD_001, PJ2MD_010, PJ2MD_011,
  1771. PJ2MD_100, PJ2MD_101, 0, 0,
  1772. 0, 0, 0, 0, 0, 0, 0, 0,
  1773. PJ1MD_000, PJ1MD_001, PJ1MD_010, PJ1MD_011,
  1774. PJ1MD_100, 0, 0, 0,
  1775. 0, 0, 0, 0, 0, 0, 0, 0,
  1776. PJ0MD_000, PJ0MD_001, PJ0MD_010, PJ0MD_011,
  1777. PJ0MD_100, PJ0MD_101, 0, 0,
  1778. 0, 0, 0, 0, 0, 0, 0, 0, }
  1779. },
  1780. { PINMUX_CFG_REG("PJIOR0", 0xfffe3912, 16, 1) {
  1781. 0, 0, 0, 0, 0, 0, 0, 0,
  1782. PJ11_IN, PJ11_OUT,
  1783. PJ10_IN, PJ10_OUT,
  1784. PJ9_IN, PJ9_OUT,
  1785. PJ8_IN, PJ8_OUT,
  1786. PJ7_IN, PJ7_OUT,
  1787. PJ6_IN, PJ6_OUT,
  1788. PJ5_IN, PJ5_OUT,
  1789. PJ4_IN, PJ4_OUT,
  1790. PJ3_IN, PJ3_OUT,
  1791. PJ2_IN, PJ2_OUT,
  1792. PJ1_IN, PJ1_OUT,
  1793. PJ0_IN, PJ0_OUT }
  1794. },
  1795. { PINMUX_CFG_REG("PKCR2", 0xfffe392a, 16, 4) {
  1796. PK11MD_00, PK11MD_01, PK11MD_10, 0, 0, 0, 0, 0,
  1797. 0, 0, 0, 0, 0, 0, 0, 0,
  1798. PK10MD_00, PK10MD_01, PK10MD_10, 0, 0, 0, 0, 0,
  1799. 0, 0, 0, 0, 0, 0, 0, 0,
  1800. PK9MD_00, PK9MD_01, PK9MD_10, 0, 0, 0, 0, 0,
  1801. 0, 0, 0, 0, 0, 0, 0, 0,
  1802. PK8MD_00, PK8MD_01, PK8MD_10, 0, 0, 0, 0, 0,
  1803. 0, 0, 0, 0, 0, 0, 0, 0 }
  1804. },
  1805. { PINMUX_CFG_REG("PKCR1", 0xfffe392c, 16, 4) {
  1806. PK7MD_00, PK7MD_01, PK7MD_10, 0, 0, 0, 0, 0,
  1807. 0, 0, 0, 0, 0, 0, 0, 0,
  1808. PK6MD_00, PK6MD_01, PK6MD_10, 0, 0, 0, 0, 0,
  1809. 0, 0, 0, 0, 0, 0, 0, 0,
  1810. PK5MD_00, PK5MD_01, PK5MD_10, 0, 0, 0, 0, 0,
  1811. 0, 0, 0, 0, 0, 0, 0, 0,
  1812. PK4MD_00, PK4MD_01, PK4MD_10, 0, 0, 0, 0, 0,
  1813. 0, 0, 0, 0, 0, 0, 0, 0 }
  1814. },
  1815. { PINMUX_CFG_REG("PKCR0", 0xfffe392e, 16, 4) {
  1816. PK3MD_00, PK3MD_01, PK3MD_10, 0, 0, 0, 0, 0,
  1817. 0, 0, 0, 0, 0, 0, 0, 0,
  1818. PK2MD_00, PK2MD_01, PK2MD_10, 0, 0, 0, 0, 0,
  1819. 0, 0, 0, 0, 0, 0, 0, 0,
  1820. PK1MD_00, PK1MD_01, PK1MD_10, 0, 0, 0, 0, 0,
  1821. 0, 0, 0, 0, 0, 0, 0, 0,
  1822. PK0MD_00, PK0MD_01, PK0MD_10, 0, 0, 0, 0, 0,
  1823. 0, 0, 0, 0, 0, 0, 0, 0 }
  1824. },
  1825. { PINMUX_CFG_REG("PKIOR0", 0xfffe3932, 16, 1) {
  1826. 0, 0, 0, 0, 0, 0, 0, 0,
  1827. PJ11_IN, PJ11_OUT,
  1828. PJ10_IN, PJ10_OUT,
  1829. PJ9_IN, PJ9_OUT,
  1830. PJ8_IN, PJ8_OUT,
  1831. PJ7_IN, PJ7_OUT,
  1832. PJ6_IN, PJ6_OUT,
  1833. PJ5_IN, PJ5_OUT,
  1834. PJ4_IN, PJ4_OUT,
  1835. PJ3_IN, PJ3_OUT,
  1836. PJ2_IN, PJ2_OUT,
  1837. PJ1_IN, PJ1_OUT,
  1838. PJ0_IN, PJ0_OUT }
  1839. },
  1840. {}
  1841. };
  1842. static const struct pinmux_data_reg pinmux_data_regs[] = {
  1843. { PINMUX_DATA_REG("PADR1", 0xfffe3814, 16) {
  1844. 0, 0, 0, 0, 0, 0, 0, PA3_DATA,
  1845. 0, 0, 0, 0, 0, 0, 0, PA2_DATA }
  1846. },
  1847. { PINMUX_DATA_REG("PADR0", 0xfffe3816, 16) {
  1848. 0, 0, 0, 0, 0, 0, 0, PA1_DATA,
  1849. 0, 0, 0, 0, 0, 0, 0, PA0_DATA }
  1850. },
  1851. { PINMUX_DATA_REG("PBDR1", 0xfffe3834, 16) {
  1852. 0, 0, 0, 0, 0, 0, 0, 0,
  1853. 0, PB22_DATA, PB21_DATA, PB20_DATA,
  1854. PB19_DATA, PB18_DATA, PB17_DATA, PB16_DATA }
  1855. },
  1856. { PINMUX_DATA_REG("PBDR0", 0xfffe3836, 16) {
  1857. PB15_DATA, PB14_DATA, PB13_DATA, PB12_DATA,
  1858. PB11_DATA, PB10_DATA, PB9_DATA, PB8_DATA,
  1859. PB7_DATA, PB6_DATA, PB5_DATA, PB4_DATA,
  1860. PB3_DATA, PB2_DATA, PB1_DATA, 0 }
  1861. },
  1862. { PINMUX_DATA_REG("PCDR0", 0xfffe3856, 16) {
  1863. 0, 0, 0, 0,
  1864. 0, PC10_DATA, PC9_DATA, PC8_DATA,
  1865. PC7_DATA, PC6_DATA, PC5_DATA, PC4_DATA,
  1866. PC3_DATA, PC2_DATA, PC1_DATA, PC0_DATA }
  1867. },
  1868. { PINMUX_DATA_REG("PDDR0", 0xfffe3876, 16) {
  1869. PD15_DATA, PD14_DATA, PD13_DATA, PD12_DATA,
  1870. PD11_DATA, PD10_DATA, PD9_DATA, PD8_DATA,
  1871. PD7_DATA, PD6_DATA, PD5_DATA, PD4_DATA,
  1872. PD3_DATA, PD2_DATA, PD1_DATA, PD0_DATA }
  1873. },
  1874. { PINMUX_DATA_REG("PEDR0", 0xfffe3896, 16) {
  1875. 0, 0, 0, 0, 0, 0, 0, 0,
  1876. 0, 0, PE5_DATA, PE4_DATA,
  1877. PE3_DATA, PE2_DATA, PE1_DATA, PE0_DATA }
  1878. },
  1879. { PINMUX_DATA_REG("PFDR0", 0xfffe38b6, 16) {
  1880. 0, 0, 0, PF12_DATA,
  1881. PF11_DATA, PF10_DATA, PF9_DATA, PF8_DATA,
  1882. PF7_DATA, PF6_DATA, PF5_DATA, PF4_DATA,
  1883. PF3_DATA, PF2_DATA, PF1_DATA, PF0_DATA }
  1884. },
  1885. { PINMUX_DATA_REG("PGDR1", 0xfffe38d4, 16) {
  1886. 0, 0, 0, 0, 0, 0, 0, PG24_DATA,
  1887. PG23_DATA, PG22_DATA, PG21_DATA, PG20_DATA,
  1888. PG19_DATA, PG18_DATA, PG17_DATA, PG16_DATA }
  1889. },
  1890. { PINMUX_DATA_REG("PGDR0", 0xfffe38d6, 16) {
  1891. PG15_DATA, PG14_DATA, PG13_DATA, PG12_DATA,
  1892. PG11_DATA, PG10_DATA, PG9_DATA, PG8_DATA,
  1893. PG7_DATA, PG6_DATA, PG5_DATA, PG4_DATA,
  1894. PG3_DATA, PG2_DATA, PG1_DATA, PG0_DATA }
  1895. },
  1896. { PINMUX_DATA_REG("PJDR0", 0xfffe3916, 16) {
  1897. 0, 0, 0, PJ12_DATA,
  1898. PJ11_DATA, PJ10_DATA, PJ9_DATA, PJ8_DATA,
  1899. PJ7_DATA, PJ6_DATA, PJ5_DATA, PJ4_DATA,
  1900. PJ3_DATA, PJ2_DATA, PJ1_DATA, PJ0_DATA }
  1901. },
  1902. { PINMUX_DATA_REG("PKDR0", 0xfffe3936, 16) {
  1903. 0, 0, 0, PK12_DATA,
  1904. PK11_DATA, PK10_DATA, PK9_DATA, PK8_DATA,
  1905. PK7_DATA, PK6_DATA, PK5_DATA, PK4_DATA,
  1906. PK3_DATA, PK2_DATA, PK1_DATA, PK0_DATA }
  1907. },
  1908. { }
  1909. };
  1910. const struct sh_pfc_soc_info sh7264_pinmux_info = {
  1911. .name = "sh7264_pfc",
  1912. .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END, FORCE_IN },
  1913. .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END, FORCE_OUT },
  1914. .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
  1915. .pins = pinmux_pins,
  1916. .nr_pins = ARRAY_SIZE(pinmux_pins),
  1917. .func_gpios = pinmux_func_gpios,
  1918. .nr_func_gpios = ARRAY_SIZE(pinmux_func_gpios),
  1919. .cfg_regs = pinmux_config_regs,
  1920. .data_regs = pinmux_data_regs,
  1921. .pinmux_data = pinmux_data,
  1922. .pinmux_data_size = ARRAY_SIZE(pinmux_data),
  1923. };