# M5StickC PLUS board configuration

# Copyright (c) 2022 AVSystem Sławomir Wolf Sp.j. (AVSystem)
# SPDX-License-Identifier: Apache-2.0

if BOARD_M5STICKC_PLUS_ESP32_PROCPU

config HEAP_MEM_POOL_ADD_SIZE_BOARD
	int
	default 65535 if WIFI && BT
	default 51200 if WIFI
	default 40960 if BT
	default 4096

choice BT_HCI_BUS_TYPE
	default BT_ESP32 if BT
endchoice

endif # BOARD_M5STICKC_PLUS_ESP32_PROCPU

if BOARD_M5STICKC_PLUS_ESP32_APPCPU

config HEAP_MEM_POOL_ADD_SIZE_BOARD
	default 256

endif # BOARD_M5STICKC_PLUS_ESP32_APPCPU
