ethernet: insert min assert time for PHY HW reset

Closes https://github.com/espressif/esp-idf/issues/5528
This commit is contained in:
morris 2020-07-09 22:03:11 +08:00
parent f73cd1d4f1
commit 0100d70dfd
5 changed files with 5 additions and 0 deletions

View file

@ -192,6 +192,7 @@ static esp_err_t dm9051_reset_hw(esp_eth_phy_t *phy)
gpio_pad_select_gpio(dm9051->reset_gpio_num);
gpio_set_direction(dm9051->reset_gpio_num, GPIO_MODE_OUTPUT);
gpio_set_level(dm9051->reset_gpio_num, 0);
ets_delay_us(100); // insert min input assert time
gpio_set_level(dm9051->reset_gpio_num, 1);
}
return ESP_OK;

View file

@ -181,6 +181,7 @@ static esp_err_t dp83848_reset_hw(esp_eth_phy_t *phy)
gpio_pad_select_gpio(dp83848->reset_gpio_num);
gpio_set_direction(dp83848->reset_gpio_num, GPIO_MODE_OUTPUT);
gpio_set_level(dp83848->reset_gpio_num, 0);
ets_delay_us(100); // insert min input assert time
gpio_set_level(dp83848->reset_gpio_num, 1);
}
return ESP_OK;

View file

@ -221,6 +221,7 @@ static esp_err_t ip101_reset_hw(esp_eth_phy_t *phy)
gpio_pad_select_gpio(ip101->reset_gpio_num);
gpio_set_direction(ip101->reset_gpio_num, GPIO_MODE_OUTPUT);
gpio_set_level(ip101->reset_gpio_num, 0);
ets_delay_us(100); // insert min input assert time
gpio_set_level(ip101->reset_gpio_num, 1);
}
return ESP_OK;

View file

@ -266,6 +266,7 @@ static esp_err_t lan8720_reset_hw(esp_eth_phy_t *phy)
gpio_pad_select_gpio(lan8720->reset_gpio_num);
gpio_set_direction(lan8720->reset_gpio_num, GPIO_MODE_OUTPUT);
gpio_set_level(lan8720->reset_gpio_num, 0);
ets_delay_us(100); // insert min input assert time
gpio_set_level(lan8720->reset_gpio_num, 1);
}
return ESP_OK;

View file

@ -175,6 +175,7 @@ static esp_err_t rtl8201_reset_hw(esp_eth_phy_t *phy)
gpio_pad_select_gpio(rtl8201->reset_gpio_num);
gpio_set_direction(rtl8201->reset_gpio_num, GPIO_MODE_OUTPUT);
gpio_set_level(rtl8201->reset_gpio_num, 0);
ets_delay_us(100); // insert min input assert time
gpio_set_level(rtl8201->reset_gpio_num, 1);
}
return ESP_OK;