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

config SOC_SERIES_GD32L23X
	bool
	select SOC_FAMILY_GD_GD32
	help
	  Enable support for GigaDevice GD32L23X MCU series

config SOC_SERIES
	default "gd32l23x" if SOC_SERIES_GD32L23X

config SOC_GD32L233
	bool
	select SOC_SERIES_GD32L23X

config SOC
	default "gd32l233" if SOC_GD32L233
