From f20135af5400f78ea09a69f178d72e66020cceac Mon Sep 17 00:00:00 2001 From: Ivan Grokhotkov Date: Mon, 16 Jan 2017 02:33:16 +0800 Subject: [PATCH] esp32: compile PHY-related code only when WiFi is enabled Fixes https://github.com/espressif/esp-idf/issues/230, https://github.com/espressif/esp-idf/issues/237 --- components/esp32/cpu_start.c | 7 ++++++- components/esp32/phy_init.c | 8 ++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/components/esp32/cpu_start.c b/components/esp32/cpu_start.c index 5ae68fc64..b5e896e57 100644 --- a/components/esp32/cpu_start.c +++ b/components/esp32/cpu_start.c @@ -71,9 +71,11 @@ static bool app_cpu_started = false; #endif //!CONFIG_FREERTOS_UNICORE static void do_global_ctors(void); -static void do_phy_init(); static void main_task(void* args); extern void app_main(void); +#if CONFIG_ESP32_PHY_AUTO_INIT +static void do_phy_init(); +#endif extern int _bss_start; extern int _bss_end; @@ -264,6 +266,7 @@ static void main_task(void* args) vTaskDelete(NULL); } +#if CONFIG_ESP32_PHY_AUTO_INIT static void do_phy_init() { esp_phy_calibration_mode_t calibration_mode = PHY_RF_CAL_PARTIAL; @@ -297,3 +300,5 @@ static void do_phy_init() esp_phy_release_init_data(init_data); free(cal_data); // PHY maintains a copy of calibration data, so we can free this } +#endif //CONFIG_ESP32_PHY_AUTO_INIT + diff --git a/components/esp32/phy_init.c b/components/esp32/phy_init.c index bfc5a15f5..07a455d50 100644 --- a/components/esp32/phy_init.c +++ b/components/esp32/phy_init.c @@ -23,10 +23,12 @@ #include "esp_err.h" #include "esp_phy_init.h" #include "esp_system.h" -#include "phy.h" #include "esp_log.h" #include "nvs.h" #include "sdkconfig.h" + +#ifdef CONFIG_WIFI_ENABLED +#include "phy.h" #include "phy_init_data.h" static const char* TAG = "phy_init"; @@ -219,6 +221,4 @@ static esp_err_t store_cal_data_to_nvs_handle(nvs_handle handle, return err; } -void register_chipv7_phy_stub() -{ -} +#endif // CONFIG_WIFI_ENABLED