# Copyright (c) 2018 Foundries.io
#
# SPDX-License-Identifier: Apache-2.0

menuconfig VEGA_SDK_HAL
	bool "RV32M1 VEGA SDK support"
	depends on SOC_OPENISA_RV32M1_RISCV32

config HAS_RV32M1_LPUART
	bool
	help
	  Set if the low power uart (LPUART) module is present in the SoC.

config HAS_RV32M1_LPI2C
	bool
	help
	  Set if the low power i2c (LPI2C) module is present in the SoC.

config HAS_RV32M1_FTFX
	bool
	help
	  Set if the flash memory (FTFA, FTFE, or FTFL) module is present in
	  the SoC.

