# SPDX-License-Identifier: Apache-2.0

if SOC_NIOS2F_ZEPHYR

config SOC
	string
	default "nios2f-zephyr"

config SYS_CLOCK_HW_CYCLES_PER_SEC
	int
	default 50000000

config ALTERA_AVALON_SYSID
	def_bool y

if GPIO_ALTERA_NIOS2

config ALTERA_AVALON_PIO
	def_bool y

endif # GPIO_ALTERA_NIOS2

if SOC_FLASH_NIOS2_QSPI

config ALTERA_AVALON_QSPI
	def_bool y

endif #SOC_FLASH_NIOS2_QSPI

if I2C_NIOS2

config ALTERA_AVALON_I2C
	def_bool y

endif # I2C_NIOS2

if DMA_NIOS2_MSGDMA

config ALTERA_AVALON_MSGDMA
	def_bool y

endif # DMA_NIOS2_MSGDMA

if UART_NS16550

config UART_NS16550_PORT_0
	default y

if UART_NS16550_PORT_0

config UART_NS16550_PORT_0_OPTIONS
	default 0

endif # UART_NS16550_PORT_0

endif # UART_NS16550

endif # SOC_NIOS2F_ZEPHYR
