@@ -29,16 +29,6 @@ esp_eth_handle_t eth_handle = NULL;
2929#define ETH_PHY_ADDR 0
3030#endif
3131
32- #ifndef ETH_MDC_GPIO
33- // GPIO number used by SMI MDC
34- #define ETH_MDC_GPIO 23
35- #endif
36-
37- #ifndef ETH_MDIO_GPIO
38- // GPIO number used by SMI MDIO
39- #define ETH_MDIO_GPIO 18
40- #endif
41-
4232#if CONFIG_IDF_TARGET_ESP32
4333#define NANO_ETH_ESP32_EMAC_DEFAULT_CONFIG () \
4434 { \
@@ -156,18 +146,27 @@ esp_err_t NF_ESP32_InitialiseEthernet(uint8_t *pMacAdr)
156146 CPU_GPIO_ReservePin (esp32_emac_config.clock_config .rmii .clock_gpio , true ); // REF_CLK IN
157147#endif
158148
149+ // If ETH_MDC_GPIO or ETH_MDIO_GPIO defined then use new values
150+ #ifdef ETH_MDC_GPIO
159151 esp32_emac_config.smi_gpio .mdc_num = ETH_MDC_GPIO;
152+ #endif
153+
154+ #ifdef ETH_MDIO_GPIO
160155 esp32_emac_config.smi_gpio .mdio_num = ETH_MDIO_GPIO;
156+ #endif
157+
158+ ESP_LOGI (TAG, " Ethernet pins for MDC %d MDIO %d\n " , esp32_emac_config.smi_gpio .mdc_num , esp32_emac_config.smi_gpio .mdio_num );
159+
161160 esp_eth_mac_t *mac = esp_eth_mac_new_esp32 (&esp32_emac_config, &mac_config);
162161
163162 ESP_LOGI (TAG, " Ethernet mdio %d mdc %d\n " , ETH_MDIO_GPIO, ETH_MDC_GPIO);
164163
165164 // Reserve all pins used by ethernet interface
166- CPU_GPIO_ReservePin (ETH_MDIO_GPIO , true ); // MDIO (18)
165+ CPU_GPIO_ReservePin (esp32_emac_config. smi_gpio . mdio_num , true ); // MDIO
167166 CPU_GPIO_ReservePin (19 , true ); // TXD0
168167 CPU_GPIO_ReservePin (21 , true ); // TX_EN
169168 CPU_GPIO_ReservePin (22 , true ); // TXD1
170- CPU_GPIO_ReservePin (ETH_MDC_GPIO , true ); // MDC (23)
169+ CPU_GPIO_ReservePin (esp32_emac_config. smi_gpio . mdc_num , true ); // MDC
171170 CPU_GPIO_ReservePin (25 , true ); // RXD0
172171 CPU_GPIO_ReservePin (26 , true ); // RXD1
173172 CPU_GPIO_ReservePin (27 , true ); // CRS_DV
0 commit comments