pfc-sh7720.c 39 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232
  1. /*
  2. * SH7720 Pinmux
  3. *
  4. * Copyright (C) 2008 Magnus Damm
  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/sh7720.h>
  13. #include "sh_pfc.h"
  14. enum {
  15. PINMUX_RESERVED = 0,
  16. PINMUX_DATA_BEGIN,
  17. PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA,
  18. PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA,
  19. PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA,
  20. PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA,
  21. PTC7_DATA, PTC6_DATA, PTC5_DATA, PTC4_DATA,
  22. PTC3_DATA, PTC2_DATA, PTC1_DATA, PTC0_DATA,
  23. PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA,
  24. PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA,
  25. PTE6_DATA, PTE5_DATA, PTE4_DATA,
  26. PTE3_DATA, PTE2_DATA, PTE1_DATA, PTE0_DATA,
  27. PTF6_DATA, PTF5_DATA, PTF4_DATA,
  28. PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA,
  29. PTG6_DATA, PTG5_DATA, PTG4_DATA,
  30. PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA,
  31. PTH6_DATA, PTH5_DATA, PTH4_DATA,
  32. PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA,
  33. PTJ6_DATA, PTJ5_DATA, PTJ4_DATA,
  34. PTJ3_DATA, PTJ2_DATA, PTJ1_DATA, PTJ0_DATA,
  35. PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA,
  36. PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA, PTL3_DATA,
  37. PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA,
  38. PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA,
  39. PTP4_DATA, PTP3_DATA, PTP2_DATA, PTP1_DATA, PTP0_DATA,
  40. PTR7_DATA, PTR6_DATA, PTR5_DATA, PTR4_DATA,
  41. PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA,
  42. PTS4_DATA, PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA,
  43. PTT4_DATA, PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA,
  44. PTU4_DATA, PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA,
  45. PTV4_DATA, PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA,
  46. PINMUX_DATA_END,
  47. PINMUX_INPUT_BEGIN,
  48. PTA7_IN, PTA6_IN, PTA5_IN, PTA4_IN,
  49. PTA3_IN, PTA2_IN, PTA1_IN, PTA0_IN,
  50. PTB7_IN, PTB6_IN, PTB5_IN, PTB4_IN,
  51. PTB3_IN, PTB2_IN, PTB1_IN, PTB0_IN,
  52. PTC7_IN, PTC6_IN, PTC5_IN, PTC4_IN,
  53. PTC3_IN, PTC2_IN, PTC1_IN, PTC0_IN,
  54. PTD7_IN, PTD6_IN, PTD5_IN, PTD4_IN,
  55. PTD3_IN, PTD2_IN, PTD1_IN, PTD0_IN,
  56. PTE6_IN, PTE5_IN, PTE4_IN,
  57. PTE3_IN, PTE2_IN, PTE1_IN, PTE0_IN,
  58. PTF6_IN, PTF5_IN, PTF4_IN,
  59. PTF3_IN, PTF2_IN, PTF1_IN, PTF0_IN,
  60. PTG6_IN, PTG5_IN, PTG4_IN,
  61. PTG3_IN, PTG2_IN, PTG1_IN, PTG0_IN,
  62. PTH6_IN, PTH5_IN, PTH4_IN,
  63. PTH3_IN, PTH2_IN, PTH1_IN, PTH0_IN,
  64. PTJ6_IN, PTJ5_IN, PTJ4_IN,
  65. PTJ3_IN, PTJ2_IN, PTJ1_IN, PTJ0_IN,
  66. PTK3_IN, PTK2_IN, PTK1_IN, PTK0_IN,
  67. PTL7_IN, PTL6_IN, PTL5_IN, PTL4_IN, PTL3_IN,
  68. PTM7_IN, PTM6_IN, PTM5_IN, PTM4_IN,
  69. PTM3_IN, PTM2_IN, PTM1_IN, PTM0_IN,
  70. PTP4_IN, PTP3_IN, PTP2_IN, PTP1_IN, PTP0_IN,
  71. PTR7_IN, PTR6_IN, PTR5_IN, PTR4_IN,
  72. PTR3_IN, PTR2_IN, PTR1_IN, PTR0_IN,
  73. PTS4_IN, PTS3_IN, PTS2_IN, PTS1_IN, PTS0_IN,
  74. PTT4_IN, PTT3_IN, PTT2_IN, PTT1_IN, PTT0_IN,
  75. PTU4_IN, PTU3_IN, PTU2_IN, PTU1_IN, PTU0_IN,
  76. PTV4_IN, PTV3_IN, PTV2_IN, PTV1_IN, PTV0_IN,
  77. PINMUX_INPUT_END,
  78. PINMUX_INPUT_PULLUP_BEGIN,
  79. PTA7_IN_PU, PTA6_IN_PU, PTA5_IN_PU, PTA4_IN_PU,
  80. PTA3_IN_PU, PTA2_IN_PU, PTA1_IN_PU, PTA0_IN_PU,
  81. PTB7_IN_PU, PTB6_IN_PU, PTB5_IN_PU, PTB4_IN_PU,
  82. PTB3_IN_PU, PTB2_IN_PU, PTB1_IN_PU, PTB0_IN_PU,
  83. PTC7_IN_PU, PTC6_IN_PU, PTC5_IN_PU, PTC4_IN_PU,
  84. PTC3_IN_PU, PTC2_IN_PU, PTC1_IN_PU, PTC0_IN_PU,
  85. PTD7_IN_PU, PTD6_IN_PU, PTD5_IN_PU, PTD4_IN_PU,
  86. PTD3_IN_PU, PTD2_IN_PU, PTD1_IN_PU, PTD0_IN_PU,
  87. PTE4_IN_PU, PTE3_IN_PU, PTE2_IN_PU, PTE1_IN_PU, PTE0_IN_PU,
  88. PTF0_IN_PU,
  89. PTG6_IN_PU, PTG5_IN_PU, PTG4_IN_PU,
  90. PTG3_IN_PU, PTG2_IN_PU, PTG1_IN_PU, PTG0_IN_PU,
  91. PTH6_IN_PU, PTH5_IN_PU, PTH4_IN_PU,
  92. PTH3_IN_PU, PTH2_IN_PU, PTH1_IN_PU, PTH0_IN_PU,
  93. PTJ6_IN_PU, PTJ5_IN_PU, PTJ4_IN_PU,
  94. PTJ3_IN_PU, PTJ2_IN_PU, PTJ1_IN_PU, PTJ0_IN_PU,
  95. PTK3_IN_PU, PTK2_IN_PU, PTK1_IN_PU, PTK0_IN_PU,
  96. PTL7_IN_PU, PTL6_IN_PU, PTL5_IN_PU, PTL4_IN_PU, PTL3_IN_PU,
  97. PTM7_IN_PU, PTM6_IN_PU, PTM5_IN_PU, PTM4_IN_PU,
  98. PTM3_IN_PU, PTM2_IN_PU, PTM1_IN_PU, PTM0_IN_PU,
  99. PTP4_IN_PU, PTP3_IN_PU, PTP2_IN_PU, PTP1_IN_PU, PTP0_IN_PU,
  100. PTR7_IN_PU, PTR6_IN_PU, PTR5_IN_PU, PTR4_IN_PU,
  101. PTR3_IN_PU, PTR2_IN_PU, PTR1_IN_PU, PTR0_IN_PU,
  102. PTS4_IN_PU, PTS3_IN_PU, PTS2_IN_PU, PTS1_IN_PU, PTS0_IN_PU,
  103. PTT4_IN_PU, PTT3_IN_PU, PTT2_IN_PU, PTT1_IN_PU, PTT0_IN_PU,
  104. PTU4_IN_PU, PTU3_IN_PU, PTU2_IN_PU, PTU1_IN_PU, PTU0_IN_PU,
  105. PTV4_IN_PU, PTV3_IN_PU, PTV2_IN_PU, PTV1_IN_PU, PTV0_IN_PU,
  106. PINMUX_INPUT_PULLUP_END,
  107. PINMUX_OUTPUT_BEGIN,
  108. PTA7_OUT, PTA6_OUT, PTA5_OUT, PTA4_OUT,
  109. PTA3_OUT, PTA2_OUT, PTA1_OUT, PTA0_OUT,
  110. PTB7_OUT, PTB6_OUT, PTB5_OUT, PTB4_OUT,
  111. PTB3_OUT, PTB2_OUT, PTB1_OUT, PTB0_OUT,
  112. PTC7_OUT, PTC6_OUT, PTC5_OUT, PTC4_OUT,
  113. PTC3_OUT, PTC2_OUT, PTC1_OUT, PTC0_OUT,
  114. PTD7_OUT, PTD6_OUT, PTD5_OUT, PTD4_OUT,
  115. PTD3_OUT, PTD2_OUT, PTD1_OUT, PTD0_OUT,
  116. PTE4_OUT, PTE3_OUT, PTE2_OUT, PTE1_OUT, PTE0_OUT,
  117. PTF0_OUT,
  118. PTG6_OUT, PTG5_OUT, PTG4_OUT,
  119. PTG3_OUT, PTG2_OUT, PTG1_OUT, PTG0_OUT,
  120. PTH6_OUT, PTH5_OUT, PTH4_OUT,
  121. PTH3_OUT, PTH2_OUT, PTH1_OUT, PTH0_OUT,
  122. PTJ6_OUT, PTJ5_OUT, PTJ4_OUT,
  123. PTJ3_OUT, PTJ2_OUT, PTJ1_OUT, PTJ0_OUT,
  124. PTK3_OUT, PTK2_OUT, PTK1_OUT, PTK0_OUT,
  125. PTL7_OUT, PTL6_OUT, PTL5_OUT, PTL4_OUT, PTL3_OUT,
  126. PTM7_OUT, PTM6_OUT, PTM5_OUT, PTM4_OUT,
  127. PTM3_OUT, PTM2_OUT, PTM1_OUT, PTM0_OUT,
  128. PTP4_OUT, PTP3_OUT, PTP2_OUT, PTP1_OUT, PTP0_OUT,
  129. PTR7_OUT, PTR6_OUT, PTR5_OUT, PTR4_OUT,
  130. PTR3_OUT, PTR2_OUT, PTR1_OUT, PTR0_OUT,
  131. PTS4_OUT, PTS3_OUT, PTS2_OUT, PTS1_OUT, PTS0_OUT,
  132. PTT4_OUT, PTT3_OUT, PTT2_OUT, PTT1_OUT, PTT0_OUT,
  133. PTU4_OUT, PTU3_OUT, PTU2_OUT, PTU1_OUT, PTU0_OUT,
  134. PTV4_OUT, PTV3_OUT, PTV2_OUT, PTV1_OUT, PTV0_OUT,
  135. PINMUX_OUTPUT_END,
  136. PINMUX_FUNCTION_BEGIN,
  137. PTA7_FN, PTA6_FN, PTA5_FN, PTA4_FN,
  138. PTA3_FN, PTA2_FN, PTA1_FN, PTA0_FN,
  139. PTB7_FN, PTB6_FN, PTB5_FN, PTB4_FN,
  140. PTB3_FN, PTB2_FN, PTB1_FN, PTB0_FN,
  141. PTC7_FN, PTC6_FN, PTC5_FN, PTC4_FN,
  142. PTC3_FN, PTC2_FN, PTC1_FN, PTC0_FN,
  143. PTD7_FN, PTD6_FN, PTD5_FN, PTD4_FN,
  144. PTD3_FN, PTD2_FN, PTD1_FN, PTD0_FN,
  145. PTE6_FN, PTE5_FN, PTE4_FN,
  146. PTE3_FN, PTE2_FN, PTE1_FN, PTE0_FN,
  147. PTF6_FN, PTF5_FN, PTF4_FN,
  148. PTF3_FN, PTF2_FN, PTF1_FN, PTF0_FN,
  149. PTG6_FN, PTG5_FN, PTG4_FN,
  150. PTG3_FN, PTG2_FN, PTG1_FN, PTG0_FN,
  151. PTH6_FN, PTH5_FN, PTH4_FN,
  152. PTH3_FN, PTH2_FN, PTH1_FN, PTH0_FN,
  153. PTJ6_FN, PTJ5_FN, PTJ4_FN,
  154. PTJ3_FN, PTJ2_FN, PTJ1_FN, PTJ0_FN,
  155. PTK3_FN, PTK2_FN, PTK1_FN, PTK0_FN,
  156. PTL7_FN, PTL6_FN, PTL5_FN, PTL4_FN, PTL3_FN,
  157. PTM7_FN, PTM6_FN, PTM5_FN, PTM4_FN,
  158. PTM3_FN, PTM2_FN, PTM1_FN, PTM0_FN,
  159. PTP4_FN, PTP3_FN, PTP2_FN, PTP1_FN, PTP0_FN,
  160. PTR7_FN, PTR6_FN, PTR5_FN, PTR4_FN,
  161. PTR3_FN, PTR2_FN, PTR1_FN, PTR0_FN,
  162. PTS4_FN, PTS3_FN, PTS2_FN, PTS1_FN, PTS0_FN,
  163. PTT4_FN, PTT3_FN, PTT2_FN, PTT1_FN, PTT0_FN,
  164. PTU4_FN, PTU3_FN, PTU2_FN, PTU1_FN, PTU0_FN,
  165. PTV4_FN, PTV3_FN, PTV2_FN, PTV1_FN, PTV0_FN,
  166. PSELA_1_0_00, PSELA_1_0_01, PSELA_1_0_10,
  167. PSELA_3_2_00, PSELA_3_2_01, PSELA_3_2_10, PSELA_3_2_11,
  168. PSELA_5_4_00, PSELA_5_4_01, PSELA_5_4_10, PSELA_5_4_11,
  169. PSELA_7_6_00, PSELA_7_6_01, PSELA_7_6_10,
  170. PSELA_9_8_00, PSELA_9_8_01, PSELA_9_8_10,
  171. PSELA_11_10_00, PSELA_11_10_01, PSELA_11_10_10,
  172. PSELA_13_12_00, PSELA_13_12_10,
  173. PSELA_15_14_00, PSELA_15_14_10,
  174. PSELB_9_8_00, PSELB_9_8_11,
  175. PSELB_11_10_00, PSELB_11_10_01, PSELB_11_10_10, PSELB_11_10_11,
  176. PSELB_13_12_00, PSELB_13_12_01, PSELB_13_12_10, PSELB_13_12_11,
  177. PSELB_15_14_00, PSELB_15_14_11,
  178. PSELC_9_8_00, PSELC_9_8_10,
  179. PSELC_11_10_00, PSELC_11_10_10,
  180. PSELC_13_12_00, PSELC_13_12_01, PSELC_13_12_10,
  181. PSELC_15_14_00, PSELC_15_14_01, PSELC_15_14_10,
  182. PSELD_1_0_00, PSELD_1_0_10,
  183. PSELD_11_10_00, PSELD_11_10_01,
  184. PSELD_15_14_00, PSELD_15_14_01, PSELD_15_14_10,
  185. PINMUX_FUNCTION_END,
  186. PINMUX_MARK_BEGIN,
  187. D31_MARK, D30_MARK, D29_MARK, D28_MARK,
  188. D27_MARK, D26_MARK, D25_MARK, D24_MARK,
  189. D23_MARK, D22_MARK, D21_MARK, D20_MARK,
  190. D19_MARK, D18_MARK, D17_MARK, D16_MARK,
  191. IOIS16_MARK, RAS_MARK, CAS_MARK, CKE_MARK,
  192. CS5B_CE1A_MARK, CS6B_CE1B_MARK,
  193. A25_MARK, A24_MARK, A23_MARK, A22_MARK,
  194. A21_MARK, A20_MARK, A19_MARK, A0_MARK,
  195. REFOUT_MARK, IRQOUT_MARK,
  196. LCD_DATA15_MARK, LCD_DATA14_MARK,
  197. LCD_DATA13_MARK, LCD_DATA12_MARK,
  198. LCD_DATA11_MARK, LCD_DATA10_MARK,
  199. LCD_DATA9_MARK, LCD_DATA8_MARK,
  200. LCD_DATA7_MARK, LCD_DATA6_MARK,
  201. LCD_DATA5_MARK, LCD_DATA4_MARK,
  202. LCD_DATA3_MARK, LCD_DATA2_MARK,
  203. LCD_DATA1_MARK, LCD_DATA0_MARK,
  204. LCD_M_DISP_MARK,
  205. LCD_CL1_MARK, LCD_CL2_MARK,
  206. LCD_DON_MARK, LCD_FLM_MARK,
  207. LCD_VEPWC_MARK, LCD_VCPWC_MARK,
  208. AFE_RXIN_MARK, AFE_RDET_MARK,
  209. AFE_FS_MARK, AFE_TXOUT_MARK,
  210. AFE_SCLK_MARK, AFE_RLYCNT_MARK,
  211. AFE_HC1_MARK,
  212. IIC_SCL_MARK, IIC_SDA_MARK,
  213. DA1_MARK, DA0_MARK,
  214. AN3_MARK, AN2_MARK, AN1_MARK, AN0_MARK, ADTRG_MARK,
  215. USB1D_RCV_MARK, USB1D_TXSE0_MARK,
  216. USB1D_TXDPLS_MARK, USB1D_DMNS_MARK,
  217. USB1D_DPLS_MARK, USB1D_SPEED_MARK,
  218. USB1D_TXENL_MARK,
  219. USB2_PWR_EN_MARK, USB1_PWR_EN_USBF_UPLUP_MARK, USB1D_SUSPEND_MARK,
  220. IRQ5_MARK, IRQ4_MARK,
  221. IRQ3_IRL3_MARK, IRQ2_IRL2_MARK,
  222. IRQ1_IRL1_MARK, IRQ0_IRL0_MARK,
  223. PCC_REG_MARK, PCC_DRV_MARK,
  224. PCC_BVD2_MARK, PCC_BVD1_MARK,
  225. PCC_CD2_MARK, PCC_CD1_MARK,
  226. PCC_RESET_MARK, PCC_RDY_MARK,
  227. PCC_VS2_MARK, PCC_VS1_MARK,
  228. AUDATA3_MARK, AUDATA2_MARK, AUDATA1_MARK, AUDATA0_MARK,
  229. AUDCK_MARK, AUDSYNC_MARK, ASEBRKAK_MARK, TRST_MARK,
  230. TMS_MARK, TDO_MARK, TDI_MARK, TCK_MARK,
  231. DACK1_MARK, DREQ1_MARK, DACK0_MARK, DREQ0_MARK,
  232. TEND1_MARK, TEND0_MARK,
  233. SIOF0_SYNC_MARK, SIOF0_MCLK_MARK,
  234. SIOF0_TXD_MARK, SIOF0_RXD_MARK,
  235. SIOF0_SCK_MARK,
  236. SIOF1_SYNC_MARK, SIOF1_MCLK_MARK,
  237. SIOF1_TXD_MARK, SIOF1_RXD_MARK,
  238. SIOF1_SCK_MARK,
  239. SCIF0_TXD_MARK, SCIF0_RXD_MARK,
  240. SCIF0_RTS_MARK, SCIF0_CTS_MARK, SCIF0_SCK_MARK,
  241. SCIF1_TXD_MARK, SCIF1_RXD_MARK,
  242. SCIF1_RTS_MARK, SCIF1_CTS_MARK, SCIF1_SCK_MARK,
  243. TPU_TO1_MARK, TPU_TO0_MARK,
  244. TPU_TI3B_MARK, TPU_TI3A_MARK,
  245. TPU_TI2B_MARK, TPU_TI2A_MARK,
  246. TPU_TO3_MARK, TPU_TO2_MARK,
  247. SIM_D_MARK, SIM_CLK_MARK, SIM_RST_MARK,
  248. MMC_DAT_MARK, MMC_CMD_MARK,
  249. MMC_CLK_MARK, MMC_VDDON_MARK,
  250. MMC_ODMOD_MARK,
  251. STATUS0_MARK, STATUS1_MARK,
  252. PINMUX_MARK_END,
  253. };
  254. static pinmux_enum_t pinmux_data[] = {
  255. /* PTA GPIO */
  256. PINMUX_DATA(PTA7_DATA, PTA7_IN, PTA7_OUT, PTA7_IN_PU),
  257. PINMUX_DATA(PTA6_DATA, PTA6_IN, PTA6_OUT, PTA6_IN_PU),
  258. PINMUX_DATA(PTA5_DATA, PTA5_IN, PTA5_OUT, PTA5_IN_PU),
  259. PINMUX_DATA(PTA4_DATA, PTA4_IN, PTA4_OUT, PTA4_IN_PU),
  260. PINMUX_DATA(PTA3_DATA, PTA3_IN, PTA3_OUT, PTA3_IN_PU),
  261. PINMUX_DATA(PTA2_DATA, PTA2_IN, PTA2_OUT, PTA2_IN_PU),
  262. PINMUX_DATA(PTA1_DATA, PTA1_IN, PTA1_OUT, PTA1_IN_PU),
  263. PINMUX_DATA(PTA0_DATA, PTA0_IN, PTA0_OUT, PTA0_IN_PU),
  264. /* PTB GPIO */
  265. PINMUX_DATA(PTB7_DATA, PTB7_IN, PTB7_OUT, PTB7_IN_PU),
  266. PINMUX_DATA(PTB6_DATA, PTB6_IN, PTB6_OUT, PTB6_IN_PU),
  267. PINMUX_DATA(PTB5_DATA, PTB5_IN, PTB5_OUT, PTB5_IN_PU),
  268. PINMUX_DATA(PTB4_DATA, PTB4_IN, PTB4_OUT, PTB4_IN_PU),
  269. PINMUX_DATA(PTB3_DATA, PTB3_IN, PTB3_OUT, PTB3_IN_PU),
  270. PINMUX_DATA(PTB2_DATA, PTB2_IN, PTB2_OUT, PTB2_IN_PU),
  271. PINMUX_DATA(PTB1_DATA, PTB1_IN, PTB1_OUT, PTB1_IN_PU),
  272. PINMUX_DATA(PTB0_DATA, PTB0_IN, PTB0_OUT, PTB0_IN_PU),
  273. /* PTC GPIO */
  274. PINMUX_DATA(PTC7_DATA, PTC7_IN, PTC7_OUT, PTC7_IN_PU),
  275. PINMUX_DATA(PTC6_DATA, PTC6_IN, PTC6_OUT, PTC6_IN_PU),
  276. PINMUX_DATA(PTC5_DATA, PTC5_IN, PTC5_OUT, PTC5_IN_PU),
  277. PINMUX_DATA(PTC4_DATA, PTC4_IN, PTC4_OUT, PTC4_IN_PU),
  278. PINMUX_DATA(PTC3_DATA, PTC3_IN, PTC3_OUT, PTC3_IN_PU),
  279. PINMUX_DATA(PTC2_DATA, PTC2_IN, PTC2_OUT, PTC2_IN_PU),
  280. PINMUX_DATA(PTC1_DATA, PTC1_IN, PTC1_OUT, PTC1_IN_PU),
  281. PINMUX_DATA(PTC0_DATA, PTC0_IN, PTC0_OUT, PTC0_IN_PU),
  282. /* PTD GPIO */
  283. PINMUX_DATA(PTD7_DATA, PTD7_IN, PTD7_OUT, PTD7_IN_PU),
  284. PINMUX_DATA(PTD6_DATA, PTD6_IN, PTD6_OUT, PTD6_IN_PU),
  285. PINMUX_DATA(PTD5_DATA, PTD5_IN, PTD5_OUT, PTD5_IN_PU),
  286. PINMUX_DATA(PTD4_DATA, PTD4_IN, PTD4_OUT, PTD4_IN_PU),
  287. PINMUX_DATA(PTD3_DATA, PTD3_IN, PTD3_OUT, PTD3_IN_PU),
  288. PINMUX_DATA(PTD2_DATA, PTD2_IN, PTD2_OUT, PTD2_IN_PU),
  289. PINMUX_DATA(PTD1_DATA, PTD1_IN, PTD1_OUT, PTD1_IN_PU),
  290. PINMUX_DATA(PTD0_DATA, PTD0_IN, PTD0_OUT, PTD0_IN_PU),
  291. /* PTE GPIO */
  292. PINMUX_DATA(PTE6_DATA, PTE6_IN),
  293. PINMUX_DATA(PTE5_DATA, PTE5_IN),
  294. PINMUX_DATA(PTE4_DATA, PTE4_IN, PTE4_OUT, PTE4_IN_PU),
  295. PINMUX_DATA(PTE3_DATA, PTE3_IN, PTE3_OUT, PTE3_IN_PU),
  296. PINMUX_DATA(PTE2_DATA, PTE2_IN, PTE2_OUT, PTE2_IN_PU),
  297. PINMUX_DATA(PTE1_DATA, PTE1_IN, PTE1_OUT, PTE1_IN_PU),
  298. PINMUX_DATA(PTE0_DATA, PTE0_IN, PTE0_OUT, PTE0_IN_PU),
  299. /* PTF GPIO */
  300. PINMUX_DATA(PTF6_DATA, PTF6_IN),
  301. PINMUX_DATA(PTF5_DATA, PTF5_IN),
  302. PINMUX_DATA(PTF4_DATA, PTF4_IN),
  303. PINMUX_DATA(PTF3_DATA, PTF3_IN),
  304. PINMUX_DATA(PTF2_DATA, PTF2_IN),
  305. PINMUX_DATA(PTF1_DATA, PTF1_IN),
  306. PINMUX_DATA(PTF0_DATA, PTF0_IN, PTF0_OUT, PTF0_IN_PU),
  307. /* PTG GPIO */
  308. PINMUX_DATA(PTG6_DATA, PTG6_IN, PTG6_OUT, PTG6_IN_PU),
  309. PINMUX_DATA(PTG5_DATA, PTG5_IN, PTG5_OUT, PTG5_IN_PU),
  310. PINMUX_DATA(PTG4_DATA, PTG4_IN, PTG4_OUT, PTG4_IN_PU),
  311. PINMUX_DATA(PTG3_DATA, PTG3_IN, PTG3_OUT, PTG3_IN_PU),
  312. PINMUX_DATA(PTG2_DATA, PTG2_IN, PTG2_OUT, PTG2_IN_PU),
  313. PINMUX_DATA(PTG1_DATA, PTG1_IN, PTG1_OUT, PTG1_IN_PU),
  314. PINMUX_DATA(PTG0_DATA, PTG0_IN, PTG0_OUT, PTG0_IN_PU),
  315. /* PTH GPIO */
  316. PINMUX_DATA(PTH6_DATA, PTH6_IN, PTH6_OUT, PTH6_IN_PU),
  317. PINMUX_DATA(PTH5_DATA, PTH5_IN, PTH5_OUT, PTH5_IN_PU),
  318. PINMUX_DATA(PTH4_DATA, PTH4_IN, PTH4_OUT, PTH4_IN_PU),
  319. PINMUX_DATA(PTH3_DATA, PTH3_IN, PTH3_OUT, PTH3_IN_PU),
  320. PINMUX_DATA(PTH2_DATA, PTH2_IN, PTH2_OUT, PTH2_IN_PU),
  321. PINMUX_DATA(PTH1_DATA, PTH1_IN, PTH1_OUT, PTH1_IN_PU),
  322. PINMUX_DATA(PTH0_DATA, PTH0_IN, PTH0_OUT, PTH0_IN_PU),
  323. /* PTJ GPIO */
  324. PINMUX_DATA(PTJ6_DATA, PTJ6_IN, PTJ6_OUT, PTJ6_IN_PU),
  325. PINMUX_DATA(PTJ5_DATA, PTJ5_IN, PTJ5_OUT, PTJ5_IN_PU),
  326. PINMUX_DATA(PTJ4_DATA, PTJ4_IN, PTJ4_OUT, PTJ4_IN_PU),
  327. PINMUX_DATA(PTJ3_DATA, PTJ3_IN, PTJ3_OUT, PTJ3_IN_PU),
  328. PINMUX_DATA(PTJ2_DATA, PTJ2_IN, PTJ2_OUT, PTJ2_IN_PU),
  329. PINMUX_DATA(PTJ1_DATA, PTJ1_IN, PTJ1_OUT, PTJ1_IN_PU),
  330. PINMUX_DATA(PTJ0_DATA, PTJ0_IN, PTJ0_OUT, PTJ0_IN_PU),
  331. /* PTK GPIO */
  332. PINMUX_DATA(PTK3_DATA, PTK3_IN, PTK3_OUT, PTK3_IN_PU),
  333. PINMUX_DATA(PTK2_DATA, PTK2_IN, PTK2_OUT, PTK2_IN_PU),
  334. PINMUX_DATA(PTK1_DATA, PTK1_IN, PTK1_OUT, PTK1_IN_PU),
  335. PINMUX_DATA(PTK0_DATA, PTK0_IN, PTK0_OUT, PTK0_IN_PU),
  336. /* PTL GPIO */
  337. PINMUX_DATA(PTL7_DATA, PTL7_IN, PTL7_OUT, PTL7_IN_PU),
  338. PINMUX_DATA(PTL6_DATA, PTL6_IN, PTL6_OUT, PTL6_IN_PU),
  339. PINMUX_DATA(PTL5_DATA, PTL5_IN, PTL5_OUT, PTL5_IN_PU),
  340. PINMUX_DATA(PTL4_DATA, PTL4_IN, PTL4_OUT, PTL4_IN_PU),
  341. PINMUX_DATA(PTL3_DATA, PTL3_IN, PTL3_OUT, PTL3_IN_PU),
  342. /* PTM GPIO */
  343. PINMUX_DATA(PTM7_DATA, PTM7_IN, PTM7_OUT, PTM7_IN_PU),
  344. PINMUX_DATA(PTM6_DATA, PTM6_IN, PTM6_OUT, PTM6_IN_PU),
  345. PINMUX_DATA(PTM5_DATA, PTM5_IN, PTM5_OUT, PTM5_IN_PU),
  346. PINMUX_DATA(PTM4_DATA, PTM4_IN, PTM4_OUT, PTM4_IN_PU),
  347. PINMUX_DATA(PTM3_DATA, PTM3_IN, PTM3_OUT, PTM3_IN_PU),
  348. PINMUX_DATA(PTM2_DATA, PTM2_IN, PTM2_OUT, PTM2_IN_PU),
  349. PINMUX_DATA(PTM1_DATA, PTM1_IN, PTM1_OUT, PTM1_IN_PU),
  350. PINMUX_DATA(PTM0_DATA, PTM0_IN, PTM0_OUT, PTM0_IN_PU),
  351. /* PTP GPIO */
  352. PINMUX_DATA(PTP4_DATA, PTP4_IN, PTP4_OUT, PTP4_IN_PU),
  353. PINMUX_DATA(PTP3_DATA, PTP3_IN, PTP3_OUT, PTP3_IN_PU),
  354. PINMUX_DATA(PTP2_DATA, PTP2_IN, PTP2_OUT, PTP2_IN_PU),
  355. PINMUX_DATA(PTP1_DATA, PTP1_IN, PTP1_OUT, PTP1_IN_PU),
  356. PINMUX_DATA(PTP0_DATA, PTP0_IN, PTP0_OUT, PTP0_IN_PU),
  357. /* PTR GPIO */
  358. PINMUX_DATA(PTR7_DATA, PTR7_IN, PTR7_OUT, PTR7_IN_PU),
  359. PINMUX_DATA(PTR6_DATA, PTR6_IN, PTR6_OUT, PTR6_IN_PU),
  360. PINMUX_DATA(PTR5_DATA, PTR5_IN, PTR5_OUT, PTR5_IN_PU),
  361. PINMUX_DATA(PTR4_DATA, PTR4_IN, PTR4_OUT, PTR4_IN_PU),
  362. PINMUX_DATA(PTR3_DATA, PTR3_IN, PTR3_OUT, PTR3_IN_PU),
  363. PINMUX_DATA(PTR2_DATA, PTR2_IN, PTR2_OUT, PTR2_IN_PU),
  364. PINMUX_DATA(PTR1_DATA, PTR1_IN, PTR1_OUT, PTR1_IN_PU),
  365. PINMUX_DATA(PTR0_DATA, PTR0_IN, PTR0_OUT, PTR0_IN_PU),
  366. /* PTS GPIO */
  367. PINMUX_DATA(PTS4_DATA, PTS4_IN, PTS4_OUT, PTS4_IN_PU),
  368. PINMUX_DATA(PTS3_DATA, PTS3_IN, PTS3_OUT, PTS3_IN_PU),
  369. PINMUX_DATA(PTS2_DATA, PTS2_IN, PTS2_OUT, PTS2_IN_PU),
  370. PINMUX_DATA(PTS1_DATA, PTS1_IN, PTS1_OUT, PTS1_IN_PU),
  371. PINMUX_DATA(PTS0_DATA, PTS0_IN, PTS0_OUT, PTS0_IN_PU),
  372. /* PTT GPIO */
  373. PINMUX_DATA(PTT4_DATA, PTT4_IN, PTT4_OUT, PTT4_IN_PU),
  374. PINMUX_DATA(PTT3_DATA, PTT3_IN, PTT3_OUT, PTT3_IN_PU),
  375. PINMUX_DATA(PTT2_DATA, PTT2_IN, PTT2_OUT, PTT2_IN_PU),
  376. PINMUX_DATA(PTT1_DATA, PTT1_IN, PTT1_OUT, PTT1_IN_PU),
  377. PINMUX_DATA(PTT0_DATA, PTT0_IN, PTT0_OUT, PTT0_IN_PU),
  378. /* PTU GPIO */
  379. PINMUX_DATA(PTU4_DATA, PTU4_IN, PTU4_OUT, PTU4_IN_PU),
  380. PINMUX_DATA(PTU3_DATA, PTU3_IN, PTU3_OUT, PTU3_IN_PU),
  381. PINMUX_DATA(PTU2_DATA, PTU2_IN, PTU2_OUT, PTU2_IN_PU),
  382. PINMUX_DATA(PTU1_DATA, PTU1_IN, PTU1_OUT, PTU1_IN_PU),
  383. PINMUX_DATA(PTU0_DATA, PTU0_IN, PTU0_OUT, PTU0_IN_PU),
  384. /* PTV GPIO */
  385. PINMUX_DATA(PTV4_DATA, PTV4_IN, PTV4_OUT, PTV4_IN_PU),
  386. PINMUX_DATA(PTV3_DATA, PTV3_IN, PTV3_OUT, PTV3_IN_PU),
  387. PINMUX_DATA(PTV2_DATA, PTV2_IN, PTV2_OUT, PTV2_IN_PU),
  388. PINMUX_DATA(PTV1_DATA, PTV1_IN, PTV1_OUT, PTV1_IN_PU),
  389. PINMUX_DATA(PTV0_DATA, PTV0_IN, PTV0_OUT, PTV0_IN_PU),
  390. /* PTA FN */
  391. PINMUX_DATA(D23_MARK, PTA7_FN),
  392. PINMUX_DATA(D22_MARK, PTA6_FN),
  393. PINMUX_DATA(D21_MARK, PTA5_FN),
  394. PINMUX_DATA(D20_MARK, PTA4_FN),
  395. PINMUX_DATA(D19_MARK, PTA3_FN),
  396. PINMUX_DATA(D18_MARK, PTA2_FN),
  397. PINMUX_DATA(D17_MARK, PTA1_FN),
  398. PINMUX_DATA(D16_MARK, PTA0_FN),
  399. /* PTB FN */
  400. PINMUX_DATA(D31_MARK, PTB7_FN),
  401. PINMUX_DATA(D30_MARK, PTB6_FN),
  402. PINMUX_DATA(D29_MARK, PTB5_FN),
  403. PINMUX_DATA(D28_MARK, PTB4_FN),
  404. PINMUX_DATA(D27_MARK, PTB3_FN),
  405. PINMUX_DATA(D26_MARK, PTB2_FN),
  406. PINMUX_DATA(D25_MARK, PTB1_FN),
  407. PINMUX_DATA(D24_MARK, PTB0_FN),
  408. /* PTC FN */
  409. PINMUX_DATA(LCD_DATA7_MARK, PTC7_FN),
  410. PINMUX_DATA(LCD_DATA6_MARK, PTC6_FN),
  411. PINMUX_DATA(LCD_DATA5_MARK, PTC5_FN),
  412. PINMUX_DATA(LCD_DATA4_MARK, PTC4_FN),
  413. PINMUX_DATA(LCD_DATA3_MARK, PTC3_FN),
  414. PINMUX_DATA(LCD_DATA2_MARK, PTC2_FN),
  415. PINMUX_DATA(LCD_DATA1_MARK, PTC1_FN),
  416. PINMUX_DATA(LCD_DATA0_MARK, PTC0_FN),
  417. /* PTD FN */
  418. PINMUX_DATA(LCD_DATA15_MARK, PTD7_FN),
  419. PINMUX_DATA(LCD_DATA14_MARK, PTD6_FN),
  420. PINMUX_DATA(LCD_DATA13_MARK, PTD5_FN),
  421. PINMUX_DATA(LCD_DATA12_MARK, PTD4_FN),
  422. PINMUX_DATA(LCD_DATA11_MARK, PTD3_FN),
  423. PINMUX_DATA(LCD_DATA10_MARK, PTD2_FN),
  424. PINMUX_DATA(LCD_DATA9_MARK, PTD1_FN),
  425. PINMUX_DATA(LCD_DATA8_MARK, PTD0_FN),
  426. /* PTE FN */
  427. PINMUX_DATA(IIC_SCL_MARK, PSELB_9_8_00, PTE6_FN),
  428. PINMUX_DATA(AFE_RXIN_MARK, PSELB_9_8_11, PTE6_FN),
  429. PINMUX_DATA(IIC_SDA_MARK, PSELB_9_8_00, PTE5_FN),
  430. PINMUX_DATA(AFE_RDET_MARK, PSELB_9_8_11, PTE5_FN),
  431. PINMUX_DATA(LCD_M_DISP_MARK, PTE4_FN),
  432. PINMUX_DATA(LCD_CL1_MARK, PTE3_FN),
  433. PINMUX_DATA(LCD_CL2_MARK, PTE2_FN),
  434. PINMUX_DATA(LCD_DON_MARK, PTE1_FN),
  435. PINMUX_DATA(LCD_FLM_MARK, PTE0_FN),
  436. /* PTF FN */
  437. PINMUX_DATA(DA1_MARK, PTF6_FN),
  438. PINMUX_DATA(DA0_MARK, PTF5_FN),
  439. PINMUX_DATA(AN3_MARK, PTF4_FN),
  440. PINMUX_DATA(AN2_MARK, PTF3_FN),
  441. PINMUX_DATA(AN1_MARK, PTF2_FN),
  442. PINMUX_DATA(AN0_MARK, PTF1_FN),
  443. PINMUX_DATA(ADTRG_MARK, PTF0_FN),
  444. /* PTG FN */
  445. PINMUX_DATA(USB1D_RCV_MARK, PSELA_3_2_00, PTG6_FN),
  446. PINMUX_DATA(AFE_FS_MARK, PSELA_3_2_01, PTG6_FN),
  447. PINMUX_DATA(PCC_REG_MARK, PSELA_3_2_10, PTG6_FN),
  448. PINMUX_DATA(IRQ5_MARK, PSELA_3_2_11, PTG6_FN),
  449. PINMUX_DATA(USB1D_TXSE0_MARK, PSELA_5_4_00, PTG5_FN),
  450. PINMUX_DATA(AFE_TXOUT_MARK, PSELA_5_4_01, PTG5_FN),
  451. PINMUX_DATA(PCC_DRV_MARK, PSELA_5_4_10, PTG5_FN),
  452. PINMUX_DATA(IRQ4_MARK, PSELA_5_4_11, PTG5_FN),
  453. PINMUX_DATA(USB1D_TXDPLS_MARK, PSELA_7_6_00, PTG4_FN),
  454. PINMUX_DATA(AFE_SCLK_MARK, PSELA_7_6_01, PTG4_FN),
  455. PINMUX_DATA(IOIS16_MARK, PSELA_7_6_10, PTG4_FN),
  456. PINMUX_DATA(USB1D_DMNS_MARK, PSELA_9_8_00, PTG3_FN),
  457. PINMUX_DATA(AFE_RLYCNT_MARK, PSELA_9_8_01, PTG3_FN),
  458. PINMUX_DATA(PCC_BVD2_MARK, PSELA_9_8_10, PTG3_FN),
  459. PINMUX_DATA(USB1D_DPLS_MARK, PSELA_11_10_00, PTG2_FN),
  460. PINMUX_DATA(AFE_HC1_MARK, PSELA_11_10_01, PTG2_FN),
  461. PINMUX_DATA(PCC_BVD1_MARK, PSELA_11_10_10, PTG2_FN),
  462. PINMUX_DATA(USB1D_SPEED_MARK, PSELA_13_12_00, PTG1_FN),
  463. PINMUX_DATA(PCC_CD2_MARK, PSELA_13_12_10, PTG1_FN),
  464. PINMUX_DATA(USB1D_TXENL_MARK, PSELA_15_14_00, PTG0_FN),
  465. PINMUX_DATA(PCC_CD1_MARK, PSELA_15_14_10, PTG0_FN),
  466. /* PTH FN */
  467. PINMUX_DATA(RAS_MARK, PTH6_FN),
  468. PINMUX_DATA(CAS_MARK, PTH5_FN),
  469. PINMUX_DATA(CKE_MARK, PTH4_FN),
  470. PINMUX_DATA(STATUS1_MARK, PTH3_FN),
  471. PINMUX_DATA(STATUS0_MARK, PTH2_FN),
  472. PINMUX_DATA(USB2_PWR_EN_MARK, PTH1_FN),
  473. PINMUX_DATA(USB1_PWR_EN_USBF_UPLUP_MARK, PTH0_FN),
  474. /* PTJ FN */
  475. PINMUX_DATA(AUDCK_MARK, PTJ6_FN),
  476. PINMUX_DATA(ASEBRKAK_MARK, PTJ5_FN),
  477. PINMUX_DATA(AUDATA3_MARK, PTJ4_FN),
  478. PINMUX_DATA(AUDATA2_MARK, PTJ3_FN),
  479. PINMUX_DATA(AUDATA1_MARK, PTJ2_FN),
  480. PINMUX_DATA(AUDATA0_MARK, PTJ1_FN),
  481. PINMUX_DATA(AUDSYNC_MARK, PTJ0_FN),
  482. /* PTK FN */
  483. PINMUX_DATA(PCC_RESET_MARK, PTK3_FN),
  484. PINMUX_DATA(PCC_RDY_MARK, PTK2_FN),
  485. PINMUX_DATA(PCC_VS2_MARK, PTK1_FN),
  486. PINMUX_DATA(PCC_VS1_MARK, PTK0_FN),
  487. /* PTL FN */
  488. PINMUX_DATA(TRST_MARK, PTL7_FN),
  489. PINMUX_DATA(TMS_MARK, PTL6_FN),
  490. PINMUX_DATA(TDO_MARK, PTL5_FN),
  491. PINMUX_DATA(TDI_MARK, PTL4_FN),
  492. PINMUX_DATA(TCK_MARK, PTL3_FN),
  493. /* PTM FN */
  494. PINMUX_DATA(DREQ1_MARK, PTM7_FN),
  495. PINMUX_DATA(DREQ0_MARK, PTM6_FN),
  496. PINMUX_DATA(DACK1_MARK, PTM5_FN),
  497. PINMUX_DATA(DACK0_MARK, PTM4_FN),
  498. PINMUX_DATA(TEND1_MARK, PTM3_FN),
  499. PINMUX_DATA(TEND0_MARK, PTM2_FN),
  500. PINMUX_DATA(CS5B_CE1A_MARK, PTM1_FN),
  501. PINMUX_DATA(CS6B_CE1B_MARK, PTM0_FN),
  502. /* PTP FN */
  503. PINMUX_DATA(USB1D_SUSPEND_MARK, PSELA_1_0_00, PTP4_FN),
  504. PINMUX_DATA(REFOUT_MARK, PSELA_1_0_01, PTP4_FN),
  505. PINMUX_DATA(IRQOUT_MARK, PSELA_1_0_10, PTP4_FN),
  506. PINMUX_DATA(IRQ3_IRL3_MARK, PTP3_FN),
  507. PINMUX_DATA(IRQ2_IRL2_MARK, PTP2_FN),
  508. PINMUX_DATA(IRQ1_IRL1_MARK, PTP1_FN),
  509. PINMUX_DATA(IRQ0_IRL0_MARK, PTP0_FN),
  510. /* PTR FN */
  511. PINMUX_DATA(A25_MARK, PTR7_FN),
  512. PINMUX_DATA(A24_MARK, PTR6_FN),
  513. PINMUX_DATA(A23_MARK, PTR5_FN),
  514. PINMUX_DATA(A22_MARK, PTR4_FN),
  515. PINMUX_DATA(A21_MARK, PTR3_FN),
  516. PINMUX_DATA(A20_MARK, PTR2_FN),
  517. PINMUX_DATA(A19_MARK, PTR1_FN),
  518. PINMUX_DATA(A0_MARK, PTR0_FN),
  519. /* PTS FN */
  520. PINMUX_DATA(SIOF0_SYNC_MARK, PTS4_FN),
  521. PINMUX_DATA(SIOF0_MCLK_MARK, PTS3_FN),
  522. PINMUX_DATA(SIOF0_TXD_MARK, PTS2_FN),
  523. PINMUX_DATA(SIOF0_RXD_MARK, PTS1_FN),
  524. PINMUX_DATA(SIOF0_SCK_MARK, PTS0_FN),
  525. /* PTT FN */
  526. PINMUX_DATA(SCIF0_CTS_MARK, PSELB_15_14_00, PTT4_FN),
  527. PINMUX_DATA(TPU_TO1_MARK, PSELB_15_14_11, PTT4_FN),
  528. PINMUX_DATA(SCIF0_RTS_MARK, PSELB_15_14_00, PTT3_FN),
  529. PINMUX_DATA(TPU_TO0_MARK, PSELB_15_14_11, PTT3_FN),
  530. PINMUX_DATA(SCIF0_TXD_MARK, PTT2_FN),
  531. PINMUX_DATA(SCIF0_RXD_MARK, PTT1_FN),
  532. PINMUX_DATA(SCIF0_SCK_MARK, PTT0_FN),
  533. /* PTU FN */
  534. PINMUX_DATA(SIOF1_SYNC_MARK, PTU4_FN),
  535. PINMUX_DATA(SIOF1_MCLK_MARK, PSELD_11_10_00, PTU3_FN),
  536. PINMUX_DATA(TPU_TI3B_MARK, PSELD_11_10_01, PTU3_FN),
  537. PINMUX_DATA(SIOF1_TXD_MARK, PSELD_15_14_00, PTU2_FN),
  538. PINMUX_DATA(TPU_TI3A_MARK, PSELD_15_14_01, PTU2_FN),
  539. PINMUX_DATA(MMC_DAT_MARK, PSELD_15_14_10, PTU2_FN),
  540. PINMUX_DATA(SIOF1_RXD_MARK, PSELC_13_12_00, PTU1_FN),
  541. PINMUX_DATA(TPU_TI2B_MARK, PSELC_13_12_01, PTU1_FN),
  542. PINMUX_DATA(MMC_CMD_MARK, PSELC_13_12_10, PTU1_FN),
  543. PINMUX_DATA(SIOF1_SCK_MARK, PSELC_15_14_00, PTU0_FN),
  544. PINMUX_DATA(TPU_TI2A_MARK, PSELC_15_14_01, PTU0_FN),
  545. PINMUX_DATA(MMC_CLK_MARK, PSELC_15_14_10, PTU0_FN),
  546. /* PTV FN */
  547. PINMUX_DATA(SCIF1_CTS_MARK, PSELB_11_10_00, PTV4_FN),
  548. PINMUX_DATA(TPU_TO3_MARK, PSELB_11_10_01, PTV4_FN),
  549. PINMUX_DATA(MMC_VDDON_MARK, PSELB_11_10_10, PTV4_FN),
  550. PINMUX_DATA(LCD_VEPWC_MARK, PSELB_11_10_11, PTV4_FN),
  551. PINMUX_DATA(SCIF1_RTS_MARK, PSELB_13_12_00, PTV3_FN),
  552. PINMUX_DATA(TPU_TO2_MARK, PSELB_13_12_01, PTV3_FN),
  553. PINMUX_DATA(MMC_ODMOD_MARK, PSELB_13_12_10, PTV3_FN),
  554. PINMUX_DATA(LCD_VCPWC_MARK, PSELB_13_12_11, PTV3_FN),
  555. PINMUX_DATA(SCIF1_TXD_MARK, PSELC_9_8_00, PTV2_FN),
  556. PINMUX_DATA(SIM_D_MARK, PSELC_9_8_10, PTV2_FN),
  557. PINMUX_DATA(SCIF1_RXD_MARK, PSELC_11_10_00, PTV1_FN),
  558. PINMUX_DATA(SIM_RST_MARK, PSELC_11_10_10, PTV1_FN),
  559. PINMUX_DATA(SCIF1_SCK_MARK, PSELD_1_0_00, PTV0_FN),
  560. PINMUX_DATA(SIM_CLK_MARK, PSELD_1_0_10, PTV0_FN),
  561. };
  562. static struct pinmux_gpio pinmux_gpios[] = {
  563. /* PTA */
  564. PINMUX_GPIO(GPIO_PTA7, PTA7_DATA),
  565. PINMUX_GPIO(GPIO_PTA6, PTA6_DATA),
  566. PINMUX_GPIO(GPIO_PTA5, PTA5_DATA),
  567. PINMUX_GPIO(GPIO_PTA4, PTA4_DATA),
  568. PINMUX_GPIO(GPIO_PTA3, PTA3_DATA),
  569. PINMUX_GPIO(GPIO_PTA2, PTA2_DATA),
  570. PINMUX_GPIO(GPIO_PTA1, PTA1_DATA),
  571. PINMUX_GPIO(GPIO_PTA0, PTA0_DATA),
  572. /* PTB */
  573. PINMUX_GPIO(GPIO_PTB7, PTB7_DATA),
  574. PINMUX_GPIO(GPIO_PTB6, PTB6_DATA),
  575. PINMUX_GPIO(GPIO_PTB5, PTB5_DATA),
  576. PINMUX_GPIO(GPIO_PTB4, PTB4_DATA),
  577. PINMUX_GPIO(GPIO_PTB3, PTB3_DATA),
  578. PINMUX_GPIO(GPIO_PTB2, PTB2_DATA),
  579. PINMUX_GPIO(GPIO_PTB1, PTB1_DATA),
  580. PINMUX_GPIO(GPIO_PTB0, PTB0_DATA),
  581. /* PTC */
  582. PINMUX_GPIO(GPIO_PTC7, PTC7_DATA),
  583. PINMUX_GPIO(GPIO_PTC6, PTC6_DATA),
  584. PINMUX_GPIO(GPIO_PTC5, PTC5_DATA),
  585. PINMUX_GPIO(GPIO_PTC4, PTC4_DATA),
  586. PINMUX_GPIO(GPIO_PTC3, PTC3_DATA),
  587. PINMUX_GPIO(GPIO_PTC2, PTC2_DATA),
  588. PINMUX_GPIO(GPIO_PTC1, PTC1_DATA),
  589. PINMUX_GPIO(GPIO_PTC0, PTC0_DATA),
  590. /* PTD */
  591. PINMUX_GPIO(GPIO_PTD7, PTD7_DATA),
  592. PINMUX_GPIO(GPIO_PTD6, PTD6_DATA),
  593. PINMUX_GPIO(GPIO_PTD5, PTD5_DATA),
  594. PINMUX_GPIO(GPIO_PTD4, PTD4_DATA),
  595. PINMUX_GPIO(GPIO_PTD3, PTD3_DATA),
  596. PINMUX_GPIO(GPIO_PTD2, PTD2_DATA),
  597. PINMUX_GPIO(GPIO_PTD1, PTD1_DATA),
  598. PINMUX_GPIO(GPIO_PTD0, PTD0_DATA),
  599. /* PTE */
  600. PINMUX_GPIO(GPIO_PTE6, PTE6_DATA),
  601. PINMUX_GPIO(GPIO_PTE5, PTE5_DATA),
  602. PINMUX_GPIO(GPIO_PTE4, PTE4_DATA),
  603. PINMUX_GPIO(GPIO_PTE3, PTE3_DATA),
  604. PINMUX_GPIO(GPIO_PTE2, PTE2_DATA),
  605. PINMUX_GPIO(GPIO_PTE1, PTE1_DATA),
  606. PINMUX_GPIO(GPIO_PTE0, PTE0_DATA),
  607. /* PTF */
  608. PINMUX_GPIO(GPIO_PTF6, PTF6_DATA),
  609. PINMUX_GPIO(GPIO_PTF5, PTF5_DATA),
  610. PINMUX_GPIO(GPIO_PTF4, PTF4_DATA),
  611. PINMUX_GPIO(GPIO_PTF3, PTF3_DATA),
  612. PINMUX_GPIO(GPIO_PTF2, PTF2_DATA),
  613. PINMUX_GPIO(GPIO_PTF1, PTF1_DATA),
  614. PINMUX_GPIO(GPIO_PTF0, PTF0_DATA),
  615. /* PTG */
  616. PINMUX_GPIO(GPIO_PTG6, PTG6_DATA),
  617. PINMUX_GPIO(GPIO_PTG5, PTG5_DATA),
  618. PINMUX_GPIO(GPIO_PTG4, PTG4_DATA),
  619. PINMUX_GPIO(GPIO_PTG3, PTG3_DATA),
  620. PINMUX_GPIO(GPIO_PTG2, PTG2_DATA),
  621. PINMUX_GPIO(GPIO_PTG1, PTG1_DATA),
  622. PINMUX_GPIO(GPIO_PTG0, PTG0_DATA),
  623. /* PTH */
  624. PINMUX_GPIO(GPIO_PTH6, PTH6_DATA),
  625. PINMUX_GPIO(GPIO_PTH5, PTH5_DATA),
  626. PINMUX_GPIO(GPIO_PTH4, PTH4_DATA),
  627. PINMUX_GPIO(GPIO_PTH3, PTH3_DATA),
  628. PINMUX_GPIO(GPIO_PTH2, PTH2_DATA),
  629. PINMUX_GPIO(GPIO_PTH1, PTH1_DATA),
  630. PINMUX_GPIO(GPIO_PTH0, PTH0_DATA),
  631. /* PTJ */
  632. PINMUX_GPIO(GPIO_PTJ6, PTJ6_DATA),
  633. PINMUX_GPIO(GPIO_PTJ5, PTJ5_DATA),
  634. PINMUX_GPIO(GPIO_PTJ4, PTJ4_DATA),
  635. PINMUX_GPIO(GPIO_PTJ3, PTJ3_DATA),
  636. PINMUX_GPIO(GPIO_PTJ2, PTJ2_DATA),
  637. PINMUX_GPIO(GPIO_PTJ1, PTJ1_DATA),
  638. PINMUX_GPIO(GPIO_PTJ0, PTJ0_DATA),
  639. /* PTK */
  640. PINMUX_GPIO(GPIO_PTK3, PTK3_DATA),
  641. PINMUX_GPIO(GPIO_PTK2, PTK2_DATA),
  642. PINMUX_GPIO(GPIO_PTK1, PTK1_DATA),
  643. PINMUX_GPIO(GPIO_PTK0, PTK0_DATA),
  644. /* PTL */
  645. PINMUX_GPIO(GPIO_PTL7, PTL7_DATA),
  646. PINMUX_GPIO(GPIO_PTL6, PTL6_DATA),
  647. PINMUX_GPIO(GPIO_PTL5, PTL5_DATA),
  648. PINMUX_GPIO(GPIO_PTL4, PTL4_DATA),
  649. PINMUX_GPIO(GPIO_PTL3, PTL3_DATA),
  650. /* PTM */
  651. PINMUX_GPIO(GPIO_PTM7, PTM7_DATA),
  652. PINMUX_GPIO(GPIO_PTM6, PTM6_DATA),
  653. PINMUX_GPIO(GPIO_PTM5, PTM5_DATA),
  654. PINMUX_GPIO(GPIO_PTM4, PTM4_DATA),
  655. PINMUX_GPIO(GPIO_PTM3, PTM3_DATA),
  656. PINMUX_GPIO(GPIO_PTM2, PTM2_DATA),
  657. PINMUX_GPIO(GPIO_PTM1, PTM1_DATA),
  658. PINMUX_GPIO(GPIO_PTM0, PTM0_DATA),
  659. /* PTP */
  660. PINMUX_GPIO(GPIO_PTP4, PTP4_DATA),
  661. PINMUX_GPIO(GPIO_PTP3, PTP3_DATA),
  662. PINMUX_GPIO(GPIO_PTP2, PTP2_DATA),
  663. PINMUX_GPIO(GPIO_PTP1, PTP1_DATA),
  664. PINMUX_GPIO(GPIO_PTP0, PTP0_DATA),
  665. /* PTR */
  666. PINMUX_GPIO(GPIO_PTR7, PTR7_DATA),
  667. PINMUX_GPIO(GPIO_PTR6, PTR6_DATA),
  668. PINMUX_GPIO(GPIO_PTR5, PTR5_DATA),
  669. PINMUX_GPIO(GPIO_PTR4, PTR4_DATA),
  670. PINMUX_GPIO(GPIO_PTR3, PTR3_DATA),
  671. PINMUX_GPIO(GPIO_PTR2, PTR2_DATA),
  672. PINMUX_GPIO(GPIO_PTR1, PTR1_DATA),
  673. PINMUX_GPIO(GPIO_PTR0, PTR0_DATA),
  674. /* PTS */
  675. PINMUX_GPIO(GPIO_PTS4, PTS4_DATA),
  676. PINMUX_GPIO(GPIO_PTS3, PTS3_DATA),
  677. PINMUX_GPIO(GPIO_PTS2, PTS2_DATA),
  678. PINMUX_GPIO(GPIO_PTS1, PTS1_DATA),
  679. PINMUX_GPIO(GPIO_PTS0, PTS0_DATA),
  680. /* PTT */
  681. PINMUX_GPIO(GPIO_PTT4, PTT4_DATA),
  682. PINMUX_GPIO(GPIO_PTT3, PTT3_DATA),
  683. PINMUX_GPIO(GPIO_PTT2, PTT2_DATA),
  684. PINMUX_GPIO(GPIO_PTT1, PTT1_DATA),
  685. PINMUX_GPIO(GPIO_PTT0, PTT0_DATA),
  686. /* PTU */
  687. PINMUX_GPIO(GPIO_PTU4, PTU4_DATA),
  688. PINMUX_GPIO(GPIO_PTU3, PTU3_DATA),
  689. PINMUX_GPIO(GPIO_PTU2, PTU2_DATA),
  690. PINMUX_GPIO(GPIO_PTU1, PTU1_DATA),
  691. PINMUX_GPIO(GPIO_PTU0, PTU0_DATA),
  692. /* PTV */
  693. PINMUX_GPIO(GPIO_PTV4, PTV4_DATA),
  694. PINMUX_GPIO(GPIO_PTV3, PTV3_DATA),
  695. PINMUX_GPIO(GPIO_PTV2, PTV2_DATA),
  696. PINMUX_GPIO(GPIO_PTV1, PTV1_DATA),
  697. PINMUX_GPIO(GPIO_PTV0, PTV0_DATA),
  698. /* BSC */
  699. GPIO_FN(D31),
  700. GPIO_FN(D30),
  701. GPIO_FN(D29),
  702. GPIO_FN(D28),
  703. GPIO_FN(D27),
  704. GPIO_FN(D26),
  705. GPIO_FN(D25),
  706. GPIO_FN(D24),
  707. GPIO_FN(D23),
  708. GPIO_FN(D22),
  709. GPIO_FN(D21),
  710. GPIO_FN(D20),
  711. GPIO_FN(D19),
  712. GPIO_FN(D18),
  713. GPIO_FN(D17),
  714. GPIO_FN(D16),
  715. GPIO_FN(IOIS16),
  716. GPIO_FN(RAS),
  717. GPIO_FN(CAS),
  718. GPIO_FN(CKE),
  719. GPIO_FN(CS5B_CE1A),
  720. GPIO_FN(CS6B_CE1B),
  721. GPIO_FN(A25),
  722. GPIO_FN(A24),
  723. GPIO_FN(A23),
  724. GPIO_FN(A22),
  725. GPIO_FN(A21),
  726. GPIO_FN(A20),
  727. GPIO_FN(A19),
  728. GPIO_FN(A0),
  729. GPIO_FN(REFOUT),
  730. GPIO_FN(IRQOUT),
  731. /* LCDC */
  732. GPIO_FN(LCD_DATA15),
  733. GPIO_FN(LCD_DATA14),
  734. GPIO_FN(LCD_DATA13),
  735. GPIO_FN(LCD_DATA12),
  736. GPIO_FN(LCD_DATA11),
  737. GPIO_FN(LCD_DATA10),
  738. GPIO_FN(LCD_DATA9),
  739. GPIO_FN(LCD_DATA8),
  740. GPIO_FN(LCD_DATA7),
  741. GPIO_FN(LCD_DATA6),
  742. GPIO_FN(LCD_DATA5),
  743. GPIO_FN(LCD_DATA4),
  744. GPIO_FN(LCD_DATA3),
  745. GPIO_FN(LCD_DATA2),
  746. GPIO_FN(LCD_DATA1),
  747. GPIO_FN(LCD_DATA0),
  748. GPIO_FN(LCD_M_DISP),
  749. GPIO_FN(LCD_CL1),
  750. GPIO_FN(LCD_CL2),
  751. GPIO_FN(LCD_DON),
  752. GPIO_FN(LCD_FLM),
  753. GPIO_FN(LCD_VEPWC),
  754. GPIO_FN(LCD_VCPWC),
  755. /* AFEIF */
  756. GPIO_FN(AFE_RXIN),
  757. GPIO_FN(AFE_RDET),
  758. GPIO_FN(AFE_FS),
  759. GPIO_FN(AFE_TXOUT),
  760. GPIO_FN(AFE_SCLK),
  761. GPIO_FN(AFE_RLYCNT),
  762. GPIO_FN(AFE_HC1),
  763. /* IIC */
  764. GPIO_FN(IIC_SCL),
  765. GPIO_FN(IIC_SDA),
  766. /* DAC */
  767. GPIO_FN(DA1),
  768. GPIO_FN(DA0),
  769. /* ADC */
  770. GPIO_FN(AN3),
  771. GPIO_FN(AN2),
  772. GPIO_FN(AN1),
  773. GPIO_FN(AN0),
  774. GPIO_FN(ADTRG),
  775. /* USB */
  776. GPIO_FN(USB1D_RCV),
  777. GPIO_FN(USB1D_TXSE0),
  778. GPIO_FN(USB1D_TXDPLS),
  779. GPIO_FN(USB1D_DMNS),
  780. GPIO_FN(USB1D_DPLS),
  781. GPIO_FN(USB1D_SPEED),
  782. GPIO_FN(USB1D_TXENL),
  783. GPIO_FN(USB2_PWR_EN),
  784. GPIO_FN(USB1_PWR_EN_USBF_UPLUP),
  785. GPIO_FN(USB1D_SUSPEND),
  786. /* INTC */
  787. GPIO_FN(IRQ5),
  788. GPIO_FN(IRQ4),
  789. GPIO_FN(IRQ3_IRL3),
  790. GPIO_FN(IRQ2_IRL2),
  791. GPIO_FN(IRQ1_IRL1),
  792. GPIO_FN(IRQ0_IRL0),
  793. /* PCC */
  794. GPIO_FN(PCC_REG),
  795. GPIO_FN(PCC_DRV),
  796. GPIO_FN(PCC_BVD2),
  797. GPIO_FN(PCC_BVD1),
  798. GPIO_FN(PCC_CD2),
  799. GPIO_FN(PCC_CD1),
  800. GPIO_FN(PCC_RESET),
  801. GPIO_FN(PCC_RDY),
  802. GPIO_FN(PCC_VS2),
  803. GPIO_FN(PCC_VS1),
  804. /* HUDI */
  805. GPIO_FN(AUDATA3),
  806. GPIO_FN(AUDATA2),
  807. GPIO_FN(AUDATA1),
  808. GPIO_FN(AUDATA0),
  809. GPIO_FN(AUDCK),
  810. GPIO_FN(AUDSYNC),
  811. GPIO_FN(ASEBRKAK),
  812. GPIO_FN(TRST),
  813. GPIO_FN(TMS),
  814. GPIO_FN(TDO),
  815. GPIO_FN(TDI),
  816. GPIO_FN(TCK),
  817. /* DMAC */
  818. GPIO_FN(DACK1),
  819. GPIO_FN(DREQ1),
  820. GPIO_FN(DACK0),
  821. GPIO_FN(DREQ0),
  822. GPIO_FN(TEND1),
  823. GPIO_FN(TEND0),
  824. /* SIOF0 */
  825. GPIO_FN(SIOF0_SYNC),
  826. GPIO_FN(SIOF0_MCLK),
  827. GPIO_FN(SIOF0_TXD),
  828. GPIO_FN(SIOF0_RXD),
  829. GPIO_FN(SIOF0_SCK),
  830. /* SIOF1 */
  831. GPIO_FN(SIOF1_SYNC),
  832. GPIO_FN(SIOF1_MCLK),
  833. GPIO_FN(SIOF1_TXD),
  834. GPIO_FN(SIOF1_RXD),
  835. GPIO_FN(SIOF1_SCK),
  836. /* SCIF0 */
  837. GPIO_FN(SCIF0_TXD),
  838. GPIO_FN(SCIF0_RXD),
  839. GPIO_FN(SCIF0_RTS),
  840. GPIO_FN(SCIF0_CTS),
  841. GPIO_FN(SCIF0_SCK),
  842. /* SCIF1 */
  843. GPIO_FN(SCIF1_TXD),
  844. GPIO_FN(SCIF1_RXD),
  845. GPIO_FN(SCIF1_RTS),
  846. GPIO_FN(SCIF1_CTS),
  847. GPIO_FN(SCIF1_SCK),
  848. /* TPU */
  849. GPIO_FN(TPU_TO1),
  850. GPIO_FN(TPU_TO0),
  851. GPIO_FN(TPU_TI3B),
  852. GPIO_FN(TPU_TI3A),
  853. GPIO_FN(TPU_TI2B),
  854. GPIO_FN(TPU_TI2A),
  855. GPIO_FN(TPU_TO3),
  856. GPIO_FN(TPU_TO2),
  857. /* SIM */
  858. GPIO_FN(SIM_D),
  859. GPIO_FN(SIM_CLK),
  860. GPIO_FN(SIM_RST),
  861. /* MMC */
  862. GPIO_FN(MMC_DAT),
  863. GPIO_FN(MMC_CMD),
  864. GPIO_FN(MMC_CLK),
  865. GPIO_FN(MMC_VDDON),
  866. GPIO_FN(MMC_ODMOD),
  867. /* SYSC */
  868. GPIO_FN(STATUS0),
  869. GPIO_FN(STATUS1),
  870. };
  871. static struct pinmux_cfg_reg pinmux_config_regs[] = {
  872. { PINMUX_CFG_REG("PACR", 0xa4050100, 16, 2) {
  873. PTA7_FN, PTA7_OUT, PTA7_IN_PU, PTA7_IN,
  874. PTA6_FN, PTA6_OUT, PTA6_IN_PU, PTA6_IN,
  875. PTA5_FN, PTA5_OUT, PTA5_IN_PU, PTA5_IN,
  876. PTA4_FN, PTA4_OUT, PTA4_IN_PU, PTA4_IN,
  877. PTA3_FN, PTA3_OUT, PTA3_IN_PU, PTA3_IN,
  878. PTA2_FN, PTA2_OUT, PTA2_IN_PU, PTA2_IN,
  879. PTA1_FN, PTA1_OUT, PTA1_IN_PU, PTA1_IN,
  880. PTA0_FN, PTA0_OUT, PTA0_IN_PU, PTA0_IN }
  881. },
  882. { PINMUX_CFG_REG("PBCR", 0xa4050102, 16, 2) {
  883. PTB7_FN, PTB7_OUT, PTB7_IN_PU, PTB7_IN,
  884. PTB6_FN, PTB6_OUT, PTB6_IN_PU, PTB6_IN,
  885. PTB5_FN, PTB5_OUT, PTB5_IN_PU, PTB5_IN,
  886. PTB4_FN, PTB4_OUT, PTB4_IN_PU, PTB4_IN,
  887. PTB3_FN, PTB3_OUT, PTB3_IN_PU, PTB3_IN,
  888. PTB2_FN, PTB2_OUT, PTB2_IN_PU, PTB2_IN,
  889. PTB1_FN, PTB1_OUT, PTB1_IN_PU, PTB1_IN,
  890. PTB0_FN, PTB0_OUT, PTB0_IN_PU, PTB0_IN }
  891. },
  892. { PINMUX_CFG_REG("PCCR", 0xa4050104, 16, 2) {
  893. PTC7_FN, PTC7_OUT, PTC7_IN_PU, PTC7_IN,
  894. PTC6_FN, PTC6_OUT, PTC6_IN_PU, PTC6_IN,
  895. PTC5_FN, PTC5_OUT, PTC5_IN_PU, PTC5_IN,
  896. PTC4_FN, PTC4_OUT, PTC4_IN_PU, PTC4_IN,
  897. PTC3_FN, PTC3_OUT, PTC3_IN_PU, PTC3_IN,
  898. PTC2_FN, PTC2_OUT, PTC2_IN_PU, PTC2_IN,
  899. PTC1_FN, PTC1_OUT, PTC1_IN_PU, PTC1_IN,
  900. PTC0_FN, PTC0_OUT, PTC0_IN_PU, PTC0_IN }
  901. },
  902. { PINMUX_CFG_REG("PDCR", 0xa4050106, 16, 2) {
  903. PTD7_FN, PTD7_OUT, PTD7_IN_PU, PTD7_IN,
  904. PTD6_FN, PTD6_OUT, PTD6_IN_PU, PTD6_IN,
  905. PTD5_FN, PTD5_OUT, PTD5_IN_PU, PTD5_IN,
  906. PTD4_FN, PTD4_OUT, PTD4_IN_PU, PTD4_IN,
  907. PTD3_FN, PTD3_OUT, PTD3_IN_PU, PTD3_IN,
  908. PTD2_FN, PTD2_OUT, PTD2_IN_PU, PTD2_IN,
  909. PTD1_FN, PTD1_OUT, PTD1_IN_PU, PTD1_IN,
  910. PTD0_FN, PTD0_OUT, PTD0_IN_PU, PTD0_IN }
  911. },
  912. { PINMUX_CFG_REG("PECR", 0xa4050108, 16, 2) {
  913. 0, 0, 0, 0,
  914. PTE6_FN, 0, 0, PTE6_IN,
  915. PTE5_FN, 0, 0, PTE5_IN,
  916. PTE4_FN, PTE4_OUT, PTE4_IN_PU, PTE4_IN,
  917. PTE3_FN, PTE3_OUT, PTE3_IN_PU, PTE3_IN,
  918. PTE2_FN, PTE2_OUT, PTE2_IN_PU, PTE2_IN,
  919. PTE1_FN, PTE1_OUT, PTE1_IN_PU, PTE1_IN,
  920. PTE0_FN, PTE0_OUT, PTE0_IN_PU, PTE0_IN }
  921. },
  922. { PINMUX_CFG_REG("PFCR", 0xa405010a, 16, 2) {
  923. 0, 0, 0, 0,
  924. PTF6_FN, 0, 0, PTF6_IN,
  925. PTF5_FN, 0, 0, PTF5_IN,
  926. PTF4_FN, 0, 0, PTF4_IN,
  927. PTF3_FN, 0, 0, PTF3_IN,
  928. PTF2_FN, 0, 0, PTF2_IN,
  929. PTF1_FN, 0, 0, PTF1_IN,
  930. PTF0_FN, 0, 0, PTF0_IN }
  931. },
  932. { PINMUX_CFG_REG("PGCR", 0xa405010c, 16, 2) {
  933. 0, 0, 0, 0,
  934. PTG6_FN, PTG6_OUT, PTG6_IN_PU, PTG6_IN,
  935. PTG5_FN, PTG5_OUT, PTG5_IN_PU, PTG5_IN,
  936. PTG4_FN, PTG4_OUT, PTG4_IN_PU, PTG4_IN,
  937. PTG3_FN, PTG3_OUT, PTG3_IN_PU, PTG3_IN,
  938. PTG2_FN, PTG2_OUT, PTG2_IN_PU, PTG2_IN,
  939. PTG1_FN, PTG1_OUT, PTG1_IN_PU, PTG1_IN,
  940. PTG0_FN, PTG0_OUT, PTG0_IN_PU, PTG0_IN }
  941. },
  942. { PINMUX_CFG_REG("PHCR", 0xa405010e, 16, 2) {
  943. 0, 0, 0, 0,
  944. PTH6_FN, PTH6_OUT, PTH6_IN_PU, PTH6_IN,
  945. PTH5_FN, PTH5_OUT, PTH5_IN_PU, PTH5_IN,
  946. PTH4_FN, PTH4_OUT, PTH4_IN_PU, PTH4_IN,
  947. PTH3_FN, PTH3_OUT, PTH3_IN_PU, PTH3_IN,
  948. PTH2_FN, PTH2_OUT, PTH2_IN_PU, PTH2_IN,
  949. PTH1_FN, PTH1_OUT, PTH1_IN_PU, PTH1_IN,
  950. PTH0_FN, PTH0_OUT, PTH0_IN_PU, PTH0_IN }
  951. },
  952. { PINMUX_CFG_REG("PJCR", 0xa4050110, 16, 2) {
  953. 0, 0, 0, 0,
  954. PTJ6_FN, PTJ6_OUT, PTJ6_IN_PU, PTJ6_IN,
  955. PTJ5_FN, PTJ5_OUT, PTJ5_IN_PU, PTJ5_IN,
  956. PTJ4_FN, PTJ4_OUT, PTJ4_IN_PU, PTJ4_IN,
  957. PTJ3_FN, PTJ3_OUT, PTJ3_IN_PU, PTJ3_IN,
  958. PTJ2_FN, PTJ2_OUT, PTJ2_IN_PU, PTJ2_IN,
  959. PTJ1_FN, PTJ1_OUT, PTJ1_IN_PU, PTJ1_IN,
  960. PTJ0_FN, PTJ0_OUT, PTJ0_IN_PU, PTJ0_IN }
  961. },
  962. { PINMUX_CFG_REG("PKCR", 0xa4050112, 16, 2) {
  963. 0, 0, 0, 0,
  964. 0, 0, 0, 0,
  965. 0, 0, 0, 0,
  966. 0, 0, 0, 0,
  967. PTK3_FN, PTK3_OUT, PTK3_IN_PU, PTK3_IN,
  968. PTK2_FN, PTK2_OUT, PTK2_IN_PU, PTK2_IN,
  969. PTK1_FN, PTK1_OUT, PTK1_IN_PU, PTK1_IN,
  970. PTK0_FN, PTK0_OUT, PTK0_IN_PU, PTK0_IN }
  971. },
  972. { PINMUX_CFG_REG("PLCR", 0xa4050114, 16, 2) {
  973. PTL7_FN, PTL7_OUT, PTL7_IN_PU, PTL7_IN,
  974. PTL6_FN, PTL6_OUT, PTL6_IN_PU, PTL6_IN,
  975. PTL5_FN, PTL5_OUT, PTL5_IN_PU, PTL5_IN,
  976. PTL4_FN, PTL4_OUT, PTL4_IN_PU, PTL4_IN,
  977. PTL3_FN, PTL3_OUT, PTL3_IN_PU, PTL3_IN,
  978. 0, 0, 0, 0,
  979. 0, 0, 0, 0,
  980. 0, 0, 0, 0 }
  981. },
  982. { PINMUX_CFG_REG("PMCR", 0xa4050116, 16, 2) {
  983. PTM7_FN, PTM7_OUT, PTM7_IN_PU, PTM7_IN,
  984. PTM6_FN, PTM6_OUT, PTM6_IN_PU, PTM6_IN,
  985. PTM5_FN, PTM5_OUT, PTM5_IN_PU, PTM5_IN,
  986. PTM4_FN, PTM4_OUT, PTM4_IN_PU, PTM4_IN,
  987. PTM3_FN, PTM3_OUT, PTM3_IN_PU, PTM3_IN,
  988. PTM2_FN, PTM2_OUT, PTM2_IN_PU, PTM2_IN,
  989. PTM1_FN, PTM1_OUT, PTM1_IN_PU, PTM1_IN,
  990. PTM0_FN, PTM0_OUT, PTM0_IN_PU, PTM0_IN }
  991. },
  992. { PINMUX_CFG_REG("PPCR", 0xa4050118, 16, 2) {
  993. 0, 0, 0, 0,
  994. 0, 0, 0, 0,
  995. 0, 0, 0, 0,
  996. PTP4_FN, PTP4_OUT, PTP4_IN_PU, PTP4_IN,
  997. PTP3_FN, PTP3_OUT, PTP3_IN_PU, PTP3_IN,
  998. PTP2_FN, PTP2_OUT, PTP2_IN_PU, PTP2_IN,
  999. PTP1_FN, PTP1_OUT, PTP1_IN_PU, PTP1_IN,
  1000. PTP0_FN, PTP0_OUT, PTP0_IN_PU, PTP0_IN }
  1001. },
  1002. { PINMUX_CFG_REG("PRCR", 0xa405011a, 16, 2) {
  1003. PTR7_FN, PTR7_OUT, PTR7_IN_PU, PTR7_IN,
  1004. PTR6_FN, PTR6_OUT, PTR6_IN_PU, PTR6_IN,
  1005. PTR5_FN, PTR5_OUT, PTR5_IN_PU, PTR5_IN,
  1006. PTR4_FN, PTR4_OUT, PTR4_IN_PU, PTR4_IN,
  1007. PTR3_FN, PTR3_OUT, PTR3_IN_PU, PTR3_IN,
  1008. PTR2_FN, PTR2_OUT, PTR2_IN_PU, PTR2_IN,
  1009. PTR1_FN, PTR1_OUT, PTR1_IN_PU, PTR1_IN,
  1010. PTR0_FN, PTR0_OUT, PTR0_IN_PU, PTR0_IN }
  1011. },
  1012. { PINMUX_CFG_REG("PSCR", 0xa405011c, 16, 2) {
  1013. 0, 0, 0, 0,
  1014. 0, 0, 0, 0,
  1015. 0, 0, 0, 0,
  1016. PTS4_FN, PTS4_OUT, PTS4_IN_PU, PTS4_IN,
  1017. PTS3_FN, PTS3_OUT, PTS3_IN_PU, PTS3_IN,
  1018. PTS2_FN, PTS2_OUT, PTS2_IN_PU, PTS2_IN,
  1019. PTS1_FN, PTS1_OUT, PTS1_IN_PU, PTS1_IN,
  1020. PTS0_FN, PTS0_OUT, PTS0_IN_PU, PTS0_IN }
  1021. },
  1022. { PINMUX_CFG_REG("PTCR", 0xa405011e, 16, 2) {
  1023. 0, 0, 0, 0,
  1024. 0, 0, 0, 0,
  1025. 0, 0, 0, 0,
  1026. PTT4_FN, PTT4_OUT, PTT4_IN_PU, PTT4_IN,
  1027. PTT3_FN, PTT3_OUT, PTT3_IN_PU, PTT3_IN,
  1028. PTT2_FN, PTT2_OUT, PTT2_IN_PU, PTT2_IN,
  1029. PTT1_FN, PTT1_OUT, PTT1_IN_PU, PTT1_IN,
  1030. PTT0_FN, PTT0_OUT, PTT0_IN_PU, PTT0_IN }
  1031. },
  1032. { PINMUX_CFG_REG("PUCR", 0xa4050120, 16, 2) {
  1033. 0, 0, 0, 0,
  1034. 0, 0, 0, 0,
  1035. 0, 0, 0, 0,
  1036. PTU4_FN, PTU4_OUT, PTU4_IN_PU, PTU4_IN,
  1037. PTU3_FN, PTU3_OUT, PTU3_IN_PU, PTU3_IN,
  1038. PTU2_FN, PTU2_OUT, PTU2_IN_PU, PTU2_IN,
  1039. PTU1_FN, PTU1_OUT, PTU1_IN_PU, PTU1_IN,
  1040. PTU0_FN, PTU0_OUT, PTU0_IN_PU, PTU0_IN }
  1041. },
  1042. { PINMUX_CFG_REG("PVCR", 0xa4050122, 16, 2) {
  1043. 0, 0, 0, 0,
  1044. 0, 0, 0, 0,
  1045. 0, 0, 0, 0,
  1046. PTV4_FN, PTV4_OUT, PTV4_IN_PU, PTV4_IN,
  1047. PTV3_FN, PTV3_OUT, PTV3_IN_PU, PTV3_IN,
  1048. PTV2_FN, PTV2_OUT, PTV2_IN_PU, PTV2_IN,
  1049. PTV1_FN, PTV1_OUT, PTV1_IN_PU, PTV1_IN,
  1050. PTV0_FN, PTV0_OUT, PTV0_IN_PU, PTV0_IN }
  1051. },
  1052. {}
  1053. };
  1054. static struct pinmux_data_reg pinmux_data_regs[] = {
  1055. { PINMUX_DATA_REG("PADR", 0xa4050140, 8) {
  1056. PTA7_DATA, PTA6_DATA, PTA5_DATA, PTA4_DATA,
  1057. PTA3_DATA, PTA2_DATA, PTA1_DATA, PTA0_DATA }
  1058. },
  1059. { PINMUX_DATA_REG("PBDR", 0xa4050142, 8) {
  1060. PTB7_DATA, PTB6_DATA, PTB5_DATA, PTB4_DATA,
  1061. PTB3_DATA, PTB2_DATA, PTB1_DATA, PTB0_DATA }
  1062. },
  1063. { PINMUX_DATA_REG("PCDR", 0xa4050144, 8) {
  1064. PTC7_DATA, PTC6_DATA, PTC5_DATA, PTC4_DATA,
  1065. PTC3_DATA, PTC2_DATA, PTC1_DATA, PTC0_DATA }
  1066. },
  1067. { PINMUX_DATA_REG("PDDR", 0xa4050126, 8) {
  1068. PTD7_DATA, PTD6_DATA, PTD5_DATA, PTD4_DATA,
  1069. PTD3_DATA, PTD2_DATA, PTD1_DATA, PTD0_DATA }
  1070. },
  1071. { PINMUX_DATA_REG("PEDR", 0xa4050148, 8) {
  1072. 0, PTE6_DATA, PTE5_DATA, PTE4_DATA,
  1073. PTE3_DATA, PTE2_DATA, PTE1_DATA, PTE0_DATA }
  1074. },
  1075. { PINMUX_DATA_REG("PFDR", 0xa405014a, 8) {
  1076. 0, PTF6_DATA, PTF5_DATA, PTF4_DATA,
  1077. PTF3_DATA, PTF2_DATA, PTF1_DATA, PTF0_DATA }
  1078. },
  1079. { PINMUX_DATA_REG("PGDR", 0xa405014c, 8) {
  1080. 0, PTG6_DATA, PTG5_DATA, PTG4_DATA,
  1081. PTG3_DATA, PTG2_DATA, PTG1_DATA, PTG0_DATA }
  1082. },
  1083. { PINMUX_DATA_REG("PHDR", 0xa405014e, 8) {
  1084. 0, PTH6_DATA, PTH5_DATA, PTH4_DATA,
  1085. PTH3_DATA, PTH2_DATA, PTH1_DATA, PTH0_DATA }
  1086. },
  1087. { PINMUX_DATA_REG("PJDR", 0xa4050150, 8) {
  1088. 0, PTJ6_DATA, PTJ5_DATA, PTJ4_DATA,
  1089. PTJ3_DATA, PTJ2_DATA, PTJ1_DATA, PTJ0_DATA }
  1090. },
  1091. { PINMUX_DATA_REG("PKDR", 0xa4050152, 8) {
  1092. 0, 0, 0, 0,
  1093. PTK3_DATA, PTK2_DATA, PTK1_DATA, PTK0_DATA }
  1094. },
  1095. { PINMUX_DATA_REG("PLDR", 0xa4050154, 8) {
  1096. PTL7_DATA, PTL6_DATA, PTL5_DATA, PTL4_DATA,
  1097. PTL3_DATA, 0, 0, 0 }
  1098. },
  1099. { PINMUX_DATA_REG("PMDR", 0xa4050156, 8) {
  1100. PTM7_DATA, PTM6_DATA, PTM5_DATA, PTM4_DATA,
  1101. PTM3_DATA, PTM2_DATA, PTM1_DATA, PTM0_DATA }
  1102. },
  1103. { PINMUX_DATA_REG("PPDR", 0xa4050158, 8) {
  1104. 0, 0, 0, PTP4_DATA,
  1105. PTP3_DATA, PTP2_DATA, PTP1_DATA, PTP0_DATA }
  1106. },
  1107. { PINMUX_DATA_REG("PRDR", 0xa405015a, 8) {
  1108. PTR7_DATA, PTR6_DATA, PTR5_DATA, PTR4_DATA,
  1109. PTR3_DATA, PTR2_DATA, PTR1_DATA, PTR0_DATA }
  1110. },
  1111. { PINMUX_DATA_REG("PSDR", 0xa405015c, 8) {
  1112. 0, 0, 0, PTS4_DATA,
  1113. PTS3_DATA, PTS2_DATA, PTS1_DATA, PTS0_DATA }
  1114. },
  1115. { PINMUX_DATA_REG("PTDR", 0xa405015e, 8) {
  1116. 0, 0, 0, PTT4_DATA,
  1117. PTT3_DATA, PTT2_DATA, PTT1_DATA, PTT0_DATA }
  1118. },
  1119. { PINMUX_DATA_REG("PUDR", 0xa4050160, 8) {
  1120. 0, 0, 0, PTU4_DATA,
  1121. PTU3_DATA, PTU2_DATA, PTU1_DATA, PTU0_DATA }
  1122. },
  1123. { PINMUX_DATA_REG("PVDR", 0xa4050162, 8) {
  1124. 0, 0, 0, PTV4_DATA,
  1125. PTV3_DATA, PTV2_DATA, PTV1_DATA, PTV0_DATA }
  1126. },
  1127. { },
  1128. };
  1129. struct sh_pfc_soc_info sh7720_pinmux_info = {
  1130. .name = "sh7720_pfc",
  1131. .input = { PINMUX_INPUT_BEGIN, PINMUX_INPUT_END },
  1132. .input_pu = { PINMUX_INPUT_PULLUP_BEGIN, PINMUX_INPUT_PULLUP_END },
  1133. .output = { PINMUX_OUTPUT_BEGIN, PINMUX_OUTPUT_END },
  1134. .function = { PINMUX_FUNCTION_BEGIN, PINMUX_FUNCTION_END },
  1135. .gpios = pinmux_gpios,
  1136. .nr_pins = GPIO_PTV0 + 1,
  1137. .nr_gpios = ARRAY_SIZE(pinmux_gpios),
  1138. .cfg_regs = pinmux_config_regs,
  1139. .data_regs = pinmux_data_regs,
  1140. .gpio_data = pinmux_data,
  1141. .gpio_data_size = ARRAY_SIZE(pinmux_data),
  1142. };