# SPDX-License-Identifier: (GPL-2.0+ OR MIT)

config AMLOGIC_EFUSE_UNIFYKEY
	tristate "Amlogic EUSE and UNIFYKEY support"
	default n
	help
	  amlogic EFUSE and UNIFYKEY glue driver
	  choose by default

config AMLOGIC_EFUSE
	bool "Amlogic EFUSE driver support"
	default n
	help
	  amlogic EFUSE device driver
	  not choose by default

config AMLOGIC_UNIFYKEY
	bool "Amlogic unifykey driver support"
	default n
	help
	  platform independent part of unifykey driver
	  not choose by default

config AMLOGIC_EFUSE_BURN
	bool "Amlogic efuse pattern burn suppot"
	default n
	help
	  en, if project need burn efuse pattern file, then
	  it can enable this. if efuse pattern size exceed
	  4KB, it must enable this. it write efuse pattern
	  file through /dev/efuse_burn.

config AMLOGIC_DEFENDKEY
	tristate "Amlogic defendkey driver support"
	default n
	help
		amlogic defendkey device driver
		not choose by default
