# CY8CPROTO-062-4343W PSoC™ 6 Wi-Fi BT Prototyping Kit configuration

# Copyright (c) 2021 Cypress Semiconductor Corporation.
# SPDX-License-Identifier: Apache-2.0

if BOARD_CY8CPROTO_062_4343W

config BOARD
	default "cy8cproto_062_4343w"

if WIFI || BT

# Select AIROC part and module
choice AIROC_PART
	default CYW4343W
endchoice

choice CYW4343W_MODULE
	default CYW4343W_MURATA_1DX
endchoice

endif # WIFI || BT

if WIFI

config WIFI_AIROC
	default y

# Enable L2 Ethernet
config NET_L2_ETHERNET
	default y

endif # WIFI

if BT

# Select HCI components
config UART
	bool
	default y

config BT_UART
	default y

choice BT_HCI_BUS_TYPE
	default BT_H4
endchoice

endif # BT

# Heap Pool Size
config HEAP_MEM_POOL_ADD_SIZE_BOARD
	int
	default 15000 if WIFI
	default 4096

endif   # BOARD_CY8CPROTO_062_4343W
