# ESP32 board configuration

# Copyright (c) 2017 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

if SOC_ESP32

if BOOTLOADER_MCUBOOT
	config HAS_FLASH_LOAD_OFFSET
		default y

	config MCUBOOT_GENERATE_UNSIGNED_IMAGE
		default y

	config MCUBOOT_GENERATE_CONFIRMED_IMAGE
		default y

	config ROM_START_OFFSET
		default 0x20

	config HAS_DYNAMIC_DEVICE_HANDLES
		default y
endif

config SOC
	default "esp32"

config SOC_TOOLCHAIN_NAME
	string
	default "espressif_esp32"

if SMP

config SCHED_IPI_SUPPORTED
	default y

config SCHED_CPU_MASK
	default y

config MP_MAX_NUM_CPUS
	default 2

endif

config MINIMAL_LIBC_OPTIMIZE_STRING_FOR_SIZE
	default n

if GDBSTUB

# ESP32 GDB expects 420 bytes G-packet.
# So double for hexadecimal digits.
config GDBSTUB_BUF_SZ
	default 840 if GDBSTUB

endif

endif
