#
# Novatek SoC drivers
#
menu "NovaTek SoC drivers"
	depends on ARCH_NVT_IVOT_V7 || ARCH_NVT_IVOT_V8

source "drivers/soc/nvt/plat-novatek/Kconfig"

config NVT_OTP_SUPPORT
	bool "NVT OTP(one time programmable) support"
	depends on ARCH_NVT_IVOT_V7 || ARCH_NVT_IVOT_V8
	default y
	help
	  This option will configure the NVT OTP(one time programmable) function which can be used call OTP api.

config NVT_OTP_EP_SUPPORT
	tristate "NVT OTP EP(one time programmable) support"
	depends on (ARCH_NVT_IVOT_V7 || ARCH_NVT_IVOT_V8)
	depends on NVT_IVOT_PLAT_NA51090
	default n
	help
	  This option will configure the NVT OTP(one time programmable) function which can be used call OTP api.

config NVT_HDAL_BUILD_IN
	bool "Novatek IVOT HDAL for Media device drivers builtin support"
	depends on NVT_IVOT_PLAT_NS02301 || NVT_IVOT_PLAT_NS02302 || NVT_IVOT_PLAT_NA51102
	select NVT_VOS_KWRAP
	select NVT_HDAL_KDRV_BUILTIN
	default n
	help
	  Enable this option will let a part of your hdal driver link to uImage
	  You could select which module want to link in the submenu.

config NVT_HDAL_BUILD_IN_ADV
        bool "More HDAL driver builtin"
        depends on NVT_HDAL_BUILD_IN
        default n
        help
          Enable this option will let more kdrv, kflow builtin in kernel

config NVT_HDAL_BUILD_IN_2A
        bool "2A driver builtin"
        depends on NVT_HDAL_BUILD_IN_ADV
        default y
        help
          Enable this option to use Novatek 2A algorithm

config NVT_STACK_CHECK
	bool "NVT STACK check"
	default n
	help
	  This option will check STACK overflow issue.

config NVT_PERF_MEASURE
        bool "Enable nvt_perf driver for ivot Linux kernel performance measurement"
        depends on ARCH_NVT_IVOT_V7 || ARCH_NVT_IVOT_V8
        default n
        help
                Enable nvt_perf driver for ivot Linux kernel performance measurement

config NVT_PROFILER
	bool "Novatek Profilers"
	depends on ARM || ARM64
	depends on FTRACE
	select KPROBES
	select KRETPROBES
	select EVENT_TRACING
	default n

config NVT_LOGFILE
	tristate "Novatek LOGFILE message log system"
	depends on DMA_SHARED_BUFFER
	default n
	help
	  Store serial messages into a memory buffer.
	  Logs are temporarily saved in the kernel memory for debug.

config NVT_STBC_SUPPORT
	bool "NVT stbc(stand by control) support"
	depends on ARCH_NVT_IVOT_V7 || ARCH_NVT_IVOT_V8
	depends on (NVT_IVOT_PLAT_NA51102 || NVT_IVOT_PLAT_NS02302)
	default n
	help
	  This option will configure the NVT stbc(stand by control) function which can be used call stbc api.

config NVT_AMP
        bool "NVT AMP support"
        default n
        help
          This option will configure NVT AMP function.

config NVT_CC
	bool "Novatek cc(core communication)"
	depends on NVT_IVOT_PLAT_NA51102 || NVT_IVOT_PLAT_NS02201 || NVT_IVOT_PLAT_NS02301
	default n
	help
	  This option will configure NVT CC function.

config NVT_FAST_SMP_FLOW
        bool "NVT fast boot SMP flow"
        depends on HOTPLUG_CPU && (NVT_IVOT_PLAT_NS02301 || NVT_IVOT_PLAT_NS02302 || NVT_IVOT_PLAT_NA51102)
        default n
        help
          This option will configure fast boot SMP.

config NVT_PCIE_DRIVER_INTREE
        bool "NVT PCIe device driver intree support"
        depends on PCIE_NVT || NVT_NT98690_PCI_EP_EVB
        default n
        help
          This option will configure the NVT PCI device driver to build the
          intree function, which can be used by the linux intree driver to call the API.

source "drivers/soc/nvt/basic/Kconfig"

source "drivers/soc/nvt/nvt_hdal/Kconfig"

endmenu
