gpio_gk7101_evb.h 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. #ifndef GPIO_CFG_EVB_H
  2. #define GPIO_CFG_EVB_H
  3. #include "adi_types.h"
  4. #include "adi_gpio.h"
  5. #define SYSTEM_USE_EXTERN_I2S 1
  6. #define SYSTEM_USE_SDCARD 1
  7. #define SYSTEM_USE_EXTERN_ETHPHY 1
  8. #define SYSTEM_INIT_GD_GPIO 0
  9. #if SYSTEM_USE_EXTERN_I2S == 1
  10. #define SYSTEM_GPIO_I2S_TABLE \
  11. { GADI_GPIO_4, GADI_GPIO_TYPE_OUTPUT_AOMCLK }, \
  12. { GADI_GPIO_5 , GADI_GPIO_TYPE_OUTPUT_AOLRCLK }, \
  13. { GADI_GPIO_6 , GADI_GPIO_TYPE_INPUT_I2S_SI }, \
  14. { GADI_GPIO_7 , GADI_GPIO_TYPE_OUTPUT_AOBCLK },
  15. #else
  16. #define SYSTEM_GPIO_I2S_TABLE \
  17. { GADI_GPIO_4 , GADI_GPIO_TYPE_OUTPUT_SPI0_SO }, \
  18. { GADI_GPIO_5 , GADI_GPIO_TYPE_OUTPUT_SPI1_SO }, \
  19. { GADI_GPIO_6 , GADI_GPIO_TYPE_OUTPUT_SPI0_SCLK }, \
  20. { GADI_GPIO_7 , GADI_GPIO_TYPE_OUTPUT_PWM3_OUT },
  21. #endif
  22. #if SYSTEM_USE_SDCARD == 1
  23. #define SYSTEM_GPIO_SD_TABLE \
  24. { GADI_GPIO_40, GADI_GPIO_TYPE_INOUT_SD_DATA_3 }, \
  25. { GADI_GPIO_41, GADI_GPIO_TYPE_INPUT_SD_WP_N }, \
  26. { GADI_GPIO_42, GADI_GPIO_TYPE_INOUT_SD_DATA_0 }, \
  27. { GADI_GPIO_43, GADI_GPIO_TYPE_INOUT_SD_DATA_2 }, \
  28. { GADI_GPIO_44, GADI_GPIO_TYPE_INOUT_SD_DATA_1 }, \
  29. { GADI_GPIO_45, GADI_GPIO_TYPE_UNDEFINED }, \
  30. { GADI_GPIO_46, GADI_GPIO_TYPE_OUTPUT_SDIO_CLK }, \
  31. { GADI_GPIO_47, GADI_GPIO_TYPE_UNDEFINED }, \
  32. { GADI_GPIO_48, GADI_GPIO_TYPE_INOUT_SD_CMD }, \
  33. { GADI_GPIO_49, GADI_GPIO_TYPE_UNDEFINED }, \
  34. { GADI_GPIO_50, GADI_GPIO_TYPE_INPUT_SD_CD_N },
  35. #else
  36. #define SYSTEM_GPIO_SD_TABLE \
  37. { GADI_GPIO_40, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_9 }, \
  38. { GADI_GPIO_41, GADI_GPIO_TYPE_OUTPUT_1 /* USB_PD */ }, \
  39. { GADI_GPIO_42, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_6 }, \
  40. { GADI_GPIO_43, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_7 }, \
  41. { GADI_GPIO_44, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_8 }, \
  42. { GADI_GPIO_45, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_3 }, \
  43. { GADI_GPIO_46, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_4 }, \
  44. { GADI_GPIO_47, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_5 }, \
  45. { GADI_GPIO_48, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_0 }, \
  46. { GADI_GPIO_49, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_1 }, \
  47. { GADI_GPIO_50, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_2 },
  48. #endif
  49. #if SYSTEM_USE_EXTERN_ETHPHY == 1
  50. #define SYSTEM_GPIO_PHY1_TABLE \
  51. { GADI_GPIO_18, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXDV }, \
  52. { GADI_GPIO_19, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXER },
  53. #define SYSTEM_GPIO_PHY2_TABLE \
  54. { GADI_GPIO_31, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXD_1 }, \
  55. { GADI_GPIO_32, GADI_GPIO_TYPE_OUTPUT_AOMCLK }, \
  56. { GADI_GPIO_33, GADI_GPIO_TYPE_OUTPUT_ENET_PHY_RESET /*ETH reset*/ }, \
  57. { GADI_GPIO_34, GADI_GPIO_TYPE_OUTPUT_ENET_PHY_TXEN }, \
  58. { GADI_GPIO_35, GADI_GPIO_TYPE_OUTPUT_ENET_GMII_MDC_O }, \
  59. { GADI_GPIO_36, GADI_GPIO_TYPE_INOUT_ETH_MDIO },
  60. #define SYSTEM_GPIO_PHY3_TABLE \
  61. { GADI_GPIO_53, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXD_0 }, \
  62. { GADI_GPIO_54, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXD_2/*CLK*/},
  63. #else
  64. #define SYSTEM_GPIO_PHY1_TABLE \
  65. { GADI_GPIO_18, GADI_GPIO_TYPE_OUTPUT_EPHY_LED_3 }, \
  66. { GADI_GPIO_19, GADI_GPIO_TYPE_OUTPUT_EPHY_LED_1 },
  67. #define SYSTEM_GPIO_PHY2_TABLE \
  68. { GADI_GPIO_31, GADI_GPIO_TYPE_UNDEFINED }, \
  69. { GADI_GPIO_32, GADI_GPIO_TYPE_OUTPUT_AOMCLK }, \
  70. { GADI_GPIO_33, GADI_GPIO_TYPE_UNDEFINED }, \
  71. { GADI_GPIO_34, GADI_GPIO_TYPE_UNDEFINED }, \
  72. { GADI_GPIO_35, GADI_GPIO_TYPE_UNDEFINED }, \
  73. { GADI_GPIO_36, GADI_GPIO_TYPE_UNDEFINED },
  74. #define SYSTEM_GPIO_PHY3_TABLE \
  75. { GADI_GPIO_53, GADI_GPIO_TYPE_UNDEFINED }, \
  76. { GADI_GPIO_54, GADI_GPIO_TYPE_UNDEFINED },
  77. #endif
  78. #define SYSTEM_GPIO_XREF_TABLE \
  79. { GADI_GPIO_0 , GADI_GPIO_TYPE_OUTPUT_SF_CS0 }, \
  80. { GADI_GPIO_1 , GADI_GPIO_TYPE_OUTPUT_SF_CS1 }, \
  81. { GADI_GPIO_2 , GADI_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_1 }, \
  82. { GADI_GPIO_3 , GADI_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_0 }, \
  83. SYSTEM_GPIO_I2S_TABLE\
  84. { GADI_GPIO_8 , GADI_GPIO_TYPE_OUTPUT_1 /* SPI0_HOLD */ }, \
  85. { GADI_GPIO_9 , GADI_GPIO_TYPE_OUTPUT_PWM2_OUT }, \
  86. { GADI_GPIO_10, GADI_GPIO_TYPE_OUTPUT_PWM1_OUT }, \
  87. { GADI_GPIO_11, GADI_GPIO_TYPE_OUTPUT_SPI0_CS0 }, \
  88. { GADI_GPIO_12, GADI_GPIO_TYPE_OUTPUT_PWM0_OUT }, \
  89. { GADI_GPIO_13, GADI_GPIO_TYPE_INPUT_SPI1_SI }, \
  90. { GADI_GPIO_14, GADI_GPIO_TYPE_INPUT_SPI0_SI }, \
  91. { GADI_GPIO_15, GADI_GPIO_TYPE_OUTPUT_1 /* SPI0_WP */ }, \
  92. { GADI_GPIO_16, GADI_GPIO_TYPE_OUTPUT_SPI1_CS0 }, \
  93. { GADI_GPIO_17, GADI_GPIO_TYPE_OUTPUT_SPI1_SCLK }, \
  94. SYSTEM_GPIO_PHY1_TABLE\
  95. { GADI_GPIO_20, GADI_GPIO_TYPE_INPUT_UART0_RX }, \
  96. { GADI_GPIO_21, GADI_GPIO_TYPE_OUTPUT_UART2_DTR_N/* RS485_RE */}, \
  97. { GADI_GPIO_22, GADI_GPIO_TYPE_OUTPUT_UART0_TX }, \
  98. { GADI_GPIO_23, GADI_GPIO_TYPE_OUTPUT_UART1_TX }, \
  99. { GADI_GPIO_24, GADI_GPIO_TYPE_OUTPUT_UART2_TX }, \
  100. { GADI_GPIO_25, GADI_GPIO_TYPE_INPUT_UART1_RX }, \
  101. { GADI_GPIO_26, GADI_GPIO_TYPE_INPUT_UART2_RX }, \
  102. { GADI_GPIO_27, GADI_GPIO_TYPE_OUTPUT_1 /*Sensor reset*/}, \
  103. { GADI_GPIO_28, GADI_GPIO_TYPE_INOUT_I2C_DATA /*S D*/ }, \
  104. { GADI_GPIO_29, GADI_GPIO_TYPE_INOUT_I2C_CLK /*S C*/ }, \
  105. { GADI_GPIO_30, GADI_GPIO_TYPE_OUTPUT_AO_DATA0 }, \
  106. SYSTEM_GPIO_PHY2_TABLE\
  107. { GADI_GPIO_37, GADI_GPIO_TYPE_OUTPUT_1 /*IR_CUT*/ }, \
  108. { GADI_GPIO_38, GADI_GPIO_TYPE_INOUT_I2C_DATA2 }, \
  109. { GADI_GPIO_39, GADI_GPIO_TYPE_INOUT_I2C_CLK2 }, \
  110. SYSTEM_GPIO_SD_TABLE\
  111. { GADI_GPIO_51, GADI_GPIO_TYPE_OUTPUT_AOBCLK }, \
  112. { GADI_GPIO_52, GADI_GPIO_TYPE_OUTPUT_AOLRCLK }, \
  113. SYSTEM_GPIO_PHY3_TABLE\
  114. { GADI_GPIO_55, GADI_GPIO_TYPE_UNDEFINED }
  115. #define SYSTEM_GPIO_IR_CUT1 GADI_GPIO_10
  116. #define SYSTEM_GPIO_IR_CUT2 GADI_GPIO_9
  117. #define SYSTEM_ETH_PHY_RESET_GPIO GADI_GPIO_33
  118. #define SYSTEM_GPIO_SENSOR_RESET GADI_GPIO_27
  119. #define SYSTEM_GPIO_USB_HOST GADI_GPIO_49
  120. #endif