summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2017-10-26 18:24:35 +1100
committerDamien George <damien.p.george@gmail.com>2017-12-13 14:48:53 +1100
commit48613b6011fc84136125b7595e1e2cca673e7ed5 (patch)
treeca74643c1158dd16af60edac0d3014b6778030c6
parenta5808e2fca043dcacc2de8563533f71d1a12fb39 (diff)
esp32: Update to latest ESP IDF.
This update requires the xtensa-esp32-elf to be upgraded to the latest version, 1.22.0-73-ge28a011-5.2.0.
-rw-r--r--ports/esp32/Makefile8
-rw-r--r--ports/esp32/esp32.custom_common.ld8
-rw-r--r--ports/esp32/sdkconfig.h6
3 files changed, 18 insertions, 4 deletions
diff --git a/ports/esp32/Makefile b/ports/esp32/Makefile
index a461f50ff..a533fd31d 100644
--- a/ports/esp32/Makefile
+++ b/ports/esp32/Makefile
@@ -29,7 +29,7 @@ ESPCOMP = $(ESPIDF)/components
ESPTOOL ?= $(ESPCOMP)/esptool_py/esptool/esptool.py
# verify the ESP IDF version
-ESPIDF_SUPHASH := 9a26296a0e88a4c3ae27e9c848be970946fff87e
+ESPIDF_SUPHASH := 2c95a77cf93781f296883d5dbafcdc18e4389656
ESPIDF_CURHASH := $(shell git -C $(ESPIDF) show -s --pretty=format:'%H')
ifneq ($(ESPIDF_CURHASH),$(ESPIDF_SUPHASH))
$(info ** WARNING **)
@@ -214,6 +214,7 @@ ESPIDF_DRIVER_O = $(addprefix $(ESPCOMP)/driver/,\
$(BUILD)/$(ESPCOMP)/esp32/dport_access.o: CFLAGS += -Wno-array-bounds
ESPIDF_ESP32_O = $(addprefix $(ESPCOMP)/esp32/,\
+ brownout.o \
panic.o \
esp_timer.o \
esp_timer_esp32.o \
@@ -240,6 +241,7 @@ ESPIDF_ESP32_O = $(addprefix $(ESPCOMP)/esp32/,\
intr_alloc.o \
dport_access.o \
wifi_init.o \
+ wifi_internal.o \
)
ESPIDF_HEAP_O = $(addprefix $(ESPCOMP)/heap/,\
@@ -281,6 +283,7 @@ ESPIDF_EXPAT_O = $(addprefix $(ESPCOMP)/expat/,\
ESPIDF_PTHREAD_O = $(addprefix $(ESPCOMP)/pthread/,\
pthread.o \
+ pthread_local_storage.o \
)
# Assembler .S files need only basic flags, and in particular should not have
@@ -447,6 +450,7 @@ ESPIDF_LWIP_O = $(addprefix $(ESPCOMP)/lwip/,\
port/freertos/sys_arch.o \
port/netif/wlanif.o \
port/netif/ethernetif.o \
+ port/vfs_lwip.o \
)
ESPIDF_MBEDTLS_O = $(addprefix $(ESPCOMP)/mbedtls/,\
@@ -615,7 +619,7 @@ APP_LD_ARGS += -L$(dir $(LIBSTDCXX_FILE_NAME)) -lstdc++
APP_LD_ARGS += $(ESPCOMP)/newlib/lib/libc.a
APP_LD_ARGS += $(ESPCOMP)/newlib/lib/libm.a
APP_LD_ARGS += $(ESPCOMP)/esp32/libhal.a
-APP_LD_ARGS += -L$(ESPCOMP)/esp32/lib -lcore -lnet80211 -lphy -lrtc -lpp -lwpa -lsmartconfig -lcoexist
+APP_LD_ARGS += -L$(ESPCOMP)/esp32/lib -lcore -lnet80211 -lphy -lrtc -lpp -lwpa -lsmartconfig -lcoexist -lwps -lwpa2
APP_LD_ARGS += $(OBJ)
APP_LD_ARGS += --end-group
diff --git a/ports/esp32/esp32.custom_common.ld b/ports/esp32/esp32.custom_common.ld
index 45242f9af..eb1dee3c0 100644
--- a/ports/esp32/esp32.custom_common.ld
+++ b/ports/esp32/esp32.custom_common.ld
@@ -89,13 +89,14 @@ SECTIONS
*esp32/core_dump.o(.literal .text .literal.* .text.*)
*app_trace/*(.literal .text .literal.* .text.*)
*xtensa-debug-module/eri.o(.literal .text .literal.* .text.*)
- *esp32/app_trace.o(.literal .text .literal.* .text.*)
*libphy.a:(.literal .text .literal.* .text.*)
*librtc.a:(.literal .text .literal.* .text.*)
*libsoc.a:(.literal .text .literal.* .text.*)
*libhal.a:(.literal .text .literal.* .text.*)
*libgcc.a:lib2funcs.o(.literal .text .literal.* .text.*)
*spi_flash/spi_flash_rom_patch.o(.literal .text .literal.* .text.*)
+ *libgcov.a:(.literal .text .literal.* .text.*)
+ INCLUDE esp32.spiram.rom-functions-iram.ld
*py/scheduler.o*(.literal .text .literal.* .text.*)
_iram_text_end = ABSOLUTE(.);
} > iram0_0_seg
@@ -117,9 +118,12 @@ SECTIONS
*(.dram1 .dram1.*)
*esp32/panic.o(.rodata .rodata.*)
*libphy.a:(.rodata .rodata.*)
- *app_trace/app_trace.o:(.rodata .rodata.*)
+ *soc/esp32/rtc_clk.o(.rodata .rodata.*)
+ *app_trace/app_trace.o(.rodata .rodata.*)
+ *libgcov.a:(.rodata .rodata.*)
*heap/multi_heap.o(.rodata .rodata.*)
*heap/multi_heap_poisoning.o(.rodata .rodata.*)
+ INCLUDE esp32.spiram.rom-functions-dram.ld
_data_end = ABSOLUTE(.);
. = ALIGN(4);
} >dram0_0_seg
diff --git a/ports/esp32/sdkconfig.h b/ports/esp32/sdkconfig.h
index 38050fab2..7fcbb7c01 100644
--- a/ports/esp32/sdkconfig.h
+++ b/ports/esp32/sdkconfig.h
@@ -8,7 +8,12 @@
#define CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS 1
#define CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS 4
+#define CONFIG_BROWNOUT_DET 1
+#define CONFIG_BROWNOUT_DET_LVL 0
+#define CONFIG_BROWNOUT_DET_LVL_SEL_0 1
+
#define CONFIG_TCPIP_TASK_STACK_SIZE 2560
+#define CONFIG_TCPIP_RECVMBOX_SIZE 32
#define CONFIG_ESP32_APPTRACE_DEST_NONE 1
#define CONFIG_ESP32_PHY_MAX_TX_POWER 20
@@ -101,6 +106,7 @@
#define CONFIG_LWIP_DHCP_MAX_NTP_SERVERS 1
#define CONFIG_LWIP_MAX_SOCKETS 8
#define CONFIG_LWIP_SO_REUSE 1
+#define CONFIG_LWIP_ETHARP_TRUST_IP_MAC 1
#define CONFIG_IP_LOST_TIMER_INTERVAL 120
#define CONFIG_UDP_RECVMBOX_SIZE 6
#define CONFIG_TCP_MAXRTX 12