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

config BOARD_ESP32S2_SAOLA
	bool "ESP32S2 Saola Board"
	depends on SOC_SERIES_ESP32S2

choice SOC_PART_NUMBER
	default SOC_ESP32S2_WROVER_N4R2
endchoice
