Update all target sdkconfig

This commit is contained in:
Scott Shawcroft 2023-09-21 13:52:47 -07:00
parent 6649b17fb5
commit 16d1dc2be0
No known key found for this signature in database
GPG Key ID: 0DFD512649C052DA
19 changed files with 127 additions and 174 deletions

View File

@ -77,6 +77,7 @@ INC += \
-isystem esp-idf/components/bt/host/nimble/port/include \
-isystem esp-idf/components/driver/include \
-isystem esp-idf/components/driver/deprecated \
-isystem esp-idf/components/driver/dac/include \
-isystem esp-idf/components/driver/gpio/include \
-isystem esp-idf/components/driver/i2c/include \
-isystem esp-idf/components/driver/i2s/include \

View File

@ -27,7 +27,7 @@
#include "supervisor/board.h"
#include "mpconfigboard.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "components/driver/include/driver/gpio.h"
#include "components/driver/gpio/include/driver/gpio.h"
#include "components/hal/include/hal/gpio_hal.h"
#include "common-hal/microcontroller/Pin.h"

View File

@ -4,7 +4,6 @@
#
# Component config
#
#
# LWIP
#

View File

@ -1,41 +1,28 @@
CONFIG_ESP32S3_SPIRAM_SUPPORT=y
#
# SPI RAM config
# Espressif IoT Development Framework Configuration
#
# CONFIG_SPIRAM_MODE_QUAD is not set
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_SPIRAM_TYPE_AUTO=y
# end of SPI RAM config
#
# Component config
#
#
# ESP System Settings
#
CONFIG_ESP_CONSOLE_UART_CUSTOM=y
# CONFIG_ESP_CONSOLE_NONE is not set
CONFIG_ESP_CONSOLE_UART=y
CONFIG_ESP_CONSOLE_UART_CUSTOM_NUM_0=y
CONFIG_ESP_CONSOLE_UART_NUM=0
CONFIG_ESP_CONSOLE_UART_TX_GPIO=43
CONFIG_ESP_CONSOLE_UART_RX_GPIO=44
CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
# end of ESP System Settings
CONFIG_DEFAULT_PSRAM_CLK_IO=30
#
# PSRAM Clock and CS IO for ESP32S3
#
CONFIG_DEFAULT_PSRAM_CS_IO=26
# end of PSRAM Clock and CS IO for ESP32S3
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
# CONFIG_SPIRAM_RODATA is not set
CONFIG_SPIRAM_SPEED_80M=y
# CONFIG_SPIRAM_SPEED_40M is not set
CONFIG_SPIRAM=y
CONFIG_SPIRAM_BOOT_INIT=y
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
CONFIG_SPIRAM_USE_MEMMAP=y
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
# CONFIG_SPIRAM_USE_MALLOC is not set
CONFIG_SPIRAM_MEMTEST=y
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="circuitpy"
# end of LWIP
#
# CONFIG_ESP_CONSOLE_NONE is not set
CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
CONFIG_ESP_CONSOLE_UART_CUSTOM_NUM_0=y
CONFIG_ESP_CONSOLE_UART_CUSTOM=y
CONFIG_ESP_CONSOLE_UART_NUM=0
CONFIG_ESP_CONSOLE_UART_RX_GPIO=44
CONFIG_ESP_CONSOLE_UART_TX_GPIO=43
CONFIG_ESP_CONSOLE_UART=y
# end of Component config
# end of Espressif IoT Development Framework Configuration

View File

@ -41,7 +41,11 @@
// is set. Any memory not allocated by us can be used by the ESP-IDF for heap or other purposes.
// Use half of RTC_SLOW_MEM or RTC_FAST_MEM.
#define SLEEP_MEMORY_LENGTH (4096)
#ifdef CONFIG_IDF_TARGET_ESP32
#define SLEEP_MEMORY_LENGTH (3 * 1024)
#else
#define SLEEP_MEMORY_LENGTH (4 * 1024)
#endif
typedef struct {
mp_obj_base_t base;

View File

@ -103,7 +103,7 @@ uint16_t common_hal_analogio_analogin_get_value(analogio_analogin_obj_t *self) {
adc_cali_scheme_ver_t supported_schemes;
adc_cali_check_scheme(&supported_schemes);
adc_cali_scheme_ver_t calibration_scheme;
adc_cali_scheme_ver_t calibration_scheme = 0;
adc_cali_handle_t calibration;
#if defined(ADC_CALI_SCHEME_CURVE_FITTING_SUPPORTED) && ADC_CALI_SCHEME_CURVE_FITTING_SUPPORTED
@ -124,7 +124,7 @@ uint16_t common_hal_analogio_analogin_get_value(analogio_analogin_obj_t *self) {
.atten = ATTENUATION,
.bitwidth = DATA_WIDTH,
#ifdef CONFIG_IDF_TARGET_ESP32
.default_vref = DEFAULT_VREF;
.default_vref = DEFAULT_VREF,
#endif
};
if (adc_cali_create_scheme_line_fitting(&config, &calibration) == ESP_OK) {

View File

@ -35,63 +35,69 @@
#include "shared-bindings/microcontroller/Pin.h"
#include "supervisor/shared/translate/translate.h"
#if defined(CONFIG_IDF_TARGET_ESP32) || defined(CONFIG_IDF_TARGET_ESP32S2)
#include "components/driver/include/driver/dac_common.h"
#define HAS_DAC 1
#ifdef SOC_DAC_SUPPORTED
#include "driver/dac_oneshot.h"
#if defined(CONFIG_IDF_TARGET_ESP32)
#define pin_CHANNEL_1 pin_GPIO25
#define pin_CHANNEL_2 pin_GPIO26
#define pin_CHANNEL_0 pin_GPIO25
#define pin_CHANNEL_1 pin_GPIO26
#elif defined(CONFIG_IDF_TARGET_ESP32S2)
#define pin_CHANNEL_1 pin_GPIO17
#define pin_CHANNEL_2 pin_GPIO18
#define pin_CHANNEL_0 pin_GPIO17
#define pin_CHANNEL_1 pin_GPIO18
#endif
#else
#define HAS_DAC 0
static dac_oneshot_handle_t _active_handles[SOC_DAC_CHAN_NUM];
#endif
void common_hal_analogio_analogout_construct(analogio_analogout_obj_t *self,
const mcu_pin_obj_t *pin) {
#if HAS_DAC
if (pin == &pin_CHANNEL_1) {
self->channel = DAC_CHANNEL_1;
} else if (pin == &pin_CHANNEL_2) {
self->channel = DAC_CHANNEL_2;
#ifdef SOC_DAC_SUPPORTED
if (pin == &pin_CHANNEL_0) {
self->channel = DAC_CHAN_0;
} else if (pin == &pin_CHANNEL_1) {
self->channel = DAC_CHAN_1;
} else {
raise_ValueError_invalid_pin();
}
dac_output_enable(self->channel);
dac_oneshot_config_t config = {
.chan_id = self->channel
};
dac_oneshot_new_channel(&config, &self->handle);
_active_handles[self->channel] = self->handle;
#else
mp_raise_NotImplementedError(NULL);
#endif
}
bool common_hal_analogio_analogout_deinited(analogio_analogout_obj_t *self) {
#if HAS_DAC
return self->channel == DAC_CHANNEL_MAX;
#ifdef SOC_DAC_SUPPORTED
return self->handle == NULL;
#else
return false;
#endif
}
void common_hal_analogio_analogout_deinit(analogio_analogout_obj_t *self) {
#if HAS_DAC
dac_output_disable(self->channel);
self->channel = DAC_CHANNEL_MAX;
#ifdef SOC_DAC_SUPPORTED
dac_oneshot_del_channel(self->handle);
self->handle = NULL;
_active_handles[self->channel] = NULL;
#endif
}
void common_hal_analogio_analogout_set_value(analogio_analogout_obj_t *self,
uint16_t value) {
#if HAS_DAC
#ifdef SOC_DAC_SUPPORTED
uint8_t dac_value = (value * 255) / 65535;
dac_output_enable(self->channel);
dac_output_voltage(self->channel, dac_value);
dac_oneshot_output_voltage(self->handle, dac_value);
#endif
}
void analogout_reset(void) {
#if HAS_DAC
dac_output_disable(DAC_CHANNEL_1);
dac_output_disable(DAC_CHANNEL_2);
#ifdef SOC_DAC_SUPPORTED
for (uint8_t c = 0; c < SOC_DAC_CHAN_NUM; c++) {
dac_oneshot_del_channel(_active_handles[c]);
_active_handles[c] = NULL;
}
#endif
}

View File

@ -30,12 +30,17 @@
#include "common-hal/microcontroller/Pin.h"
#ifdef SOC_DAC_SUPPORTED
#include "esp-idf/components/driver/dac/include/driver/dac_oneshot.h"
#endif
#include "py/obj.h"
typedef struct {
mp_obj_base_t base;
const mcu_pin_obj_t *pin;
#ifdef SOC_DAC_SUPPORTED
dac_oneshot_handle_t handle;
uint8_t channel;
#endif
} analogio_analogout_obj_t;
void analogout_reset(void);

View File

@ -39,7 +39,7 @@
#include "hal/twai_ll.h"
#if SOC_TWAI_CONTROLLER_NUM > 1 || !defined(TWAI)
#if !defined(TWAI) && defined(TWAI0)
#define TWAI TWAI0
#endif

View File

@ -1,95 +1,21 @@
#
# Bootloader config
# Espressif IoT Development Framework Configuration
#
CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y
# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG is not set
# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF is not set
# CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_NONE is not set
# CONFIG_BOOTLOADER_LOG_LEVEL_NONE is not set
# CONFIG_BOOTLOADER_LOG_LEVEL_ERROR is not set
# CONFIG_BOOTLOADER_LOG_LEVEL_WARN is not set
CONFIG_BOOTLOADER_LOG_LEVEL_INFO=y
# CONFIG_BOOTLOADER_LOG_LEVEL_DEBUG is not set
# CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE is not set
# end of Bootloader config
# CONFIG_COMPILER_OPTIMIZATION_DEFAULT is not set
#
# Compiler options
#
CONFIG_COMPILER_OPTIMIZATION_SIZE=y
# CONFIG_COMPILER_OPTIMIZATION_PERF is not set
# CONFIG_COMPILER_OPTIMIZATION_NONE is not set
CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y
# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT is not set
# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is not set
CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL=2
# CONFIG_COMPILER_OPTIMIZATION_CHECKS_SILENT is not set
# end of Compiler options
CONFIG_ESP_ERR_TO_NAME_LOOKUP=y
#
# Component config
#
#
# ESP System Settings
#
CONFIG_ESP_SYSTEM_PANIC_PRINT_HALT=y
# CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT is not set
# CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT is not set
# CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is not set
# end of ESP System Settings
CONFIG_ESP_CONSOLE_UART_DEFAULT=y
# CONFIG_ESP_CONSOLE_USB_CDC is not set
# CONFIG_ESP_CONSOLE_UART_CUSTOM is not set
# CONFIG_ESP_CONSOLE_NONE is not set
CONFIG_ESP_CONSOLE_UART=y
CONFIG_ESP_CONSOLE_MULTIPLE_UART=y
CONFIG_ESP_CONSOLE_UART_NUM=0
CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
#
# FreeRTOS
#
CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION=y
CONFIG_FREERTOS_ASSERT_FAIL_ABORT=y
# CONFIG_FREERTOS_ASSERT_FAIL_PRINT_CONTINUE is not set
# CONFIG_FREERTOS_ASSERT_DISABLE is not set
CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=y
CONFIG_FREERTOS_DEBUG_OCDAWARE=y
# end of FreeRTOS
# end of Component config
CONFIG_HAL_ASSERTION_EQUALS_SYSTEM=y
#
# Hardware Abstraction Layer (HAL) and Low Level (LL)
#
# CONFIG_HAL_ASSERTION_DISABLE is not set
# CONFIG_HAL_ASSERTION_SILENT is not set
# CONFIG_HAL_ASSERTION_ENABLE is not set
CONFIG_HAL_DEFAULT_ASSERTION_LEVEL=2
# end of Hardware Abstraction Layer (HAL) and Low Level (LL)
#
# Log output
#
# CONFIG_LOG_DEFAULT_LEVEL_NONE is not set
# CONFIG_LOG_DEFAULT_LEVEL_ERROR is not set
# CONFIG_LOG_DEFAULT_LEVEL_WARN is not set
CONFIG_LOG_DEFAULT_LEVEL_INFO=y
# CONFIG_LOG_DEFAULT_LEVEL_DEBUG is not set
# CONFIG_LOG_DEFAULT_LEVEL_VERBOSE is not set
# end of Log output
CONFIG_LWIP_ESP_LWIP_ASSERT=y
#
# Deprecated options for backward compatibility
#
CONFIG_COMPILER_OPTIMIZATION_LEVEL_DEBUG=y
# CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE is not set
CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED=y
# CONFIG_OPTIMIZATION_ASSERTIONS_SILENT is not set
# CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED is not set
CONFIG_OPTIMIZATION_ASSERTION_LEVEL=2
CONFIG_CONSOLE_UART_DEFAULT=y
# CONFIG_CONSOLE_UART_CUSTOM is not set
# CONFIG_ESP_CONSOLE_UART_NONE is not set
CONFIG_CONSOLE_UART_NUM=0
CONFIG_CONSOLE_UART_BAUDRATE=115200
# end of Deprecated options for backward compatibility
# end of Espressif IoT Development Framework Configuration

View File

@ -51,8 +51,6 @@ CONFIG_ESP_IPC_TASK_STACK_SIZE=1536
#
# Wi-Fi
#
CONFIG_ESP32_WIFI_STATIC_TX_BUFFER=y
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=16
# CONFIG_ESP_WIFI_STA_DISCONNECTED_PM_ENABLE is not set
# end of Wi-Fi

View File

@ -17,8 +17,8 @@ CONFIG_BT_NIMBLE_NVS_PERSIST=y
#
# Memory Settings
#
CONFIG_BT_NIMBLE_ACL_BUF_COUNT=20
CONFIG_BT_NIMBLE_HCI_EVT_BUF_SIZE=70
CONFIG_BT_NIMBLE_TRANSPORT_ACL_FROM_LL_COUNT=20
CONFIG_BT_NIMBLE_TRANSPORT_EVT_SIZE=70
# end of Memory Settings
CONFIG_BT_NIMBLE_EXT_ADV=y
@ -52,10 +52,7 @@ CONFIG_I2S_SUPPRESS_DEPRECATE_WARN=y
#
# Wi-Fi
#
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=4
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=8
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=16
# CONFIG_ESP32_WIFI_NVS_ENABLED is not set
CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=4
# end of Wi-Fi
#

View File

@ -49,12 +49,9 @@ CONFIG_ESP32S2_RTCDATA_IN_FAST_MEM=y
#
# Wi-Fi
#
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=4
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=8
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=16
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=8
CONFIG_ESP32_WIFI_RX_BA_WIN=4
# CONFIG_ESP32_WIFI_NVS_ENABLED is not set
CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=4
CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM=16
CONFIG_ESP_WIFI_RX_BA_WIN=4
# end of Wi-Fi
#

View File

@ -18,8 +18,8 @@ CONFIG_BT_NIMBLE_NVS_PERSIST=y
#
# Memory Settings
#
CONFIG_BT_NIMBLE_ACL_BUF_COUNT=20
CONFIG_BT_NIMBLE_HCI_EVT_BUF_SIZE=70
CONFIG_BT_NIMBLE_TRANSPORT_ACL_FROM_LL_COUNT=20
CONFIG_BT_NIMBLE_TRANSPORT_EVT_SIZE=70
# end of Memory Settings
CONFIG_BT_NIMBLE_EXT_ADV=y
@ -79,11 +79,8 @@ CONFIG_ESP_IPC_TASK_STACK_SIZE=1536
#
# Wi-Fi
#
CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=4
CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=8
CONFIG_ESP32_WIFI_CACHE_TX_BUFFER_NUM=16
CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=16
# CONFIG_ESP32_WIFI_NVS_ENABLED is not set
CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=4
CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM=16
# end of Wi-Fi
#

View File

@ -1,10 +1,14 @@
# CONFIG_ESPTOOLPY_FLASHFREQ_120M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_80M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_64M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_60M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_48M is not set
CONFIG_ESPTOOLPY_FLASHFREQ_40M=y
# CONFIG_ESPTOOLPY_FLASHFREQ_32M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_30M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_26M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_24M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_20M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_16M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_15M is not set
# CONFIG_ESPTOOLPY_FLASHFREQ_80M_DEFAULT is not set

View File

@ -16,6 +16,12 @@ CONFIG_SPIRAM_USE_MEMMAP=y
# end of ESP PSRAM
#
# Wi-Fi
#
CONFIG_ESP_WIFI_CACHE_TX_BUFFER_NUM=16
# end of Wi-Fi
# end of Component config
# end of Espressif IoT Development Framework Configuration

View File

@ -45,7 +45,7 @@ CONFIG_ESP_MAIN_TASK_STACK_SIZE=16384
# Wi-Fi
#
CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM=8
CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER_NUM=16
CONFIG_ESP_WIFI_STATIC_TX_BUFFER=y
# CONFIG_ESP_WIFI_NVS_ENABLED is not set
# end of Wi-Fi
@ -132,4 +132,5 @@ CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=4096
# end of Component config
CONFIG_IDF_EXPERIMENTAL_FEATURES=y
# end of Espressif IoT Development Framework Configuration

View File

@ -164,6 +164,7 @@ def update(debug, board, update_all):
board_make = pathlib.Path(f"boards/{board}/mpconfigboard.mk")
psram_size = "0"
uf2_bootloader = None
ble_enabled = None
for line in board_make.read_text().split("\n"):
if "=" not in line or line.startswith("#"):
continue
@ -174,6 +175,11 @@ def update(debug, board, update_all):
target = value
if uf2_bootloader is None:
uf2_bootloader = target not in ("esp32", "esp32c3", "esp32c6", "esp32h2")
if ble_enabled is None:
ble_enabled = target not in (
"esp32",
"esp32s2",
) # ESP32 is disabled by us. S2 doesn't support it.
elif key == "CIRCUITPY_ESP_FLASH_SIZE":
flash_size = value
elif key == "CIRCUITPY_ESP_FLASH_MODE":
@ -188,6 +194,8 @@ def update(debug, board, update_all):
psram_freq = value
elif key == "UF2_BOOTLOADER":
uf2_bootloader = not (value == "0")
elif key == "CIRCUITPY_BLEIO":
ble_enabled = not (value == "0")
os.environ["IDF_TARGET"] = target
os.environ[
@ -232,8 +240,9 @@ def update(debug, board, update_all):
sdkconfigs.extend((psram_config, psram_size_config, psram_mode_config, psram_freq_config))
target_config = pathlib.Path(f"esp-idf-config/sdkconfig-{target}.defaults")
sdkconfigs.append(target_config)
ble_config = pathlib.Path(f"esp-idf-config/sdkconfig-ble.defaults")
sdkconfigs.append(ble_config)
if ble_enabled:
ble_config = pathlib.Path(f"esp-idf-config/sdkconfig-ble.defaults")
sdkconfigs.append(ble_config)
board_config = pathlib.Path(f"boards/{board}/sdkconfig")
# Don't include the board file in cp defaults. The board may have custom
# overrides.
@ -349,15 +358,29 @@ def update(debug, board, update_all):
first = False
target_kconfig_snippets.add(loc)
target_symbols = target_symbols.union(differing_keys)
# kconfig settings can be set by others. item.referenced doesn't
# know this. So we collect all things that reference this using
# rev_dep.
all_references = set(item.referenced)
to_unpack = [item.rev_dep]
while to_unpack:
rdep = to_unpack.pop()
if isinstance(rdep, tuple):
to_unpack.extend(rdep)
elif isinstance(rdep, int):
# skip logic
pass
else:
all_references.add(rdep)
all_references.update(rdep.referenced)
psram_reference = False
for referenced in item.referenced:
for referenced in all_references:
if referenced.name.startswith("IDF_TARGET"):
target_reference = True
break
if referenced.name in target_symbols:
# Implicit target symbols
target_reference = True
break
if referenced.name == "SPIRAM":
psram_reference = True

View File

@ -95,7 +95,9 @@ def check_vid_pid(files, clusterlist):
if duplicates are found, and lists the duplicates.
"""
usb_pattern = re.compile(r"^CIRCUITPY_USB\s*=\s*0$|^IDF_TARGET = (esp32|esp32c3)$", flags=re.M)
usb_pattern = re.compile(
r"^CIRCUITPY_USB\s*=\s*0$|^IDF_TARGET = (esp32|esp32c3|esp32c6|esp32h2)$", flags=re.M
)
usb_ids = defaultdict(set)
for board_config in files: