# SPDX-License-Identifier: GPL-2.0-only
#
# AMD PMF Driver
#

config AMD_PMF
	tristate "AMD Platform Management Framework"
	depends on ACPI && PCI
	depends on POWER_SUPPLY
	depends on AMD_NB
	select ACPI_PLATFORM_PROFILE
	depends on TEE && AMDTEE
	help
	  This driver provides support for the AMD Platform Management Framework.
	  The goal is to enhance end user experience by making AMD PCs smarter,
	  quiter, power efficient by adapting to user behavior and environment.

	  To compile this driver as a module, choose M here: the module will
	  be called amd_pmf.

config AMD_PMF_DEBUG
	bool "PMF debug information"
	depends on AMD_PMF
	help
	 Enabling this option would give more debug information on the OEM fed
	 power setting values for each of the PMF feature. PMF driver gets this
	 information after evaluating a ACPI method and the information is stored
	 in the PMF config store.

	 Say Y here to enable more debug logs and Say N here if you are not sure.
