# ESP32S3 DevKitM board configuration

# Copyright (c) 2022 Espressif Systems (Shanghai) Co., Ltd.
# SPDX-License-Identifier: Apache-2.0

if BOARD_ESP32S3_DEVKITM

config BOARD
	default "esp32s3_devkitm"

config HEAP_MEM_POOL_SIZE
	default 98304 if WIFI
	default 40960 if BT
	default 4096

choice BT_HCI_BUS_TYPE
	default BT_ESP32 if BT
endchoice

endif

if BOARD_ESP32S3_DEVKITM_APPCPU

config BOARD
	default "esp32s3_devkitm_appcpu"

config HEAP_MEM_POOL_SIZE
	default 4096

config KERNEL_BIN_NAME
	default "esp32_net_firmware"
endif

config ENTROPY_GENERATOR
	default y
