# FPGA driver configuration options

# Copyright (c) 2021-2022 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

menuconfig FPGA
	bool "Field-Programmable Gate Array (FPGA) drivers"
	help
	  Enable support for FPGA drivers.

if FPGA

module = fpga
module-str = fpga
source "subsys/logging/Kconfig.template.log_config"

config FPGA_INIT_PRIORITY
	int "Init priority"
	default 75
	help
	  FPGA device drivers initialization priority

config FPGA_SHELL
	bool "FPGA Shell"
	depends on SHELL && FPGA
	help
	  Enable FPGA Shell support.

source "drivers/fpga/Kconfig.eos_s3"
source "drivers/fpga/Kconfig.ice40"
source "drivers/fpga/Kconfig.mpfs"
source "drivers/fpga/Kconfig.zynqmp"

endif # FPGA
