gd_gpio.h 102 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691
  1. /*
  2. *******************************************************************************
  3. **
  4. ** \file gd_gpio.h
  5. **
  6. ** \brief General purpose input output driver.
  7. **
  8. **
  9. ** Copyright: 2012 - 2013 (C) GoKe Microelectronics ShangHai Branch
  10. **
  11. ** \attention THIS SAMPLE CODE IS PROVIDED AS IS. GOKE MICROELECTRONICS
  12. ** ACCEPTS NO RESPONSIBILITY OR LIABILITY FOR ANY ERRORS OR
  13. ** OMMISSIONS.
  14. **
  15. ** \version
  16. **
  17. *******************************************************************************
  18. */
  19. #ifndef _GD_GPIO_H_
  20. #define _GD_GPIO_H_
  21. #include <gtypes.h>
  22. #include <gmodids.h>
  23. //#include "gd_int.h"
  24. /*!
  25. *******************************************************************************
  26. **
  27. ** \brief GPIO driver error codes.
  28. **
  29. *******************************************************************************
  30. */
  31. #define GD_GPIO_ERR_BASE (GD_GPIO_MODULE_ID<<16) //!< The GPIO base error code.
  32. enum
  33. {
  34. /*!
  35. ** The GPIO is not of the right mode to to perform
  36. ** a requested function, e.g. writing to a GPIO which was
  37. ** configured as input.
  38. */
  39. GD_ERR_GPIO_INVALID_TYPE = GD_GPIO_ERR_BASE,
  40. GD_ERR_GPIO_OPEN_FAILED,
  41. };
  42. /*!
  43. *******************************************************************************
  44. **
  45. ** \brief All available GPIO pins named by number.
  46. **
  47. ** \sa GD_GPIO_Open()
  48. ** \sa GD_GPIO_OpenFunctionMode()
  49. ** \sa GD_GPIO_SetType()
  50. **
  51. *******************************************************************************
  52. */
  53. typedef enum
  54. {
  55. GD_GPIO_0 = 0, //!< Value representing GPIO 0.
  56. GD_GPIO_1 = 1, //!< Value representing GPIO 1.
  57. GD_GPIO_2 = 2, //!< Value representing GPIO 2.
  58. GD_GPIO_3 = 3, //!< Value representing GPIO 3.
  59. GD_GPIO_4 = 4, //!< Value representing GPIO 4.
  60. GD_GPIO_5 = 5, //!< Value representing GPIO 5.
  61. GD_GPIO_6 = 6, //!< Value representing GPIO 6.
  62. GD_GPIO_7 = 7, //!< Value representing GPIO 7.
  63. GD_GPIO_8 = 8, //!< Value representing GPIO 8.
  64. GD_GPIO_9 = 9, //!< Value representing GPIO 9.
  65. GD_GPIO_10 = 10, //!< Value representing GPIO 10.
  66. GD_GPIO_11 = 11, //!< Value representing GPIO 11.
  67. GD_GPIO_12 = 12, //!< Value representing GPIO 12.
  68. GD_GPIO_13 = 13, //!< Value representing GPIO 13.
  69. GD_GPIO_14 = 14, //!< Value representing GPIO 14.
  70. GD_GPIO_15 = 15, //!< Value representing GPIO 15.
  71. GD_GPIO_16 = 16, //!< Value representing GPIO 16.
  72. GD_GPIO_17 = 17, //!< Value representing GPIO 17.
  73. GD_GPIO_18 = 18, //!< Value representing GPIO 18.
  74. GD_GPIO_19 = 19, //!< Value representing GPIO 19.
  75. GD_GPIO_20 = 20, //!< Value representing GPIO 20.
  76. GD_GPIO_21 = 21, //!< Value representing GPIO 21.
  77. GD_GPIO_22 = 22, //!< Value representing GPIO 22.
  78. GD_GPIO_23 = 23, //!< Value representing GPIO 23.
  79. GD_GPIO_24 = 24, //!< Value representing GPIO 24.
  80. GD_GPIO_25 = 25, //!< Value representing GPIO 25.
  81. GD_GPIO_26 = 26, //!< Value representing GPIO 26.
  82. GD_GPIO_27 = 27, //!< Value representing GPIO 27.
  83. GD_GPIO_28 = 28, //!< Value representing GPIO 28.
  84. GD_GPIO_29 = 29, //!< Value representing GPIO 29.
  85. GD_GPIO_30 = 30, //!< Value representing GPIO 30.
  86. GD_GPIO_31 = 31, //!< Value representing GPIO 31.
  87. GD_GPIO_32 = 32, //!< Value representing GPIO 32.
  88. GD_GPIO_33 = 33, //!< Value representing GPIO 33.
  89. GD_GPIO_34 = 34, //!< Value representing GPIO 34.
  90. GD_GPIO_35 = 35, //!< Value representing GPIO 35.
  91. GD_GPIO_36 = 36, //!< Value representing GPIO 36.
  92. GD_GPIO_37 = 37, //!< Value representing GPIO 37.
  93. GD_GPIO_38 = 38, //!< Value representing GPIO 38.
  94. GD_GPIO_39 = 39, //!< Value representing GPIO 39.
  95. GD_GPIO_40 = 40, //!< Value representing GPIO 40.
  96. GD_GPIO_41 = 41, //!< Value representing GPIO 41.
  97. GD_GPIO_42 = 42, //!< Value representing GPIO 42.
  98. GD_GPIO_43 = 43, //!< Value representing GPIO 43.
  99. GD_GPIO_44 = 44, //!< Value representing GPIO 44.
  100. GD_GPIO_45 = 45, //!< Value representing GPIO 45.
  101. GD_GPIO_46 = 46, //!< Value representing GPIO 46.
  102. GD_GPIO_47 = 47, //!< Value representing GPIO 47.
  103. GD_GPIO_48 = 48, //!< Value representing GPIO 48.
  104. GD_GPIO_49 = 49, //!< Value representing GPIO 49.
  105. GD_GPIO_50 = 50, //!< Value representing GPIO 50.
  106. GD_GPIO_51 = 51, //!< Value representing GPIO 51.
  107. GD_GPIO_52 = 52, //!< Value representing GPIO 52.
  108. GD_GPIO_53 = 53, //!< Value representing GPIO 53.
  109. GD_GPIO_54 = 54, //!< Value representing GPIO 54.
  110. GD_GPIO_55 = 55, //!< Value representing GPIO 55.
  111. GD_GPIO_56 = 56, //!< Value representing GPIO 56.
  112. GD_GPIO_57 = 57, //!< Value representing GPIO 57.
  113. GD_GPIO_58 = 58, //!< Value representing GPIO 58.
  114. GD_GPIO_59 = 59, //!< Value representing GPIO 59.
  115. GD_GPIO_60 = 60, //!< Value representing GPIO 60.
  116. GD_GPIO_61 = 61, //!< Value representing GPIO 61.
  117. GD_GPIO_62 = 62, //!< Value representing GPIO 62.
  118. GD_GPIO_63 = 63, //!< Value representing GPIO 63.
  119. GD_GPIO_NUM,
  120. }GD_GPIO_PIN_E;;
  121. /*!
  122. *******************************************************************************
  123. **
  124. ** \brief GPIO types.
  125. ** \high 30-31:00:unused; 01: in; 10:out; 11:in & out.
  126. ** \[ 7: 0]: OUTPUT_CFG out_sel
  127. ** \ 0x00: tied to 1¡¯b0, always output 0
  128. ** \ 0x01: tied to 1¡¯b1, always output 1
  129. ** \ 0x02~0x3f: data inputs from internal modules
  130. ** \[15: 8]: INPUT_CFG in_sel
  131. ** \ 0x00: tied to 1¡¯b0, module¡¯s input is always 0
  132. ** \ 0x01: tied to 1¡¯b1, module¡¯s input is always 1
  133. ** \ 0x02~0x3f: mux selection(gpio_input[61:0])
  134. ** \[21:16]: OUTPUT_CFG oen_sel
  135. ** \ 0x00: tied to 1¡¯b0, always output
  136. ** \ 0x01: tied to 1¡¯b1, always input
  137. ** \ 0x02~0x3f: oen inputs from internal modules
  138. ** \[22:22]: out_invert
  139. ** \[23:23]: oen_invert
  140. ** \[29:24]: IOCTRL
  141. ** \ [25:24]: 0=2mA,1=4mA,2=8mA,3=12mA
  142. ** \ [29:28]: tied to 1¡¯b0, always output
  143. **
  144. ** \sa GD_GPIO_SetType()
  145. ** \sa GD_GPIO_Open()
  146. **
  147. *******************************************************************************
  148. */
  149. #define GD_GPIO_OUT_SEL(n) ((n))
  150. #define GD_GPIO_IN_SEL(n) ((n)<<8)
  151. #define GD_GPIO_OEN_SEL(n) ((n)<<16)
  152. #define GD_GPIO_OUT_INVERT(n) ((n)<<22)
  153. #define GD_GPIO_OEN_INVERT(n) ((n)<<23)
  154. #define GD_GPIO_IOCTRL(n) ((n)<<24)
  155. #define GD_GPIO_FUNC(n) ((n)<<30)
  156. #define GD_GPIO_GET_OUT_SEL(n) (((n)&0x000000FF))
  157. #define GD_GPIO_GET_IN_SEL(n) (((n)&0x0000FF00)>>8)
  158. #define GD_GPIO_GET_OEN_SEL(n) (((n)&0x003F0000)>>16)
  159. #define GD_GPIO_GET_OUT_INVERT(n) (((n)&0x00400000)>>22)
  160. #define GD_GPIO_GET_OEN_INVERT(n) (((n)&0x00800000)>>23)
  161. #define GD_GPIO_GET_IOCTRL(n) (((n)&0x3F000000)>>24)
  162. #define GD_GPIO_GET_FUNC(n) (((n)&0xC0000000)>>30)
  163. #define GD_GPIO_FUNC_IN 1
  164. #define GD_GPIO_FUNC_OUT 2
  165. #define GD_GPIO_FUNC_INOUT 3
  166. #define IOCTRL_NORMAL 0x00 //!< Hi-z
  167. #define IOCTRL_PULL_UP 0x10 //!< PULL_UP
  168. #define IOCTRL_PULL_DOWN 0x20 //!< PULL_DOWN
  169. #define IOCTRL_REPEAT 0x30 //!< REPEAT
  170. #define IOCTRL_2MA 0x00 //!< 2mA
  171. #define IOCTRL_4MA 0x01 //!< 4mA
  172. #define IOCTRL_8MA 0x02 //!< 8mA
  173. #define IOCTRL_12MA 0x03 //!< 12mA
  174. #ifndef BOARD_FPGA
  175. typedef enum
  176. {
  177. /* ----------------------------------- GPIO output function define ----------------------------------- */
  178. GD_GPIO_TYPE_OUTPUT_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 0), //!< Output type: value = 0
  179. GD_GPIO_TYPE_OUTPUT_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 1), //!< Output type: value = 1
  180. GD_GPIO_TYPE_OUTPUT_SPI1_SO = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 2) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 2), //!< Output type: tssi_txd
  181. GD_GPIO_TYPE_OUTPUT_SPI1_CS0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 3), //!< Output type: tssi_cs0_n
  182. GD_GPIO_TYPE_OUTPUT_SPI1_SCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 4), //!< Output type: tssi_sclk_out
  183. GD_GPIO_TYPE_OUTPUT_UART2_RTS_N = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 5), //!< Output type: uart2_rts_n
  184. GD_GPIO_TYPE_OUTPUT_UART2_DTR_N = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 6), //!< Output type: uart2_dtr_n
  185. GD_GPIO_TYPE_OUTPUT_UART2_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 7), //!< Output type: uart2_tx
  186. GD_GPIO_TYPE_OUTPUT_UART1_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 8), //!< Output type: uart1_tx
  187. GD_GPIO_TYPE_OUTPUT_UART0_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 9), //!< Output type: uart0_tx
  188. GD_GPIO_TYPE_OUTPUT_PWM3_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(10), //!< Output type: pwm3_out
  189. GD_GPIO_TYPE_OUTPUT_PWM2_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(11), //!< Output type: pwm2_out
  190. GD_GPIO_TYPE_OUTPUT_PWM1_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(12), //!< Output type: pwm1_out
  191. GD_GPIO_TYPE_OUTPUT_PWM0_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(13), //!< Output type: pwm0_out
  192. GD_GPIO_TYPE_OUTPUT_SPI0_SO = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 7) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(14), //!< Output type: ssi_txd
  193. GD_GPIO_TYPE_OUTPUT_SPI0_CS7 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(15), //!< Output type: ssi_cs7_n
  194. GD_GPIO_TYPE_OUTPUT_SPI0_CS6 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(16), //!< Output type: ssi_cs6_n
  195. GD_GPIO_TYPE_OUTPUT_SPI0_CS5 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(17), //!< Output type: ssi_cs5_n
  196. GD_GPIO_TYPE_OUTPUT_SPI0_CS4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(18), //!< Output type: ssi_cs4_n
  197. GD_GPIO_TYPE_OUTPUT_SPI0_CS1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(19), //!< Output type: ssi_cs1_n
  198. GD_GPIO_TYPE_OUTPUT_SPI0_CS0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(20), //!< Output type: ssi_cs0_n
  199. GD_GPIO_TYPE_OUTPUT_SPI0_SCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(21), //!< Output type: ssi_sclk_out
  200. //GD_GPIO_TYPE_INOUT_SD_DATA_0 GD_GPIO_OEN_SEL( 8) GD_GPIO_OUT_SEL(22)
  201. //GD_GPIO_TYPE_INOUT_SD_DATA_1 GD_GPIO_OEN_SEL( 9) GD_GPIO_OUT_SEL(23)
  202. //GD_GPIO_TYPE_INOUT_SD_DATA_2 GD_GPIO_OEN_SEL(10) GD_GPIO_OUT_SEL(24)
  203. //GD_GPIO_TYPE_INOUT_SD_DATA_3 GD_GPIO_OEN_SEL(11) GD_GPIO_OUT_SEL(25)
  204. //GD_GPIO_TYPE_INOUT_SD_DATA_4 GD_GPIO_OEN_SEL(12) GD_GPIO_OUT_SEL(26)
  205. //GD_GPIO_TYPE_INOUT_SD_DATA_5 GD_GPIO_OEN_SEL(13) GD_GPIO_OUT_SEL(27)
  206. //GD_GPIO_TYPE_INOUT_SD_DATA_6 GD_GPIO_OEN_SEL(14) GD_GPIO_OUT_SEL(28)
  207. //GD_GPIO_TYPE_INOUT_SD_DATA_7 GD_GPIO_OEN_SEL(15) GD_GPIO_OUT_SEL(29)
  208. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_OEN_SEL(16) GD_GPIO_OUT_SEL(30)
  209. GD_GPIO_TYPE_OUTPUT_SDIO_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_4MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(31), //!< Output type: sd_clk_sdcard
  210. GD_GPIO_TYPE_OUTPUT_AOMCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(32), //!< Output type: i2s_au_clk
  211. GD_GPIO_TYPE_OUTPUT_AOBCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(17) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(33), //!< Output type: i2s_clk_o
  212. GD_GPIO_TYPE_OUTPUT_AOLRCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(18) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(34), //!< Output type: i2s_ws_o
  213. GD_GPIO_TYPE_OUTPUT_AO_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(35), //!< Output type: i2s_so
  214. GD_GPIO_TYPE_OUTPUT_SF_CS0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(36), //!< Output type: sf_cs0_n
  215. GD_GPIO_TYPE_OUTPUT_SF_CS1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(37), //!< Output type: sf_cs1_n
  216. GD_GPIO_TYPE_OUTPUT_EPHY_LED_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(38), //!< Output type: ephy_led[0] hcd ok
  217. GD_GPIO_TYPE_OUTPUT_EPHY_LED_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(39), //!< Output type: ephy_led[1] duplex
  218. GD_GPIO_TYPE_OUTPUT_EPHY_LED_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(40), //!< Output type: ephy_led[2] 10M CRS out
  219. GD_GPIO_TYPE_OUTPUT_EPHY_LED_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(41), //!< Output type: ephy_led[3] 100M CRS out
  220. GD_GPIO_TYPE_OUTPUT_EPHY_LED_4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(42), //!< Output type: ephy_led[4] clo gs
  221. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(43), //!< Output type: enet_phy_txd[0]
  222. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(44), //!< Output type: enet_phy_txd[1]
  223. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(45), //!< Output type: enet_phy_txd[2]
  224. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(46), //!< Output type: enet_phy_txd[3]
  225. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXER = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(47), //!< Output type: enet_phy_txer
  226. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXEN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(48), //!< Output type: enet_phy_txen
  227. // GD_GPIO_TYPE_INOUT_ETH_MDIO GD_GPIO_OUT_SEL(49)
  228. GD_GPIO_TYPE_OUTPUT_ENET_GMII_MDC_O = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(50), //!< Output type: enet_gmii_mdc_o
  229. //GD_GPIO_TYPE_INOUT_SD1_DATA_0 GD_GPIO_OEN_SEL(20) GD_GPIO_OUT_SEL(51)
  230. //GD_GPIO_TYPE_INOUT_SD1_DATA_1 GD_GPIO_OEN_SEL(21) GD_GPIO_OUT_SEL(52)
  231. //GD_GPIO_TYPE_INOUT_SD1_DATA_2 GD_GPIO_OEN_SEL(22) GD_GPIO_OUT_SEL(53)
  232. //GD_GPIO_TYPE_INOUT_SD1_DATA_3 GD_GPIO_OEN_SEL(23) GD_GPIO_OUT_SEL(54)
  233. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_OEN_SEL(24) GD_GPIO_OUT_SEL(55)
  234. GD_GPIO_TYPE_OUTPUT_SDIO1_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_4MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(56), //!< Output type: sd2_clk_sdcard
  235. GD_GPIO_TYPE_OUTPUT_JTAGE_TDO = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(57), //!< Output type: jtag_tdout
  236. GD_GPIO_TYPE_OUTPUT_VD_VSYNC = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(58), //!< Output type: lcd_vsync
  237. GD_GPIO_TYPE_OUTPUT_VD_HSYNC = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(59), //!< Output type: lcd_hsync
  238. GD_GPIO_TYPE_OUTPUT_VD_CLOCK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(60), //!< Output type: lcd_dclk
  239. GD_GPIO_TYPE_OUTPUT_VD_HVLD = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(61), //!< Output type: lcd_hvld
  240. GD_GPIO_TYPE_OUTPUT_VD_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(62), //!< Output type: lcd_data0
  241. GD_GPIO_TYPE_OUTPUT_VD_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(63), //!< Output type: lcd_data1
  242. GD_GPIO_TYPE_OUTPUT_VD_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(64), //!< Output type: lcd_data2
  243. GD_GPIO_TYPE_OUTPUT_VD_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(65), //!< Output type: lcd_data3
  244. GD_GPIO_TYPE_OUTPUT_VD_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(66), //!< Output type: lcd_data4
  245. GD_GPIO_TYPE_OUTPUT_VD_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(67), //!< Output type: lcd_data5
  246. GD_GPIO_TYPE_OUTPUT_VD_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(68), //!< Output type: lcd_data6
  247. GD_GPIO_TYPE_OUTPUT_VD_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(69), //!< Output type: lcd_data7
  248. GD_GPIO_TYPE_OUTPUT_VD_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(70), //!< Output type: lcd_data8
  249. GD_GPIO_TYPE_OUTPUT_VD_DATA9 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(71), //!< Output type: lcd_data9
  250. GD_GPIO_TYPE_OUTPUT_VD_DATA10 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(72), //!< Output type: lcd_data10
  251. GD_GPIO_TYPE_OUTPUT_VD_DATA11 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(73), //!< Output type: lcd_data11
  252. GD_GPIO_TYPE_OUTPUT_VD_DATA12 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(74), //!< Output type: lcd_data12
  253. GD_GPIO_TYPE_OUTPUT_VD_DATA13 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(75), //!< Output type: lcd_data13
  254. GD_GPIO_TYPE_OUTPUT_VD_DATA14 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(76), //!< Output type: lcd_data14
  255. GD_GPIO_TYPE_OUTPUT_VD_DATA15 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(77), //!< Output type: lcd_data15
  256. GD_GPIO_TYPE_OUTPUT_VD_DATA16 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(78), //!< Output type: lcd_data16
  257. GD_GPIO_TYPE_OUTPUT_VD_DATA17 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(79), //!< Output type: lcd_data17
  258. GD_GPIO_TYPE_OUTPUT_VD_DATA18 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(80), //!< Output type: lcd_data18
  259. GD_GPIO_TYPE_OUTPUT_VD_DATA19 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(81), //!< Output type: lcd_data19
  260. GD_GPIO_TYPE_OUTPUT_VD_DATA20 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(82), //!< Output type: lcd_data20
  261. GD_GPIO_TYPE_OUTPUT_VD_DATA21 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(83), //!< Output type: lcd_data21
  262. GD_GPIO_TYPE_OUTPUT_VD_DATA22 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(84), //!< Output type: lcd_data22
  263. GD_GPIO_TYPE_OUTPUT_VD_DATA23 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(85), //!< Output type: lcd_data23
  264. GD_GPIO_TYPE_OUTPUT_RCT_CLK_OUT2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(86), //!< Output type: rct_clk_out2
  265. GD_GPIO_TYPE_OUTPUT_RCT_CLK_OUT1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(87), //!< Output type: rct_clk_out1
  266. GD_GPIO_TYPE_OUTPUT_I80_LCD_RST = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(88),//!< Output type: i80_lcd_rst
  267. GD_GPIO_TYPE_OUTPUT_I80_RDN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(89),//!< Output type: i80_rdn
  268. GD_GPIO_TYPE_OUTPUT_I80_WRN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(90),//!< Output type: i80_wrn
  269. GD_GPIO_TYPE_OUTPUT_I80_DCX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(91),//!< Output type: i80_dcx
  270. GD_GPIO_TYPE_OUTPUT_I80_CSN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(92),//!< Output type: i80_csn
  271. GD_GPIO_TYPE_OUTPUT_I80_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(93),//!< Output type: i80_data_tx0
  272. GD_GPIO_TYPE_OUTPUT_I80_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(94),//!< Output type: i80_data_tx1
  273. GD_GPIO_TYPE_OUTPUT_I80_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(95),//!< Output type: i80_data_tx2
  274. GD_GPIO_TYPE_OUTPUT_I80_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(96),//!< Output type: i80_data_tx3
  275. GD_GPIO_TYPE_OUTPUT_I80_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(97),//!< Output type: i80_data_tx4
  276. GD_GPIO_TYPE_OUTPUT_I80_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(98),//!< Output type: i80_data_tx5
  277. GD_GPIO_TYPE_OUTPUT_I80_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(99),//!< Output type: i80_data_tx6
  278. GD_GPIO_TYPE_OUTPUT_I80_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(100),//!< Output type: i80_data_tx7
  279. GD_GPIO_TYPE_OUTPUT_I80_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(101),//!< Output type: i80_data_tx8
  280. GD_GPIO_TYPE_OUTPUT_PWM7_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(102), //!< Output type: pwm7_out
  281. GD_GPIO_TYPE_OUTPUT_PWM6_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(103), //!< Output type: pwm6_out
  282. GD_GPIO_TYPE_OUTPUT_PWM5_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(104), //!< Output type: pwm5_out
  283. GD_GPIO_TYPE_OUTPUT_PWM4_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(105), //!< Output type: pwm4_out
  284. /* GD_GPIO_TYPE_OUTPUT_RCT_CLK_OUT2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(78), //!< Output type: rct_clk_out2
  285. GD_GPIO_TYPE_OUTPUT_RCT_CLK_OUT1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(79), //!< Output type: rct_clk_out1
  286. GD_GPIO_TYPE_OUTPUT_I80_LCD_RST = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(80),//!< Output type: i80_lcd_rst
  287. GD_GPIO_TYPE_OUTPUT_I80_RDN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(81),//!< Output type: i80_rdn
  288. GD_GPIO_TYPE_OUTPUT_I80_WRN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(82),//!< Output type: i80_wrn
  289. GD_GPIO_TYPE_OUTPUT_I80_DCX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(83),//!< Output type: i80_dcx
  290. GD_GPIO_TYPE_OUTPUT_I80_CSN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(84),//!< Output type: i80_csn
  291. GD_GPIO_TYPE_OUTPUT_I80_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(85),//!< Output type: i80_data_tx0
  292. GD_GPIO_TYPE_OUTPUT_I80_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(86),//!< Output type: i80_data_tx1
  293. GD_GPIO_TYPE_OUTPUT_I80_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(87),//!< Output type: i80_data_tx2
  294. GD_GPIO_TYPE_OUTPUT_I80_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(88),//!< Output type: i80_data_tx3
  295. GD_GPIO_TYPE_OUTPUT_I80_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(89),//!< Output type: i80_data_tx4
  296. GD_GPIO_TYPE_OUTPUT_I80_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(90),//!< Output type: i80_data_tx5
  297. GD_GPIO_TYPE_OUTPUT_I80_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(91),//!< Output type: i80_data_tx6
  298. GD_GPIO_TYPE_OUTPUT_I80_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(92),//!< Output type: i80_data_tx7
  299. GD_GPIO_TYPE_OUTPUT_I80_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(93),//!< Output type: i80_data_tx8
  300. GD_GPIO_TYPE_OUTPUT_PWM7_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(94), //!< Output type: pwm7_out
  301. GD_GPIO_TYPE_OUTPUT_PWM6_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(95), //!< Output type: pwm6_out
  302. GD_GPIO_TYPE_OUTPUT_PWM5_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(96), //!< Output type: pwm5_out
  303. GD_GPIO_TYPE_OUTPUT_PWM4_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(97), //!< Output type: pwm4_out
  304. */
  305. /* ----------------------------------- GPIO input function define ----------------------------------------------------------------------------------------------------------- */
  306. GD_GPIO_TYPE_INPUT_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 0), //!< Input type: normal input
  307. GD_GPIO_TYPE_INPUT_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL( 1) | GD_GPIO_OUT_SEL( 0), //!< Input type: normal input
  308. GD_GPIO_TYPE_INPUT_SPI1_SI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 0) | GD_GPIO_OUT_SEL( 0), //!< Input type: tssi_rxd
  309. //GD_GPIO_TYPE_INOUT_I2C_DATA GD_GPIO_IN_SEL(2+ 1)
  310. //GD_GPIO_TYPE_INOUT_I2C_CLK GD_GPIO_IN_SEL(2+ 2)
  311. //GD_GPIO_TYPE_INOUT_I2C_DATA2 GD_GPIO_IN_SEL(2+ 3)
  312. //GD_GPIO_TYPE_INOUT_I2C_CLK2 GD_GPIO_IN_SEL(2+ 4)
  313. GD_GPIO_TYPE_INPUT_UART2_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 5) | GD_GPIO_OUT_SEL( 0), //!< Input type: uart2_rx
  314. GD_GPIO_TYPE_INPUT_UART1_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 6) | GD_GPIO_OUT_SEL( 0), //!< Input type: uart1_rx
  315. GD_GPIO_TYPE_INPUT_UART0_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 7) | GD_GPIO_OUT_SEL( 0), //!< Input type: uart0_rx
  316. GD_GPIO_TYPE_INPUT_TIMER1_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 8) | GD_GPIO_OUT_SEL( 0), //!< Input type: timer1_clk
  317. GD_GPIO_TYPE_INPUT_TIMER2_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 9) | GD_GPIO_OUT_SEL( 0), //!< Input type: timer2_clk
  318. GD_GPIO_TYPE_INPUT_TIMER3_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+10) | GD_GPIO_OUT_SEL( 0), //!< Input type: timer3_clk
  319. GD_GPIO_TYPE_INPUT_SPI0_SI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+11) | GD_GPIO_OUT_SEL( 0), //!< Input type: ssi_rxd
  320. GD_GPIO_TYPE_INPUT_SD_WP_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+12) | GD_GPIO_OUT_SEL( 0), //!< Input type: sd_wp_n
  321. GD_GPIO_TYPE_INPUT_SD_CD_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+13) | GD_GPIO_OUT_SEL( 0), //!< Input type: sd_cd_n
  322. //GD_GPIO_TYPE_INOUT_SD_DATA_0 GD_GPIO_IN_SEL(2+14)
  323. //GD_GPIO_TYPE_INOUT_SD_DATA_1 GD_GPIO_IN_SEL(2+15)
  324. //GD_GPIO_TYPE_INOUT_SD_DATA_2 GD_GPIO_IN_SEL(2+16)
  325. //GD_GPIO_TYPE_INOUT_SD_DATA_3 GD_GPIO_IN_SEL(2+17)
  326. //GD_GPIO_TYPE_INOUT_SD_DATA_4 GD_GPIO_IN_SEL(2+18)
  327. //GD_GPIO_TYPE_INOUT_SD_DATA_5 GD_GPIO_IN_SEL(2+19)
  328. //GD_GPIO_TYPE_INOUT_SD_DATA_6 GD_GPIO_IN_SEL(2+20)
  329. //GD_GPIO_TYPE_INOUT_SD_DATA_7 GD_GPIO_IN_SEL(2+21)
  330. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_IN_SEL(2+22)
  331. GD_GPIO_TYPE_INPUT_I2S_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+23) | GD_GPIO_OUT_SEL( 0), //!< Input type: i2s_clk
  332. GD_GPIO_TYPE_INPUT_I2S_WS = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+24) | GD_GPIO_OUT_SEL( 0), //!< Input type: i2s_ws
  333. GD_GPIO_TYPE_INPUT_I2S_SI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+25) | GD_GPIO_OUT_SEL( 0), //!< Input type: i2s_si
  334. GD_GPIO_TYPE_INPUT_CLK_AU = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+26) | GD_GPIO_OUT_SEL( 0), //!< Input type: clk_au
  335. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+27) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_rxd[0]
  336. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+28) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_rxd[1]
  337. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+29) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_rxd[2]
  338. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+30) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_rxd[3]
  339. GD_GPIO_TYPE_INPUT_ENET_PHY_COL = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+31) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_col
  340. GD_GPIO_TYPE_INPUT_ENET_PHY_CRS = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+32) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_crs
  341. GD_GPIO_TYPE_INPUT_ENET_PHY_RXER = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+33) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_rxer
  342. GD_GPIO_TYPE_INPUT_ENET_PHY_RXDV = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+34) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_phy_rxdv
  343. // GD_GPIO_TYPE_INOUT_ETH_MDIO GD_GPIO_IN_SEL(2+35)
  344. GD_GPIO_TYPE_INPUT_ENET_CLK_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+36) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_clk_rx
  345. GD_GPIO_TYPE_INPUT_ENET_CLK_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+37) | GD_GPIO_OUT_SEL( 0), //!< Input type: enet_clk_tx
  346. GD_GPIO_TYPE_INPUT_SD1_WP_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+38) | GD_GPIO_OUT_SEL( 0), //!< Input type: sd2_wp_n
  347. GD_GPIO_TYPE_INPUT_SD1_CD_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+39) | GD_GPIO_OUT_SEL( 0), //!< Input type: sd2_cd_n
  348. //GD_GPIO_TYPE_INOUT_SD_DATA_0 GD_GPIO_IN_SEL(2+40)
  349. //GD_GPIO_TYPE_INOUT_SD_DATA_1 GD_GPIO_IN_SEL(2+41)
  350. //GD_GPIO_TYPE_INOUT_SD_DATA_2 GD_GPIO_IN_SEL(2+42)
  351. //GD_GPIO_TYPE_INOUT_SD_DATA_3 GD_GPIO_IN_SEL(2+43)
  352. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_IN_SEL(2+44)
  353. GD_GPIO_TYPE_INPUT_I80_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+45) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx0
  354. GD_GPIO_TYPE_INPUT_I80_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+46) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx1
  355. GD_GPIO_TYPE_INPUT_I80_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+47) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx2
  356. GD_GPIO_TYPE_INPUT_I80_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+48) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx3
  357. GD_GPIO_TYPE_INPUT_I80_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+49) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx4
  358. GD_GPIO_TYPE_INPUT_I80_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+50) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx5
  359. GD_GPIO_TYPE_INPUT_I80_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+51) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx6
  360. GD_GPIO_TYPE_INPUT_I80_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+52) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx7
  361. GD_GPIO_TYPE_INPUT_I80_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+53) | GD_GPIO_OUT_SEL( 0),//!< Input type: i80_data_rx8
  362. GD_GPIO_TYPE_INPUT_JTAG_TRSTN = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+56) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_trstn
  363. GD_GPIO_TYPE_INPUT_JTAG_TCK = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+57) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_tck
  364. GD_GPIO_TYPE_INPUT_JTAG_TMS = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+58) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_tms
  365. GD_GPIO_TYPE_INPUT_JTAG_TDI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+59) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_tdi
  366. /* ----------------------------------- GPIO input&&output function define --------------------------------------------------------------------------------------------------- */
  367. GD_GPIO_TYPE_INOUT_I2C_DATA = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 3) | GD_GPIO_IN_SEL(2+ 1) | GD_GPIO_OUT_SEL( 0), //!< Input/Output type: i2c_sda
  368. GD_GPIO_TYPE_INOUT_I2C_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 4) | GD_GPIO_IN_SEL(2+ 2) | GD_GPIO_OUT_SEL( 0), //!< Input/Output type: i2c_scl
  369. GD_GPIO_TYPE_INOUT_I2C_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 5) | GD_GPIO_IN_SEL(2+ 3) | GD_GPIO_OUT_SEL( 0), //!< Input/Output type: i2c_sda2
  370. GD_GPIO_TYPE_INOUT_I2C_CLK2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 6) | GD_GPIO_IN_SEL(2+ 4) | GD_GPIO_OUT_SEL( 0), //!< Input/Output type: i2c_scl2
  371. GD_GPIO_TYPE_INOUT_ETH_MDIO = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(19) | GD_GPIO_IN_SEL(2+35) | GD_GPIO_OUT_SEL(49), //!< Input/Output type: enet_gmii_mdi/enet_gmii_mod_o
  372. GD_GPIO_TYPE_INOUT_SD_DATA_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 8) | GD_GPIO_IN_SEL(2+14) | GD_GPIO_OUT_SEL(22), //!< Input/Output type: sd_data_out[0]
  373. GD_GPIO_TYPE_INOUT_SD_DATA_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 9) | GD_GPIO_IN_SEL(2+15) | GD_GPIO_OUT_SEL(23), //!< Input/Output type: sd_data_out[1]
  374. GD_GPIO_TYPE_INOUT_SD_DATA_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(10) | GD_GPIO_IN_SEL(2+16) | GD_GPIO_OUT_SEL(24), //!< Input/Output type: sd_data_out[2]
  375. GD_GPIO_TYPE_INOUT_SD_DATA_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(11) | GD_GPIO_IN_SEL(2+17) | GD_GPIO_OUT_SEL(25), //!< Input/Output type: sd_data_out[3]
  376. GD_GPIO_TYPE_INOUT_SD_DATA_4 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(12) | GD_GPIO_IN_SEL(2+18) | GD_GPIO_OUT_SEL(26), //!< Input/Output type: sd_data_out[4]
  377. GD_GPIO_TYPE_INOUT_SD_DATA_5 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(13) | GD_GPIO_IN_SEL(2+19) | GD_GPIO_OUT_SEL(27), //!< Input/Output type: sd_data_out[5]
  378. GD_GPIO_TYPE_INOUT_SD_DATA_6 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(14) | GD_GPIO_IN_SEL(2+20) | GD_GPIO_OUT_SEL(28), //!< Input/Output type: sd_data_out[6]
  379. GD_GPIO_TYPE_INOUT_SD_DATA_7 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(15) | GD_GPIO_IN_SEL(2+21) | GD_GPIO_OUT_SEL(29), //!< Input/Output type: sd_data_out[7]
  380. GD_GPIO_TYPE_INOUT_SD_CMD = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(16) | GD_GPIO_IN_SEL(2+22) | GD_GPIO_OUT_SEL(30), //!< Input/Output : sd_cmd
  381. GD_GPIO_TYPE_INOUT_SD1_DATA_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(20) | GD_GPIO_IN_SEL(2+40) | GD_GPIO_OUT_SEL(51), //!< Input/Output type: sd2_data_out[0]
  382. GD_GPIO_TYPE_INOUT_SD1_DATA_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(21) | GD_GPIO_IN_SEL(2+41) | GD_GPIO_OUT_SEL(52), //!< Input/Output type: sd2_data_out[1]
  383. GD_GPIO_TYPE_INOUT_SD1_DATA_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(22) | GD_GPIO_IN_SEL(2+42) | GD_GPIO_OUT_SEL(53), //!< Input/Output type: sd2_data_out[2]
  384. GD_GPIO_TYPE_INOUT_SD1_DATA_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(23) | GD_GPIO_IN_SEL(2+43) | GD_GPIO_OUT_SEL(54), //!< Input/Output type: sd2_data_out[3]
  385. GD_GPIO_TYPE_INOUT_SD1_CMD = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(24) | GD_GPIO_IN_SEL(2+44) | GD_GPIO_OUT_SEL(55), //!< Input/Output : sd2_cmd
  386. /* GD_GPIO_TYPE_INOUT_I80_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+45) | GD_GPIO_OUT_SEL( 85),//!< Input/Output type: i80_data_rx0
  387. GD_GPIO_TYPE_INOUT_I80_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+46) | GD_GPIO_OUT_SEL( 86),//!< Input/Output type: i80_data_rx1
  388. GD_GPIO_TYPE_INOUT_I80_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+47) | GD_GPIO_OUT_SEL( 87),//!< Input/Output type: i80_data_rx2
  389. GD_GPIO_TYPE_INOUT_I80_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+48) | GD_GPIO_OUT_SEL( 88),//!< Input/Output type: i80_data_rx3
  390. GD_GPIO_TYPE_INOUT_I80_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+49) | GD_GPIO_OUT_SEL( 89),//!< Input/Output type: i80_data_rx4
  391. GD_GPIO_TYPE_INOUT_I80_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+50) | GD_GPIO_OUT_SEL( 90),//!< Input/Output type: i80_data_rx5
  392. GD_GPIO_TYPE_INOUT_I80_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+51) | GD_GPIO_OUT_SEL( 91),//!< Input/Output type: i80_data_rx6
  393. GD_GPIO_TYPE_INOUT_I80_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+52) | GD_GPIO_OUT_SEL( 92),//!< Input/Output type: i80_data_rx7
  394. GD_GPIO_TYPE_INOUT_I80_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+53) | GD_GPIO_OUT_SEL( 93),//!< Input/Output type: i80_data_rx8
  395. */
  396. GD_GPIO_TYPE_INOUT_I80_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+45) | GD_GPIO_OUT_SEL( 93),//!< Input/Output type: i80_data_rx0
  397. GD_GPIO_TYPE_INOUT_I80_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+46) | GD_GPIO_OUT_SEL( 94),//!< Input/Output type: i80_data_rx1
  398. GD_GPIO_TYPE_INOUT_I80_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+47) | GD_GPIO_OUT_SEL( 95),//!< Input/Output type: i80_data_rx2
  399. GD_GPIO_TYPE_INOUT_I80_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+48) | GD_GPIO_OUT_SEL( 96),//!< Input/Output type: i80_data_rx3
  400. GD_GPIO_TYPE_INOUT_I80_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+49) | GD_GPIO_OUT_SEL( 97),//!< Input/Output type: i80_data_rx4
  401. GD_GPIO_TYPE_INOUT_I80_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+50) | GD_GPIO_OUT_SEL( 98),//!< Input/Output type: i80_data_rx5
  402. GD_GPIO_TYPE_INOUT_I80_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+51) | GD_GPIO_OUT_SEL( 99),//!< Input/Output type: i80_data_rx6
  403. GD_GPIO_TYPE_INOUT_I80_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+52) | GD_GPIO_OUT_SEL( 100),//!< Input/Output type: i80_data_rx7
  404. GD_GPIO_TYPE_INOUT_I80_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 25) | GD_GPIO_IN_SEL(2+53) | GD_GPIO_OUT_SEL( 101),//!< Input/Output type: i80_data_rx8
  405. GD_GPIO_TYPE_UNDEFINED = 0,
  406. } GD_GPIO_TYPE_E;
  407. #else
  408. typedef enum
  409. {
  410. /* ----------------------------------- GPIO output function define ----------------------------------- */
  411. GD_GPIO_TYPE_OUTPUT_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 0),//!< Output type: value = 0
  412. GD_GPIO_TYPE_OUTPUT_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 1),//!< Output type: value = 1
  413. GD_GPIO_TYPE_OUTPUT_SPI1_SO = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 2) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 2),//!< Output type: tssi_txd
  414. GD_GPIO_TYPE_OUTPUT_SPI1_CS0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 3),//!< Output type: tssi_cs0_n
  415. GD_GPIO_TYPE_OUTPUT_SPI1_SCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 4),//!< Output type: tssi_sclk_out
  416. GD_GPIO_TYPE_OUTPUT_UART2_RTS_N = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 5),//!< Output type: uart2_rts_n
  417. GD_GPIO_TYPE_OUTPUT_UART2_DTR_N = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 6),//!< Output type: uart2_dtr_n
  418. GD_GPIO_TYPE_OUTPUT_UART2_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 7),//!< Output type: uart2_tx
  419. GD_GPIO_TYPE_OUTPUT_UART1_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 8),//!< Output type: uart1_tx
  420. GD_GPIO_TYPE_OUTPUT_UART0_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 9),//!< Output type: uart0_tx
  421. GD_GPIO_TYPE_OUTPUT_PWM3_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(10),//!< Output type: pwm3_out
  422. GD_GPIO_TYPE_OUTPUT_PWM2_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(11),//!< Output type: pwm2_out
  423. GD_GPIO_TYPE_OUTPUT_PWM1_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(12),//!< Output type: pwm1_out
  424. GD_GPIO_TYPE_OUTPUT_PWM0_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(13),//!< Output type: pwm0_out
  425. GD_GPIO_TYPE_OUTPUT_SPI0_SO = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 7) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(14),//!< Output type: ssi_txd
  426. GD_GPIO_TYPE_OUTPUT_SPI0_CS1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(15),//!< Output type: ssi_cs1_n
  427. GD_GPIO_TYPE_OUTPUT_SPI0_CS0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(16),//!< Output type: ssi_cs0_n
  428. GD_GPIO_TYPE_OUTPUT_SPI0_SCLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(17),//!< Output type: ssi_sclk_out
  429. //GD_GPIO_TYPE_INOUT_SD_DATA_0 GD_GPIO_OEN_SEL( 8) GD_GPIO_OUT_SEL(18)
  430. //GD_GPIO_TYPE_INOUT_SD_DATA_1 GD_GPIO_OEN_SEL( 9) GD_GPIO_OUT_SEL(19)
  431. //GD_GPIO_TYPE_INOUT_SD_DATA_2 GD_GPIO_OEN_SEL(10) GD_GPIO_OUT_SEL(20)
  432. //GD_GPIO_TYPE_INOUT_SD_DATA_3 GD_GPIO_OEN_SEL(11) GD_GPIO_OUT_SEL(21)
  433. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_OEN_SEL(12) GD_GPIO_OUT_SEL(22)
  434. //GD_GPIO_TYPE_INOUT_SD1_DATA_0 GD_GPIO_OEN_SEL(13) GD_GPIO_OUT_SEL(26)
  435. //GD_GPIO_TYPE_INOUT_SD1_DATA_1 GD_GPIO_OEN_SEL(14) GD_GPIO_OUT_SEL(27)
  436. //GD_GPIO_TYPE_INOUT_SD1_DATA_2 GD_GPIO_OEN_SEL(15) GD_GPIO_OUT_SEL(28)
  437. //GD_GPIO_TYPE_INOUT_SD1_DATA_3 GD_GPIO_OEN_SEL(16) GD_GPIO_OUT_SEL(29)
  438. //GD_GPIO_TYPE_INOUT_SDIO1_CMD GD_GPIO_OEN_SEL(17) GD_GPIO_OUT_SEL(30)
  439. GD_GPIO_TYPE_OUTPUT_SDIO_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_4MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(23), //!< Output type: sd_clk_sdcard
  440. GD_GPIO_TYPE_OUTPUT_SF_CS0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(24), //!< Output type: sf_cs0_n
  441. GD_GPIO_TYPE_OUTPUT_SF_CS1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(25), //!< Output type: sf_cs1_n
  442. GD_GPIO_TYPE_OUTPUT_SDIO1_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(31), //!< Output type: sd2_clk_sdcard
  443. GD_GPIO_TYPE_OUTPUT_JTAGE_TDO = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(32), //!< Output type: jtag_tdout
  444. GD_GPIO_TYPE_OUTPUT_VD_VSYNC = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(33), //!< Output type: lcd_vsync
  445. GD_GPIO_TYPE_OUTPUT_VD_HSYNC = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(34), //!< Output type: lcd_hsync
  446. GD_GPIO_TYPE_OUTPUT_VD_CLOCK = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(35), //!< Output type: lcd_dclk
  447. GD_GPIO_TYPE_OUTPUT_VD_HVLD = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(36), //!< Output type: lcd_hvld
  448. GD_GPIO_TYPE_OUTPUT_VD_DATA0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(37), //!< Output type: lcd_data0
  449. GD_GPIO_TYPE_OUTPUT_VD_DATA1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(38), //!< Output type: lcd_data1
  450. GD_GPIO_TYPE_OUTPUT_VD_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(39), //!< Output type: lcd_data2
  451. GD_GPIO_TYPE_OUTPUT_VD_DATA3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(40), //!< Output type: lcd_data3
  452. GD_GPIO_TYPE_OUTPUT_VD_DATA4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(41), //!< Output type: lcd_data4
  453. GD_GPIO_TYPE_OUTPUT_VD_DATA5 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(42), //!< Output type: lcd_data5
  454. GD_GPIO_TYPE_OUTPUT_VD_DATA6 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(43), //!< Output type: lcd_data6
  455. GD_GPIO_TYPE_OUTPUT_VD_DATA7 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(44), //!< Output type: lcd_data7
  456. GD_GPIO_TYPE_OUTPUT_VD_DATA8 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(45), //!< Output type: lcd_data8
  457. GD_GPIO_TYPE_OUTPUT_VD_DATA9 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(46), //!< Output type: lcd_data9
  458. GD_GPIO_TYPE_OUTPUT_VD_DATA10 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(47), //!< Output type: lcd_data10
  459. GD_GPIO_TYPE_OUTPUT_VD_DATA11 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(48), //!< Output type: lcd_data11
  460. GD_GPIO_TYPE_OUTPUT_VD_DATA12 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(49), //!< Output type: lcd_data12
  461. GD_GPIO_TYPE_OUTPUT_VD_DATA13 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(50), //!< Output type: lcd_data13
  462. GD_GPIO_TYPE_OUTPUT_VD_DATA14 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(51), //!< Output type: lcd_data14
  463. GD_GPIO_TYPE_OUTPUT_VD_DATA15 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(52), //!< Output type: lcd_data15
  464. GD_GPIO_TYPE_OUTPUT_RCT_CLK_OUT2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(53), //!< Output type: rct_clk_out2
  465. GD_GPIO_TYPE_OUTPUT_RCT_CLK_OUT1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(54), //!< Output type: rct_clk_out1
  466. //GD_GPIO_TYPE_OUTPUT_SF_WP GD_GPIO_OEN_SEL(18) | GD_GPIO_OUT_SEL(55),//!< Output type: sf_wp
  467. //GD_GPIO_TYPE_OUTPUT_SF_HOLD
  468. GD_GPIO_TYPE_OUTPUT_RCT_XOSC = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(57), //!< Output type: rct_xosc
  469. GD_GPIO_TYPE_OUTPUT_EPHY_LED_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(58),//!< Output type: ephy_led[0] hcd ok
  470. GD_GPIO_TYPE_OUTPUT_EPHY_LED_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(59),//!< Output type: ephy_led[1] duplex
  471. GD_GPIO_TYPE_OUTPUT_EPHY_LED_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(60),//!< Output type: ephy_led[2] 10M CRS out
  472. GD_GPIO_TYPE_OUTPUT_EPHY_LED_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(61),//!< Output type: ephy_led[3] 100M CRS out
  473. GD_GPIO_TYPE_OUTPUT_EPHY_LED_4 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(62),//!< Output type: ephy_led[4] clo gs
  474. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(63),//!< Output type: enet_phy_txd[0]
  475. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(64),//!< Output type: enet_phy_txd[1]
  476. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(65),//!< Output type: enet_phy_txd[2]
  477. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(66),//!< Output type: enet_phy_txd[3]
  478. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXER = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(67),//!< Output type: enet_phy_txer
  479. GD_GPIO_TYPE_OUTPUT_ENET_PHY_TXEN = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(68),//!< Output type: enet_phy_txen
  480. // GD_GPIO_TYPE_INOUT_ETH_MDIO GD_GPIO_OUT_SEL(20)
  481. GD_GPIO_TYPE_OUTPUT_ENET_GMII_MDC_O = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(70),//!< Output type: enet_gmii_mdc_o
  482. GD_GPIO_TYPE_OUTPUT_PWM7_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(71),//!< Output type: pwm7_out
  483. GD_GPIO_TYPE_OUTPUT_PWM6_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(72),//!< Output type: pwm6_out
  484. GD_GPIO_TYPE_OUTPUT_PWM5_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(73),//!< Output type: pwm5_out
  485. GD_GPIO_TYPE_OUTPUT_PWM4_OUT = GD_GPIO_FUNC(GD_GPIO_FUNC_OUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 0) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL(74),//!< Output type: pwm4_out
  486. /* ----------------------------------- GPIO input function define ----------------------------------------------------------------------------------------------------------- */
  487. GD_GPIO_TYPE_INPUT_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL( 0) | GD_GPIO_OUT_SEL( 0),//!< Input type: normal input
  488. GD_GPIO_TYPE_INPUT_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL( 1) | GD_GPIO_OUT_SEL( 0),//!< Input type: normal input
  489. GD_GPIO_TYPE_INPUT_SPI1_SI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 0) | GD_GPIO_OUT_SEL( 0),//!< Input type: tssi_rxd
  490. //GD_GPIO_TYPE_INOUT_I2C_DATA GD_GPIO_IN_SEL(2+ 1)
  491. //GD_GPIO_TYPE_INOUT_I2C_CLK GD_GPIO_IN_SEL(2+ 2)
  492. //GD_GPIO_TYPE_INOUT_I2C_DATA2 GD_GPIO_IN_SEL(2+ 3)
  493. //GD_GPIO_TYPE_INOUT_I2C_CLK2 GD_GPIO_IN_SEL(2+ 4)
  494. GD_GPIO_TYPE_INPUT_UART2_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 5) | GD_GPIO_OUT_SEL( 0),//!< Input type: uart2_rx
  495. GD_GPIO_TYPE_INPUT_UART1_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 6) | GD_GPIO_OUT_SEL( 0),//!< Input type: uart1_rx
  496. GD_GPIO_TYPE_INPUT_UART0_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 7) | GD_GPIO_OUT_SEL( 0),//!< Input type: uart0_rx
  497. GD_GPIO_TYPE_INPUT_SPI0_SI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 8) | GD_GPIO_OUT_SEL( 0),//!< Input type: ssi_rxd
  498. GD_GPIO_TYPE_INPUT_SD_WP_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+ 9) | GD_GPIO_OUT_SEL( 0),//!< Input type: sd_wp_n
  499. GD_GPIO_TYPE_INPUT_SD_CD_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+10) | GD_GPIO_OUT_SEL( 0),//!< Input type: sd_cd_n
  500. //GD_GPIO_TYPE_INOUT_SD_DATA_0 GD_GPIO_IN_SEL(2+11)
  501. //GD_GPIO_TYPE_INOUT_SD_DATA_1 GD_GPIO_IN_SEL(2+12)
  502. //GD_GPIO_TYPE_INOUT_SD_DATA_2 GD_GPIO_IN_SEL(2+13)
  503. //GD_GPIO_TYPE_INOUT_SD_DATA_3 GD_GPIO_IN_SEL(2+14)
  504. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_IN_SEL(2+15)
  505. GD_GPIO_TYPE_INPUT_SD1_WP_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+16) | GD_GPIO_OUT_SEL( 0),//!< Input type: sd2_wp_n
  506. GD_GPIO_TYPE_INPUT_SD1_CD_N = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+17) | GD_GPIO_OUT_SEL( 0),//!< Input type: sd2_cd_n
  507. //GD_GPIO_TYPE_INOUT_SD_DATA_0 GD_GPIO_IN_SEL(2+18)
  508. //GD_GPIO_TYPE_INOUT_SD_DATA_1 GD_GPIO_IN_SEL(2+19)
  509. //GD_GPIO_TYPE_INOUT_SD_DATA_2 GD_GPIO_IN_SEL(2+20)
  510. //GD_GPIO_TYPE_INOUT_SD_DATA_3 GD_GPIO_IN_SEL(2+21)
  511. //GD_GPIO_TYPE_INOUT_SDIO_CMD GD_GPIO_IN_SEL(2+22)
  512. //GD_GPIO_TYPE_INPUT_SF_HOLD GD_GPIO_OEN_SEL(18) GD_GPIO_OUT_SEL( 0),//!< Input type: sf_hold
  513. //GD_GPIO_TYPE_INPUT_SF_WP GD_GPIO_OEN_SEL(19) GD_GPIO_OUT_SEL( 0),//!< Input type: sf_wp
  514. //NULL
  515. GD_GPIO_TYPE_INPUT_JTAG_TRSTN = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+26) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_trstn
  516. GD_GPIO_TYPE_INPUT_JTAG_TCK = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+27) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_tck
  517. GD_GPIO_TYPE_INPUT_JTAG_TMS = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+28) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_tms
  518. GD_GPIO_TYPE_INPUT_JTAG_TDI = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+29) | GD_GPIO_OUT_SEL( 0),//!< Input type: jtag_tdi
  519. GD_GPIO_TYPE_INPUT_SENSOR_IDSP = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT( 0)| GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+30) | GD_GPIO_OUT_SEL( 0),//!< Input type: sensor_idsp_field
  520. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+31) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_rxd[0]
  521. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+32) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_rxd[1]
  522. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+33) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_rxd[2]
  523. GD_GPIO_TYPE_INPUT_ENET_PHY_RXD_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+34) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_rxd[3]
  524. GD_GPIO_TYPE_INPUT_ENET_PHY_COL = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+35) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_col
  525. GD_GPIO_TYPE_INPUT_ENET_PHY_CRS = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+36) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_crs
  526. GD_GPIO_TYPE_INPUT_ENET_PHY_RXER = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+37) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_rxer
  527. GD_GPIO_TYPE_INPUT_ENET_PHY_RXDV = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+38) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_phy_rxdv
  528. // GD_GPIO_TYPE_INOUT_ETH_MDIO GD_GPIO_OEN_SEL(20) GD_GPIO_IN_SEL(2+39)
  529. GD_GPIO_TYPE_INPUT_ENET_CLK_RX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+40) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_clk_rx
  530. GD_GPIO_TYPE_INPUT_ENET_CLK_TX = GD_GPIO_FUNC(GD_GPIO_FUNC_IN) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 1) | GD_GPIO_IN_SEL(2+41) | GD_GPIO_OUT_SEL( 0),//!< Input type: enet_clk_tx
  531. /* ----------------------------------- GPIO input&&output function define --------------------------------------------------------------------------------------------------- */
  532. GD_GPIO_TYPE_INOUT_I2C_DATA = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 3) | GD_GPIO_IN_SEL(2+ 1) | GD_GPIO_OUT_SEL( 0),//!< Input/Output type: i2c_sda
  533. GD_GPIO_TYPE_INOUT_I2C_CLK = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 4) | GD_GPIO_IN_SEL(2+ 2) | GD_GPIO_OUT_SEL( 0),//!< Input/Output type: i2c_scl
  534. GD_GPIO_TYPE_INOUT_I2C_DATA2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 5) | GD_GPIO_IN_SEL(2+ 3) | GD_GPIO_OUT_SEL( 0),//!< Input/Output type: i2c_sda2
  535. GD_GPIO_TYPE_INOUT_I2C_CLK2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 6) | GD_GPIO_IN_SEL(2+ 4) | GD_GPIO_OUT_SEL( 0),//!< Input/Output type: i2c_scl2
  536. GD_GPIO_TYPE_INOUT_SD_DATA_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 8) | GD_GPIO_IN_SEL(2+11) | GD_GPIO_OUT_SEL(18), //!< Input/Output type: sd_data_out[0]
  537. GD_GPIO_TYPE_INOUT_SD_DATA_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL( 9) | GD_GPIO_IN_SEL(2+12) | GD_GPIO_OUT_SEL(19), //!< Input/Output type: sd_data_out[1]
  538. GD_GPIO_TYPE_INOUT_SD_DATA_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(10) | GD_GPIO_IN_SEL(2+13) | GD_GPIO_OUT_SEL(20), //!< Input/Output type: sd_data_out[2]
  539. GD_GPIO_TYPE_INOUT_SD_DATA_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(11) | GD_GPIO_IN_SEL(2+14) | GD_GPIO_OUT_SEL(21), //!< Input/Output type: sd_data_out[3]
  540. GD_GPIO_TYPE_INOUT_SD_CMD = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(12) | GD_GPIO_IN_SEL(2+15) | GD_GPIO_OUT_SEL(22), //!< Input/Output : sd_cmd
  541. GD_GPIO_TYPE_INOUT_SF_HOLD = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(18) | GD_GPIO_IN_SEL(2+23) | GD_GPIO_OUT_SEL(56),//!< Input/Output type: sf_hold
  542. GD_GPIO_TYPE_INOUT_SF_WP = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(0) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(19) | GD_GPIO_IN_SEL(2+24) | GD_GPIO_OUT_SEL(55),//!< Input/Output type: sf_wp
  543. GD_GPIO_TYPE_INOUT_SD1_DATA_0 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(13) | GD_GPIO_IN_SEL(2+18) | GD_GPIO_OUT_SEL(26), //!< Input/Output type: sd2_data_out[0]
  544. GD_GPIO_TYPE_INOUT_SD1_DATA_1 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(14) | GD_GPIO_IN_SEL(2+19) | GD_GPIO_OUT_SEL(27), //!< Input/Output type: sd2_data_out[1]
  545. GD_GPIO_TYPE_INOUT_SD1_DATA_2 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(15) | GD_GPIO_IN_SEL(2+20) | GD_GPIO_OUT_SEL(28), //!< Input/Output type: sd2_data_out[2]
  546. GD_GPIO_TYPE_INOUT_SD1_DATA_3 = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(16) | GD_GPIO_IN_SEL(2+21) | GD_GPIO_OUT_SEL(29), //!< Input/Output type: sd2_data_out[3]
  547. GD_GPIO_TYPE_INOUT_SD1_CMD = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_UP|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(17) | GD_GPIO_IN_SEL(2+22) | GD_GPIO_OUT_SEL(30), //!< Input/Output : sd2_cmd
  548. GD_GPIO_TYPE_INOUT_ETH_MDIO = GD_GPIO_FUNC(GD_GPIO_FUNC_INOUT) | GD_GPIO_IOCTRL(IOCTRL_PULL_DOWN|IOCTRL_2MA) | GD_GPIO_OEN_INVERT(1) | GD_GPIO_OUT_INVERT(0) | GD_GPIO_OEN_SEL(20) | GD_GPIO_IN_SEL(2+39) | GD_GPIO_OUT_SEL(69),//!< Input/Output type: enet_gmii_mdi/enet_gmii_mod_o
  549. GD_GPIO_TYPE_UNDEFINED = 0,
  550. } GD_GPIO_TYPE_E;
  551. #endif
  552. /*!
  553. *******************************************************************************
  554. **
  555. ** \brief Interrupt trigger types.
  556. **
  557. *******************************************************************************
  558. */
  559. typedef enum
  560. {
  561. GD_GPIO_INT_TRIGGER_LOW_LEVEL, //!< Interrupt trigger on low level.
  562. GD_GPIO_INT_TRIGGER_HIGH_LEVEL, //!< Interrupt trigger on high level.
  563. GD_GPIO_INT_TRIGGER_RISING_EDGE, //!< Interrupt trigger on rising edge.
  564. GD_GPIO_INT_TRIGGER_FALLING_EDGE, //!< Interrupt trigger on falling edge.
  565. GD_GPIO_INT_TRIGGER_BOTH_EDGE //!< Interrupt trigger on both edge.
  566. }GD_GPIO_INT_TRIGGER_E;
  567. /*!
  568. *******************************************************************************
  569. **
  570. ** \brief Interrupt configuration.
  571. **
  572. ** \sa GD_GPIO_Open()
  573. **
  574. *******************************************************************************
  575. */
  576. typedef struct
  577. {
  578. /*!
  579. ** The interrupt trigger type.
  580. */
  581. GD_GPIO_INT_TRIGGER_E trigger;
  582. /*!
  583. ** Flag to enable/disable the interrupt.
  584. */
  585. GBOOL enable;
  586. /*!
  587. ** The notification function which shall be called when an interrupt
  588. ** occurs.
  589. */
  590. void (*notifyFct)();
  591. }GD_GPIO_INT_CONFIG_S;
  592. /*!
  593. *******************************************************************************
  594. **
  595. ** \brief GPIO cross reference between GPIO pins and functions.
  596. **
  597. ** \sa GD_GPIO_Init()
  598. **
  599. *******************************************************************************
  600. */
  601. typedef struct
  602. {
  603. U8 pin;
  604. GD_GPIO_TYPE_E type;
  605. }GD_GPIO_XREF_S;
  606. /*!
  607. *******************************************************************************
  608. **
  609. ** \brief Parameters for initialisation.
  610. **
  611. ** \sa GD_GPIO_Init()
  612. **
  613. *******************************************************************************
  614. */
  615. typedef struct
  616. {
  617. /*!
  618. ** General interrupt priority for all GPIO interrupts,
  619. ** either #GD_INT_LOW_PRIORITY or #GD_INT_MID_PRIORITY.
  620. */
  621. S8 irqPriority;
  622. U8 phyType;
  623. U8 Reserve;
  624. U16 xrefTableCount;
  625. GD_GPIO_XREF_S* xrefTable;
  626. }GD_GPIO_INIT_PARAMS_S;
  627. /*
  628. *******************************************************************************
  629. **
  630. ** \brief Available API functions.
  631. **
  632. *******************************************************************************
  633. */
  634. #ifdef __cplusplus
  635. extern "C" {
  636. #endif
  637. GERR GD_GPIO_Init(GD_GPIO_INIT_PARAMS_S* pInitParams);
  638. GERR GD_GPIO_Exit(void);
  639. GERR GD_GPIO_Open(U8 number, GD_GPIO_TYPE_E type, GD_GPIO_INT_CONFIG_S* pIntConfig, GD_HANDLE* pHandle);
  640. GERR GD_GPIO_Close(GD_HANDLE* pHandle);
  641. GERR GD_GPIO_CloseWithType(U32 type);
  642. GERR GD_GPIO_Read(GD_HANDLE handle, U8 *pBit);
  643. GERR GD_GPIO_Write(GD_HANDLE handle, U8 bit);
  644. GERR GD_GPIO_SetType(GD_HANDLE handle, GD_GPIO_TYPE_E type);
  645. GERR GD_GPIO_DisableInterrupt(void);
  646. GERR GD_GPIO_EnableInterrupt(void);
  647. GERR GD_GPIO_OpenFunctionMode(GD_GPIO_TYPE_E type, GD_HANDLE* pHandle);
  648. GERR GD_GPIO_ControlInvertData(GD_HANDLE handle, U8 modeValue);
  649. GERR GD_GPIO_ControlInvertEnable(GD_HANDLE handle, U8 modeValue);
  650. #ifdef __cplusplus
  651. }
  652. #endif
  653. #endif