kopia lustrzana https://github.com/espressif/esp-idf
Build: Handle WiFi & BT enabled/disabled combos gracefully as possible
If using WIFI_INIT_CONFIG_DEFAULT, error message will point out lack of WiFi. Otherwise linker errors on WiFi symbols should help give a clue as to what is broken. Piggy-backs on changes in !420, ref github #230 #237pull/216/merge
rodzic
f20135af54
commit
ea19838d3a
|
@ -3,8 +3,15 @@
|
|||
#
|
||||
|
||||
COMPONENT_SRCDIRS := . hwcrypto
|
||||
LIBS := core rtc phy
|
||||
ifdef CONFIG_BT_ENABLED
|
||||
LIBS += coexist
|
||||
endif
|
||||
ifdef CONFIG_WIFI_ENABLED
|
||||
LIBS += net80211 pp wpa smartconfig coexist wps wpa2
|
||||
endif
|
||||
|
||||
LIBS := core net80211 phy rtc pp wpa smartconfig coexist wps wpa2
|
||||
LIBS := $(sort $(LIBS)) # de-duplicate, we can handle different orders here
|
||||
|
||||
LINKER_SCRIPTS += esp32.common.ld esp32.rom.ld esp32.peripherals.ld
|
||||
|
||||
|
|
|
@ -62,6 +62,7 @@
|
|||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/queue.h"
|
||||
#include "rom/queue.h"
|
||||
#include "sdkconfig.h"
|
||||
#include "esp_err.h"
|
||||
#include "esp_wifi_types.h"
|
||||
#include "esp_event.h"
|
||||
|
@ -97,11 +98,14 @@ typedef struct {
|
|||
uint32_t rx_buf_num; /**< WiFi RX buffer number */
|
||||
} wifi_init_config_t;
|
||||
|
||||
|
||||
#ifdef CONFIG_WIFI_ENABLED
|
||||
#define WIFI_INIT_CONFIG_DEFAULT() { \
|
||||
.event_handler = &esp_event_send, \
|
||||
.rx_buf_num = CONFIG_ESP32_WIFI_RX_BUFFER_NUM, \
|
||||
};
|
||||
#else
|
||||
#define WIFI_INIT_CONFIG_DEFAULT #error Wifi is disabled in config, WIFI_INIT_CONFIG_DEFAULT will not work
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Init WiFi
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
#include "esp_wifi.h"
|
||||
#include "esp_wifi_internal.h"
|
||||
#include "esp_log.h"
|
||||
#include "sdkconfig.h"
|
||||
#include "rom/efuse.h"
|
||||
#include "rom/cache.h"
|
||||
#include "rom/uart.h"
|
||||
|
@ -74,7 +75,9 @@ esp_err_t system_efuse_read_mac(uint8_t mac[6]) __attribute__((alias("esp_efuse_
|
|||
|
||||
void IRAM_ATTR esp_restart(void)
|
||||
{
|
||||
#ifdef CONFIG_WIFI_ENABLED
|
||||
esp_wifi_stop();
|
||||
#endif
|
||||
|
||||
// Disable scheduler on this core.
|
||||
vTaskSuspendAll();
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
# Disable WiFi stack by default
|
||||
CONFIG_WIFI_ENABLED=n
|
|
@ -1,7 +1,4 @@
|
|||
# Override some defaults so BT stack is enabled
|
||||
# in this example
|
||||
|
||||
#
|
||||
# BT config
|
||||
#
|
||||
# and WiFi disabled by default in this example
|
||||
CONFIG_BT_ENABLED=y
|
||||
CONFIG_WIFI_ENABLED=n
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
# Override some defaults so BT stack is enabled
|
||||
# in this example
|
||||
|
||||
#
|
||||
# BT config
|
||||
#
|
||||
# and WiFi disabled by default in this example
|
||||
CONFIG_BT_ENABLED=y
|
||||
CONFIG_WIFI_ENABLED=n
|
||||
|
|
Ładowanie…
Reference in New Issue