diff --git a/.github/configs/sdkconfig.defaults b/.github/configs/sdkconfig.defaults index 580175fef9f..58b31dd8c2b 100644 --- a/.github/configs/sdkconfig.defaults +++ b/.github/configs/sdkconfig.defaults @@ -7,3 +7,8 @@ CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=4096 # OpenThread support CONFIG_OPENTHREAD_ENABLED=y + +# Suppress deprecation warnings for legacy drivers still included in bindings +CONFIG_I2C_SUPPRESS_DEPRECATE_WARN=y +CONFIG_TWAI_SUPPRESS_DEPRECATE_WARN=y +CONFIG_TOUCH_SUPPRESS_DEPRECATE_WARN=y diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d9fd554d273..7d6a495ef56 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,14 +28,29 @@ jobs: - xtensa-esp32s2-espidf - xtensa-esp32s3-espidf idf-version: -# - v4.4.8 -# - v5.0.9 -# - v5.1.6 -# - v5.2.5 + - v4.4.8 + - v5.0.9 + - v5.1.6 + - v5.2.5 - v5.3.4 - v5.4.3 - v5.5.3 - v6.0 + exclude: + # ESP32-C6/H2 (riscv32imac) not supported before v5.1 + - target: riscv32imac-esp-espidf + idf-version: v4.4.8 + - target: riscv32imac-esp-espidf + idf-version: v5.0.9 + # ESP32-P4 (riscv32imafc) not supported before v5.3 + - target: riscv32imafc-esp-espidf + idf-version: v4.4.8 + - target: riscv32imafc-esp-espidf + idf-version: v5.0.9 + - target: riscv32imafc-esp-espidf + idf-version: v5.1.6 + - target: riscv32imafc-esp-espidf + idf-version: v5.2.5 steps: - name: Setup | Checkout uses: actions/checkout@v3 diff --git a/src/include/esp-idf/bindings.h b/src/include/esp-idf/bindings.h index 44577517ad5..950243ded35 100644 --- a/src/include/esp-idf/bindings.h +++ b/src/include/esp-idf/bindings.h @@ -82,7 +82,7 @@ #include "esp_spi_flash.h" #endif #endif -#ifdef ESP_IDF_COMP_ESP_PARTITION +#ifdef ESP_IDF_COMP_ESP_PARTITION_ENABLED #include "esp_partition.h" #endif #else @@ -251,7 +251,9 @@ #ifdef ESP_IDF_COMP_VFS_ENABLED #include "esp_vfs.h" +#if ESP_IDF_VERSION_MAJOR < 6 #include "esp_vfs_cdcacm.h" +#endif #include "esp_vfs_dev.h" #include "esp_vfs_semihost.h" #ifdef SOC_USB_SERIAL_JTAG_SUPPORTED @@ -291,9 +293,15 @@ #endif #endif +#ifdef ESP_IDF_COMP_ESP_USB_CDC_ROM_CONSOLE_ENABLED +#include "esp_vfs_cdcacm.h" +#endif + #ifdef ESP_IDF_COMP_LWIP_ENABLED #include "lwip/dns.h" +#if ESP_IDF_VERSION_MAJOR < 6 #include "lwip/lwip_napt.h" +#endif #include "lwip/netdb.h" #include "lwip/sockets.h" #if ESP_IDF_VERSION_MAJOR > 4 @@ -309,9 +317,8 @@ #endif #ifdef ESP_IDF_COMP_MBEDTLS_ENABLED -#include "mbedtls/build_info.h" #include "mbedtls/ssl.h" -#if MBEDTLS_VERSION_MAJOR < 4 +#if ESP_IDF_VERSION_MAJOR < 6 #include "mbedtls/aes.h" #include "mbedtls/cipher.h" #include "mbedtls/entropy.h" @@ -423,6 +430,11 @@ #if OLD_DRIVER_COMP_TWAI || defined(ESP_IDF_COMP_ESP_DRIVER_TWAI_ENABLED) #include "driver/twai.h" #endif +#if ESP_IDF_VERSION_MAJOR > 5 && defined(ESP_IDF_COMP_ESP_DRIVER_TWAI_ENABLED) +#include "esp_twai.h" +#include "esp_twai_types.h" +#include "esp_twai_onchip.h" +#endif // DAC #if OLD_DRIVER_COMP || defined(ESP_IDF_COMP_ESP_DRIVER_DAC_ENABLED) @@ -553,10 +565,13 @@ #include "sdmmc_cmd.h" #endif -// Sigma-delta +// Sigma-delta / SDM #if ESP_IDF_VERSION_MAJOR < 6 #include "driver/sigmadelta.h" #endif +#ifdef ESP_IDF_COMP_ESP_DRIVER_SDM_ENABLED +#include "driver/sdm.h" +#endif // SPI #if OLD_DRIVER_COMP || defined(ESP_IDF_COMP_ESP_DRIVER_SPI_ENABLED) @@ -576,7 +591,7 @@ #if OLD_DRIVER_COMP || defined(ESP_IDF_COMP_ESP_DRIVER_UART_ENABLED) #include "driver/uart.h" #include "driver/uart_select.h" -#if ESP_IDF_VERSION_MAJOR >= 5 && defined(ESP_IDF_COMP_VFS_ENABLED) +#if defined(ESP_IDF_COMP_VFS_ENABLED) && (ESP_IDF_VERSION_MAJOR > 5 || (ESP_IDF_VERSION_MAJOR == 5 && ESP_IDF_VERSION_MINOR >= 3)) #include "driver/uart_vfs.h" #endif #endif @@ -588,6 +603,58 @@ #endif #endif +// New drivers (ESP-IDF v6.0+) +#if ESP_IDF_VERSION_MAJOR > 5 + +#ifdef ESP_IDF_COMP_ESP_DRIVER_CAM_ENABLED +#include "esp_cam_ctlr.h" +#include "esp_cam_ctlr_types.h" +#ifdef SOC_MIPI_CSI_SUPPORTED +#include "esp_cam_ctlr_csi.h" +#endif +#endif + +#ifdef ESP_IDF_COMP_ESP_DRIVER_ISP_ENABLED +#ifdef SOC_ISP_SUPPORTED +#include "driver/isp.h" +#include "driver/isp_core.h" +#include "driver/isp_types.h" +#include "driver/isp_af.h" +#include "driver/isp_ae.h" +#include "driver/isp_awb.h" +#include "driver/isp_bf.h" +#include "driver/isp_ccm.h" +#include "driver/isp_gamma.h" +#include "driver/isp_hist.h" +#include "driver/isp_sharpen.h" +#endif +#endif + +#ifdef ESP_IDF_COMP_ESP_DRIVER_JPEG_ENABLED +#ifdef SOC_JPEG_CODEC_SUPPORTED +#include "driver/jpeg_types.h" +#ifdef SOC_JPEG_DECODE_SUPPORTED +#include "driver/jpeg_decode.h" +#endif +#ifdef SOC_JPEG_ENCODE_SUPPORTED +#include "driver/jpeg_encode.h" +#endif +#endif +#endif + +#ifdef ESP_IDF_COMP_ESP_DRIVER_ANA_CMPR_ENABLED +#include "driver/ana_cmpr.h" +#include "driver/ana_cmpr_types.h" +#endif + +#ifdef ESP_IDF_COMP_ESP_DRIVER_PARLIO_ENABLED +#include "driver/parlio_types.h" +#include "driver/parlio_tx.h" +#include "driver/parlio_rx.h" +#endif + +#endif // ESP_IDF_VERSION_MAJOR > 5 + #ifdef ESP_IDF_COMP_ESPCOREDUMP_ENABLED #ifdef CONFIG_ESP_COREDUMP_ENABLE #include "esp_core_dump.h" @@ -749,10 +816,8 @@ #include "esp_lcd_types.h" #include "esp_lcd_panel_interface.h" #include "esp_lcd_panel_io_interface.h" -#if ESP_IDF_VERSION_MAJOR < 6 -#if ESP_IDF_VERSION_MAJOR == 4 && ESP_IDF_VERSION_MINOR >= 4 || (ESP_IDF_VERSION_MAJOR >= 5 && ESP_IDF_VERSION_MINOR <= 2 || SOC_LCD_RGB_SUPPORTED) +#if (ESP_IDF_VERSION_MAJOR == 4 && ESP_IDF_VERSION_MINOR >= 4) || (ESP_IDF_VERSION_MAJOR == 5 && ESP_IDF_VERSION_MINOR <= 2) || defined(SOC_LCD_RGB_SUPPORTED) #include "esp_lcd_panel_rgb.h" -#endif //(ESP_IDF_VERSION_MAJOR == 4 && ESP_IDF_VERSION_MINOR >= 4) || ((ESP_IDF_VERSION_MAJOR >= 5 && ESP_IDF_VERSION_MINOR <= 2) || SOC_LCD_RGB_SUPPORTED) #endif #if ESP_IDF_VERSION_MAJOR > 5 || ESP_IDF_VERSION_MAJOR == 5 && ESP_IDF_VERSION_MINOR >= 3 #include "esp_lcd_panel_dev.h"