diff --git a/components/esp_phy/Kconfig b/components/esp_phy/Kconfig index 1e380ff9c5..646522e499 100644 --- a/components/esp_phy/Kconfig +++ b/components/esp_phy/Kconfig @@ -113,4 +113,28 @@ menu "PHY" When using USB Serial/JTAG/OTG/CDC, PHY should enable USB, otherwise USB module can not work properly. Notice: Enabling this configuration option will slightly impact wifi performance. + choice ESP_PHY_CALIBRATION_MODE + prompt "Calibration mode" + default ESP_PHY_RF_CAL_PARTIAL + help + Select PHY calibration mode. During RF initialization, the partial calibration + method is used by default for RF calibration. Full calibration takes about 100ms + more than partial calibration. If boot duration is not critical, it is suggested + to use the full calibration method. No calibration method is only used when the + device wakes up from deep sleep. + + config ESP_PHY_RF_CAL_PARTIAL + bool "Calibration partial" + config ESP_PHY_RF_CAL_NONE + bool "Calibration none" + config ESP_PHY_RF_CAL_FULL + bool "Calibration full" + endchoice #ESP_PHY_CALIBRATION_MODE + + config ESP_PHY_CALIBRATION_MODE + int + default 0 if ESP_PHY_RF_CAL_PARTIAL + default 1 if ESP_PHY_RF_CAL_NONE + default 2 if ESP_PHY_RF_CAL_FULL + endmenu # PHY diff --git a/components/esp_phy/src/phy_init.c b/components/esp_phy/src/phy_init.c index 10f9c780bd..df70f8333d 100644 --- a/components/esp_phy/src/phy_init.c +++ b/components/esp_phy/src/phy_init.c @@ -711,7 +711,7 @@ void esp_phy_load_cal_and_init(void) #endif #ifdef CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE - esp_phy_calibration_mode_t calibration_mode = PHY_RF_CAL_PARTIAL; + esp_phy_calibration_mode_t calibration_mode = CONFIG_ESP_PHY_CALIBRATION_MODE; uint8_t sta_mac[6]; if (esp_rom_get_reset_reason(0) == RESET_REASON_CORE_DEEP_SLEEP) { calibration_mode = PHY_RF_CAL_NONE;