# 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.
