#ifndef GPIO_CFG_EVB_H #define GPIO_CFG_EVB_H #include "adi_types.h" #include "adi_gpio.h" #define SYSTEM_USE_EXTERN_I2S 1 #define SYSTEM_USE_SDCARD 1 #define SYSTEM_USE_EXTERN_ETHPHY 1 #define SYSTEM_INIT_GD_GPIO 0 #if SYSTEM_USE_EXTERN_I2S == 1 #define SYSTEM_GPIO_I2S_TABLE \ { GADI_GPIO_4, GADI_GPIO_TYPE_OUTPUT_AOMCLK }, \ { GADI_GPIO_5 , GADI_GPIO_TYPE_OUTPUT_AOLRCLK }, \ { GADI_GPIO_6 , GADI_GPIO_TYPE_INPUT_I2S_SI }, \ { GADI_GPIO_7 , GADI_GPIO_TYPE_OUTPUT_AOBCLK }, #else #define SYSTEM_GPIO_I2S_TABLE \ { GADI_GPIO_4 , GADI_GPIO_TYPE_OUTPUT_SPI0_SO }, \ { GADI_GPIO_5 , GADI_GPIO_TYPE_OUTPUT_SPI1_SO }, \ { GADI_GPIO_6 , GADI_GPIO_TYPE_OUTPUT_SPI0_SCLK }, \ { GADI_GPIO_7 , GADI_GPIO_TYPE_OUTPUT_PWM3_OUT }, #endif #if SYSTEM_USE_SDCARD == 1 #define SYSTEM_GPIO_SD_TABLE \ { GADI_GPIO_40, GADI_GPIO_TYPE_INOUT_SD_DATA_3 }, \ { GADI_GPIO_41, GADI_GPIO_TYPE_INPUT_SD_WP_N }, \ { GADI_GPIO_42, GADI_GPIO_TYPE_INOUT_SD_DATA_0 }, \ { GADI_GPIO_43, GADI_GPIO_TYPE_INOUT_SD_DATA_2 }, \ { GADI_GPIO_44, GADI_GPIO_TYPE_INOUT_SD_DATA_1 }, \ { GADI_GPIO_45, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_46, GADI_GPIO_TYPE_OUTPUT_SDIO_CLK }, \ { GADI_GPIO_47, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_48, GADI_GPIO_TYPE_INOUT_SD_CMD }, \ { GADI_GPIO_49, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_50, GADI_GPIO_TYPE_INPUT_SD_CD_N }, #else #define SYSTEM_GPIO_SD_TABLE \ { GADI_GPIO_40, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_9 }, \ { GADI_GPIO_41, GADI_GPIO_TYPE_OUTPUT_1 /* USB_PD */ }, \ { GADI_GPIO_42, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_6 }, \ { GADI_GPIO_43, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_7 }, \ { GADI_GPIO_44, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_8 }, \ { GADI_GPIO_45, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_3 }, \ { GADI_GPIO_46, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_4 }, \ { GADI_GPIO_47, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_5 }, \ { GADI_GPIO_48, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_0 }, \ { GADI_GPIO_49, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_1 }, \ { GADI_GPIO_50, GADI_GPIO_TYPE_OUTPUT_AHB_DAC_DR_2 }, #endif #if SYSTEM_USE_EXTERN_ETHPHY == 1 #define SYSTEM_GPIO_PHY1_TABLE \ { GADI_GPIO_18, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXDV }, \ { GADI_GPIO_19, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXER }, #define SYSTEM_GPIO_PHY2_TABLE \ { GADI_GPIO_31, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXD_1 }, \ { GADI_GPIO_32, GADI_GPIO_TYPE_OUTPUT_AOMCLK }, \ { GADI_GPIO_33, GADI_GPIO_TYPE_OUTPUT_ENET_PHY_RESET /*ETH reset*/ }, \ { GADI_GPIO_34, GADI_GPIO_TYPE_OUTPUT_ENET_PHY_TXEN }, \ { GADI_GPIO_35, GADI_GPIO_TYPE_OUTPUT_ENET_GMII_MDC_O }, \ { GADI_GPIO_36, GADI_GPIO_TYPE_INOUT_ETH_MDIO }, #define SYSTEM_GPIO_PHY3_TABLE \ { GADI_GPIO_53, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXD_0 }, \ { GADI_GPIO_54, GADI_GPIO_TYPE_INPUT_ENET_PHY_RXD_2/*CLK*/}, #else #define SYSTEM_GPIO_PHY1_TABLE \ { GADI_GPIO_18, GADI_GPIO_TYPE_OUTPUT_EPHY_LED_3 }, \ { GADI_GPIO_19, GADI_GPIO_TYPE_OUTPUT_EPHY_LED_1 }, #define SYSTEM_GPIO_PHY2_TABLE \ { GADI_GPIO_31, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_32, GADI_GPIO_TYPE_OUTPUT_AOMCLK }, \ { GADI_GPIO_33, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_34, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_35, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_36, GADI_GPIO_TYPE_UNDEFINED }, #define SYSTEM_GPIO_PHY3_TABLE \ { GADI_GPIO_53, GADI_GPIO_TYPE_UNDEFINED }, \ { GADI_GPIO_54, GADI_GPIO_TYPE_UNDEFINED }, #endif #define SYSTEM_GPIO_XREF_TABLE \ { GADI_GPIO_0 , GADI_GPIO_TYPE_OUTPUT_SF_CS0 }, \ { GADI_GPIO_1 , GADI_GPIO_TYPE_OUTPUT_SF_CS1 }, \ { GADI_GPIO_2 , GADI_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_1 }, \ { GADI_GPIO_3 , GADI_GPIO_TYPE_OUTPUT_ENET_PHY_TXD_0 }, \ SYSTEM_GPIO_I2S_TABLE\ { GADI_GPIO_8 , GADI_GPIO_TYPE_OUTPUT_1 /* SPI0_HOLD */ }, \ { GADI_GPIO_9 , GADI_GPIO_TYPE_OUTPUT_PWM2_OUT }, \ { GADI_GPIO_10, GADI_GPIO_TYPE_OUTPUT_PWM1_OUT }, \ { GADI_GPIO_11, GADI_GPIO_TYPE_OUTPUT_SPI0_CS0 }, \ { GADI_GPIO_12, GADI_GPIO_TYPE_OUTPUT_PWM0_OUT }, \ { GADI_GPIO_13, GADI_GPIO_TYPE_INPUT_SPI1_SI }, \ { GADI_GPIO_14, GADI_GPIO_TYPE_INPUT_SPI0_SI }, \ { GADI_GPIO_15, GADI_GPIO_TYPE_OUTPUT_1 /* SPI0_WP */ }, \ { GADI_GPIO_16, GADI_GPIO_TYPE_OUTPUT_SPI1_CS0 }, \ { GADI_GPIO_17, GADI_GPIO_TYPE_OUTPUT_SPI1_SCLK }, \ SYSTEM_GPIO_PHY1_TABLE\ { GADI_GPIO_20, GADI_GPIO_TYPE_INPUT_UART0_RX }, \ { GADI_GPIO_21, GADI_GPIO_TYPE_OUTPUT_UART2_DTR_N/* RS485_RE */}, \ { GADI_GPIO_22, GADI_GPIO_TYPE_OUTPUT_UART0_TX }, \ { GADI_GPIO_23, GADI_GPIO_TYPE_OUTPUT_UART1_TX }, \ { GADI_GPIO_24, GADI_GPIO_TYPE_OUTPUT_UART2_TX }, \ { GADI_GPIO_25, GADI_GPIO_TYPE_INPUT_UART1_RX }, \ { GADI_GPIO_26, GADI_GPIO_TYPE_INPUT_UART2_RX }, \ { GADI_GPIO_27, GADI_GPIO_TYPE_OUTPUT_1 /*Sensor reset*/}, \ { GADI_GPIO_28, GADI_GPIO_TYPE_INOUT_I2C_DATA /*S D*/ }, \ { GADI_GPIO_29, GADI_GPIO_TYPE_INOUT_I2C_CLK /*S C*/ }, \ { GADI_GPIO_30, GADI_GPIO_TYPE_OUTPUT_AO_DATA0 }, \ SYSTEM_GPIO_PHY2_TABLE\ { GADI_GPIO_37, GADI_GPIO_TYPE_OUTPUT_1 /*IR_CUT*/ }, \ { GADI_GPIO_38, GADI_GPIO_TYPE_INOUT_I2C_DATA2 }, \ { GADI_GPIO_39, GADI_GPIO_TYPE_INOUT_I2C_CLK2 }, \ SYSTEM_GPIO_SD_TABLE\ { GADI_GPIO_51, GADI_GPIO_TYPE_OUTPUT_AOBCLK }, \ { GADI_GPIO_52, GADI_GPIO_TYPE_OUTPUT_AOLRCLK }, \ SYSTEM_GPIO_PHY3_TABLE\ { GADI_GPIO_55, GADI_GPIO_TYPE_UNDEFINED } #define SYSTEM_GPIO_IR_CUT1 GADI_GPIO_10 #define SYSTEM_GPIO_IR_CUT2 GADI_GPIO_9 #define SYSTEM_ETH_PHY_RESET_GPIO GADI_GPIO_33 #define SYSTEM_GPIO_SENSOR_RESET GADI_GPIO_27 #define SYSTEM_GPIO_USB_HOST GADI_GPIO_49 #endif