summaryrefslogtreecommitdiffstats
path: root/src/soc/intel/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/common')
-rw-r--r--src/soc/intel/common/block/dtt/Kconfig9
-rw-r--r--src/soc/intel/common/block/dtt/dtt.c4
2 files changed, 11 insertions, 2 deletions
diff --git a/src/soc/intel/common/block/dtt/Kconfig b/src/soc/intel/common/block/dtt/Kconfig
index 1735c2ac21eb..fcf67888326d 100644
--- a/src/soc/intel/common/block/dtt/Kconfig
+++ b/src/soc/intel/common/block/dtt/Kconfig
@@ -7,3 +7,12 @@ config SOC_INTEL_COMMON_BLOCK_DTT
Minimal PCI Driver for enabling SSDT generation of Intel
Dynamic Tuning Technology (DTT) policies and controls, also
known as Intel DPTF (Dynamic Platform and Thermal Framework)
+
+config SOC_INTEL_COMMON_BLOCK_DTT_STATIC_ASL
+ bool
+ depends on SOC_INTEL_COMMON_BLOCK_DTT
+ default n
+ help
+ Mainboards which include `soc/intel/common/acpi/dptf/dptf.asl`
+ should select this to avoid generating a duplicate TCPU ACPI
+ device and rendering the SSDT invalid.
diff --git a/src/soc/intel/common/block/dtt/dtt.c b/src/soc/intel/common/block/dtt/dtt.c
index b2ce8b9c41e8..1d0451fc787f 100644
--- a/src/soc/intel/common/block/dtt/dtt.c
+++ b/src/soc/intel/common/block/dtt/dtt.c
@@ -21,8 +21,8 @@ static const unsigned short pci_device_ids[] = {
static void dtt_acpi_fill_ssdt(const struct device *dev)
{
- /* Skip if DPTF driver in use since TCPU device will already exist */
- if (CONFIG(DRIVERS_INTEL_DPTF))
+ /* Skip if DPTF driver or common DPTF ASL in use since TCPU device will already exist */
+ if (CONFIG(DRIVERS_INTEL_DPTF) || CONFIG(SOC_INTEL_COMMON_BLOCK_DTT_STATIC_ASL))
return;
const char *scope = acpi_device_scope(dev);