# Copyright (c) 2022 BrainCo Inc.
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_GD32L23X
	bool "GigaDevice GD32L23X series Cortex-M23 MCU"
	select ARM
	select CPU_CORTEX_M23
	select CPU_CORTEX_M_HAS_SYSTICK
	select SOC_FAMILY_GD32_ARM
	select GD32_HAS_AF_PINMUX
	select GD32_HAS_IRC_32K
	help
	  Enable support for GigaDevice GD32L23X MCU series
