Skip to content

Commit 6fe19f7

Browse files
authored
Merge pull request #10676 from tannewt/idf5.5.1
Update ESP-IDF to 5.5.1
2 parents 799f13c + 8b1fcb4 commit 6fe19f7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+604
-110
lines changed

.gitmodules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@
143143
[submodule "ports/espressif/esp-idf"]
144144
path = ports/espressif/esp-idf
145145
url = https://github.com/adafruit/esp-idf.git
146-
branch = circuitpython-v5.4.1
146+
branch = circuitpython-v5.5.1
147147
[submodule "ports/espressif/esp-protocols"]
148148
path = ports/espressif/esp-protocols
149149
url = https://github.com/adafruit/esp-protocols.git

lib/tinyusb

Submodule tinyusb updated 240 files

ports/espressif/Makefile

Lines changed: 54 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ include ../../py/circuitpy_mkenv.mk
88

99
ifeq ($(IDF_TARGET),esp32s3)
1010
BT_IDF_TARGET = esp32c3
11+
else ifeq ($(IDF_TARGET),esp32c61)
12+
BT_IDF_TARGET = esp32c6
1113
else
1214
BT_IDF_TARGET = $(IDF_TARGET)
1315
endif
@@ -64,6 +66,7 @@ INC += \
6466
-isystem esp-idf/components/esp_driver_i2s/include \
6567
-isystem esp-idf/components/esp_driver_$(IDF_TARGET)/include \
6668
-isystem esp-idf/components/esp_driver_ledc/include \
69+
-isystem esp-idf/components/esp_driver_parlio/include \
6770
-isystem esp-idf/components/esp_driver_pcnt/include \
6871
-isystem esp-idf/components/esp_driver_rmt/include \
6972
-isystem esp-idf/components/esp_driver_sdio/include \
@@ -149,20 +152,26 @@ CFLAGS += -DSTACK_CANARY_VALUE=0xa5a5a5a5
149152
REGISTRATION_FUNCTIONS = \
150153
-u ld_include_highint_hdl \
151154
-u __cxx_fatal_exception \
155+
-u __cxx_init_dummy \
156+
-u __cxa_guard_dummy \
152157
-u esp_app_desc \
153158
-u esp_timer_init_include_func \
154159
-u uart_vfs_include_dev_init \
155160
-u esp_vfs_include_console_register \
156161
-u __ubsan_include \
157162
-u esp_system_include_startup_funcs \
158163
-u esp_efuse_startup_include_func \
159-
-u newlib_include_heap_impl \
160-
-u newlib_include_syscalls_impl \
161-
-u newlib_include_pthread_impl \
162-
-u newlib_include_assert_impl \
163-
-u newlib_include_init_funcs \
164+
-u esp_libc_include_heap_impl \
165+
-u esp_libc_include_reent_syscalls_impl \
166+
-u esp_libc_include_syscalls_impl \
167+
-u esp_libc_include_pthread_impl \
168+
-u esp_libc_include_assert_impl \
169+
-u esp_libc_include_getentropy_impl \
170+
-u esp_libc_include_init_funcs \
171+
-u esp_libc_init_funcs \
164172
-u include_esp_phy_override \
165-
-u vfs_include_syscalls_impl
173+
-u vfs_include_syscalls_impl \
174+
-u esp_vfs_include_nullfs_register
166175

167176

168177
#Debugging/Optimization
@@ -196,7 +205,6 @@ CFLAGS += $(INC) -Werror -Wall -std=gnu11 -Wl,--gc-sections $(BASE_CFLAGS) $(C_D
196205
# Most current ESPs have nano versions of newlib in ROM so we use them.
197206
ifneq ($(IDF_TARGET),esp32c6)
198207
CFLAGS += --specs=nano.specs
199-
LDFLAGS += -T$(IDF_TARGET).rom.newlib-nano.ld
200208
else
201209
LDFLAGS += -T$(IDF_TARGET).rom.newlib-normal.ld
202210
endif
@@ -222,7 +230,6 @@ else ifeq ($(IDF_TARGET_ARCH),riscv)
222230
-Trom.api.ld
223231
endif
224232

225-
$(BUILD)/lib/tlsf/tlsf.o: CFLAGS += -Wno-cast-align
226233

227234
LDFLAGS += $(CFLAGS) -Wl,-nostdlib -Wl,-Map=$@.map -Wl,-cref -Wl,--undefined=uxTopUsedPriority
228235

@@ -244,7 +251,9 @@ LDFLAGS += \
244251
ifeq ($(IDF_TARGET),esp32)
245252
LDFLAGS += \
246253
-Tesp32.rom.newlib-data.ld \
247-
-Tesp32.rom.newlib-funcs.ld \
254+
-Tesp32.rom.syscalls.ld \
255+
-Tesp32.rom.libc-funcs.ld \
256+
-Tesp32.rom.newlib-reent-funcs.ld \
248257
-Tesp32.rom.spiflash_legacy.ld
249258

250259
CHIP_COMPONENTS = \
@@ -254,7 +263,9 @@ else ifeq ($(IDF_TARGET),esp32c2)
254263
LDFLAGS += \
255264
-Tesp32c2.rom.ble.ld \
256265
-Tesp32c2.rom.heap.ld \
266+
-Tesp32c2.rom.libc.ld \
257267
-Tesp32c2.rom.newlib.ld \
268+
-Tesp32c2.rom.newlib-nano.ld \
258269
-Tesp32c2.rom.version.ld \
259270
-Tesp32c2.rom.systimer.ld \
260271
-Tesp32c2.rom.wdt.ld
@@ -267,6 +278,7 @@ CHIP_COMPONENTS = \
267278
else ifeq ($(IDF_TARGET),esp32c3)
268279
LDFLAGS += \
269280
-Tesp32c3.rom.newlib.ld \
281+
-Tesp32c3.rom.libc.ld \
270282
-Tesp32c3.rom.version.ld \
271283
-Tesp32c3.rom.eco3_bt_funcs.ld \
272284
-Tesp32c3.rom.eco3.ld \
@@ -280,18 +292,37 @@ LDFLAGS += \
280292
-Tesp32c6.rom.phy.ld \
281293
-Tesp32c6.rom.pp.ld \
282294
-Tesp32c6.rom.net80211.ld \
295+
-Tesp32c6.rom.libc.ld \
283296
-Tesp32c6.rom.newlib.ld \
284297
-Tesp32c6.rom.coexist.ld \
285298
-Tesp32c6.rom.heap.ld \
286299
-Tesp32c6.rom.systimer.ld \
287300
-Tesp32c6.rom.wdt.ld
288301

289302

303+
CHIP_COMPONENTS = \
304+
esp_driver_tsens
305+
306+
else ifeq ($(IDF_TARGET),esp32c61)
307+
LDFLAGS += \
308+
-Tesp32c61.rom.phy.ld \
309+
-Tesp32c61.rom.pp.ld \
310+
-Tesp32c61.rom.net80211.ld \
311+
-Tesp32c61.rom.libc.ld \
312+
-Tesp32c61.rom.newlib.ld \
313+
-Tesp32c61.rom.version.ld \
314+
-Tesp32c61.rom.coexist.ld \
315+
-Tesp32c61.rom.heap.ld \
316+
-Tesp32c61.rom.systimer.ld \
317+
-Tesp32c61.rom.wdt.ld
318+
319+
290320
CHIP_COMPONENTS = \
291321
esp_driver_tsens
292322

293323
else ifeq ($(IDF_TARGET),esp32p4)
294324
LDFLAGS += \
325+
-Tesp32p4.rom.libc.ld \
295326
-Tesp32p4.rom.newlib.ld \
296327
-Tesp32p4.rom.systimer.ld \
297328
-Tesp32p4.rom.wdt.ld
@@ -303,6 +334,7 @@ CHIP_COMPONENTS = \
303334
else ifeq ($(IDF_TARGET),esp32h2)
304335
LDFLAGS += \
305336
-Tesp32h2.rom.heap.ld \
337+
-Tesp32h2.rom.libc.ld \
306338
-Tesp32h2.rom.newlib.ld \
307339
-Tesp32h2.rom.systimer.ld \
308340
-Tesp32h2.rom.wdt.ld
@@ -312,8 +344,9 @@ CHIP_COMPONENTS = \
312344

313345
else ifeq ($(IDF_TARGET),esp32s2)
314346
LDFLAGS += \
347+
-Tesp32s2.rom.libc-funcs.ld \
315348
-Tesp32s2.rom.newlib-data.ld \
316-
-Tesp32s2.rom.newlib-funcs.ld \
349+
-Tesp32s2.rom.newlib-reent-funcs.ld \
317350
-Tesp32s2.rom.spiflash_legacy.ld
318351

319352
CHIP_COMPONENTS = \
@@ -322,6 +355,7 @@ CHIP_COMPONENTS = \
322355

323356
else ifeq ($(IDF_TARGET),esp32s3)
324357
LDFLAGS += \
358+
-Tesp32s3.rom.libc.ld \
325359
-Tesp32s3.rom.newlib.ld \
326360
-Tesp32s3.rom.version.ld \
327361
-Tesp32s3.rom.systimer.ld \
@@ -350,6 +384,8 @@ else ifeq ($(IDF_TARGET),esp32c3)
350384
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_ESP32C3
351385
else ifeq ($(IDF_TARGET),esp32c6)
352386
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_ESP32C6
387+
else ifeq ($(IDF_TARGET),esp32c61)
388+
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_ESP32C61
353389
else ifeq ($(IDF_TARGET),esp32p4)
354390
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_ESP32P4
355391
else ifeq ($(IDF_TARGET),esp32h2)
@@ -662,7 +698,8 @@ ifneq ($(IDF_TARGET),esp32p4)
662698
BINARY_BLOBS = esp-idf/components/esp_phy/lib/$(IDF_TARGET)/libphy.a
663699
endif
664700
ifneq ($(CIRCUITPY_WIFI),0)
665-
BINARY_BLOBS += esp-idf/components/esp_coex/lib/$(IDF_TARGET)/libcoexist.a $(addprefix esp-idf/components/esp_wifi/lib/$(IDF_TARGET)/, $(BINARY_WIFI_BLOBS))
701+
BINARY_BLOBS += $(addprefix esp-idf/components/esp_wifi/lib/$(IDF_TARGET)/, $(BINARY_WIFI_BLOBS))
702+
BINARY_BLOBS += esp-idf/components/esp_coex/lib/$(IDF_TARGET)/libcoexist.a
666703
ifneq ($(IDF_TARGET),esp32c2)
667704
BINARY_BLOBS += $(addprefix esp-idf/components/esp_wifi/lib/$(IDF_TARGET)/, libmesh.a libwapi.a)
668705
endif
@@ -682,6 +719,7 @@ ifneq ($(CIRCUITPY_BLEIO_NATIVE),0)
682719
BLE_IMPL_esp32c2 := libble
683720
BLE_IMPL_esp32c3 := esp32c3
684721
BLE_IMPL_esp32c6 := libble
722+
BLE_IMPL_esp32c61 := libble
685723
BLE_IMPL_esp32h2 := libble
686724
BLE_IMPL = $(BLE_IMPL_$(IDF_TARGET))
687725

@@ -700,8 +738,8 @@ ifneq ($(CIRCUITPY_BLEIO_NATIVE),0)
700738

701739
ifeq ($(BLE_IMPL),libble)
702740
BINARY_BLOBS += esp-idf/components/esp_phy/lib/$(IDF_TARGET)/libbtbb.a
703-
ifeq ($(IDF_TARGET),esp32c6)
704-
BINARY_BLOBS += esp-idf/components/bt/controller/lib_$(IDF_TARGET)/$(IDF_TARGET)-bt-lib/$(IDF_TARGET)/libble_app.a
741+
ifeq ($(BT_IDF_TARGET),esp32c6)
742+
BINARY_BLOBS += esp-idf/components/bt/controller/lib_$(BT_IDF_TARGET)/$(BT_IDF_TARGET)-bt-lib/$(IDF_TARGET)/libble_app.a
705743
else
706744
BINARY_BLOBS += esp-idf/components/bt/controller/lib_$(IDF_TARGET)/$(IDF_TARGET)-bt-lib/libble_app.a
707745
endif
@@ -769,6 +807,8 @@ else ifeq ($(IDF_TARGET),esp32c3)
769807
BOOTLOADER_OFFSET = 0x0
770808
else ifeq ($(IDF_TARGET),esp32c6)
771809
BOOTLOADER_OFFSET = 0x0
810+
else ifeq ($(IDF_TARGET),esp32c61)
811+
BOOTLOADER_OFFSET = 0x0
772812
else ifeq ($(IDF_TARGET),esp32p4)
773813
BOOTLOADER_OFFSET = 0x2000
774814
else ifeq ($(IDF_TARGET),esp32s3)
@@ -782,7 +822,7 @@ endif
782822

783823
IDF_CMAKE_TARGETS = \
784824
bootloader/bootloader.bin \
785-
esp-idf/esp_system/__ldgen_output_sections.ld \
825+
__ldgen_output_sections.ld \
786826
$(foreach component, $(ESP_IDF_COMPONENTS_LINK), esp-idf/$(component)/lib$(component).a)
787827

788828
PARTITION_TABLE_OFFSET = 0x8000

ports/espressif/boards/ai_thinker_esp32-c3s-2m/sdkconfig

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,18 @@
99
#
1010
# end of LWIP
1111

12+
#
13+
# Wireless Coexistence
14+
#
15+
# CONFIG_ESP_COEX_SW_COEXIST_ENABLE is not set
16+
# end of Wireless Coexistence
17+
18+
#
19+
# LibC
20+
#
21+
# CONFIG_LIBC_OPTIMIZED_MISALIGNED_ACCESS is not set
22+
# end of LibC
23+
1224
# end of Component config
1325

1426
# end of Espressif IoT Development Framework Configuration
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// This file is part of the CircuitPython project: https://circuitpython.org
2+
//
3+
// SPDX-FileCopyrightText: Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
4+
//
5+
// SPDX-License-Identifier: MIT
6+
7+
#include "supervisor/board.h"
8+
9+
// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here.
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// This file is part of the CircuitPython project: https://circuitpython.org
2+
//
3+
// SPDX-FileCopyrightText: Copyright (c) 2019 Scott Shawcroft for Adafruit Industries
4+
//
5+
// SPDX-License-Identifier: MIT
6+
7+
#pragma once
8+
9+
// Micropython setup
10+
11+
#define MICROPY_HW_BOARD_NAME "ESP32-C61-DevKitC-1-N8R2"
12+
#define MICROPY_HW_MCU_NAME "ESP32C61"
13+
14+
#define DEFAULT_UART_BUS_RX (&pin_GPIO10)
15+
#define DEFAULT_UART_BUS_TX (&pin_GPIO11)
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
CIRCUITPY_CREATOR_ID = 0x000C303A
2+
CIRCUITPY_CREATION_ID = 0x00C61001
3+
4+
IDF_TARGET = esp32c61
5+
IDF_TARGET_ARCH = riscv
6+
7+
CIRCUITPY_ESP_FLASH_MODE = qio
8+
CIRCUITPY_ESP_FLASH_FREQ = 80m
9+
CIRCUITPY_ESP_FLASH_SIZE = 8MB
10+
11+
CIRCUITPY_ESP_PSRAM_SIZE = 2MB
12+
CIRCUITPY_ESP_PSRAM_MODE = qio
13+
CIRCUITPY_ESP_PSRAM_FREQ = 80m
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
// This file is part of the CircuitPython project: https://circuitpython.org
2+
//
3+
// SPDX-FileCopyrightText: Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
4+
//
5+
// SPDX-License-Identifier: MIT
6+
7+
#include "shared-bindings/board/__init__.h"
8+
9+
static const mp_rom_map_elem_t board_module_globals_table[] = {
10+
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
11+
12+
{ MP_ROM_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) },
13+
{ MP_ROM_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) },
14+
{ MP_ROM_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) },
15+
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
16+
{ MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) },
17+
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
18+
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
19+
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
20+
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
21+
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
22+
{ MP_ROM_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) },
23+
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
24+
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
25+
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
26+
{ MP_ROM_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) },
27+
{ MP_ROM_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) },
28+
{ MP_ROM_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) },
29+
{ MP_ROM_QSTR(MP_QSTR_IO18), MP_ROM_PTR(&pin_GPIO18) },
30+
{ MP_ROM_QSTR(MP_QSTR_IO19), MP_ROM_PTR(&pin_GPIO19) },
31+
{ MP_ROM_QSTR(MP_QSTR_IO20), MP_ROM_PTR(&pin_GPIO20) },
32+
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
33+
{ MP_ROM_QSTR(MP_QSTR_IO22), MP_ROM_PTR(&pin_GPIO22) },
34+
{ MP_ROM_QSTR(MP_QSTR_IO23), MP_ROM_PTR(&pin_GPIO23) },
35+
{ MP_ROM_QSTR(MP_QSTR_IO24), MP_ROM_PTR(&pin_GPIO24) },
36+
{ MP_ROM_QSTR(MP_QSTR_IO25), MP_ROM_PTR(&pin_GPIO25) },
37+
{ MP_ROM_QSTR(MP_QSTR_IO26), MP_ROM_PTR(&pin_GPIO26) },
38+
{ MP_ROM_QSTR(MP_QSTR_IO27), MP_ROM_PTR(&pin_GPIO27) },
39+
{ MP_ROM_QSTR(MP_QSTR_IO28), MP_ROM_PTR(&pin_GPIO28) },
40+
{ MP_ROM_QSTR(MP_QSTR_IO29), MP_ROM_PTR(&pin_GPIO29) },
41+
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO8) },
42+
43+
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO11) },
44+
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO10) },
45+
46+
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
47+
};
48+
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#
2+
# Espressif IoT Development Framework Configuration
3+
#
4+
#
5+
# Component config
6+
#
7+
#
8+
# LWIP
9+
#
10+
# end of LWIP
11+
12+
# end of Component config
13+
14+
# end of Espressif IoT Development Framework Configuration

0 commit comments

Comments
 (0)