soc/intel/skylake: Enable thermal subsystem depending on devicetree
Currently SA thermal subsystem gets enabled by the option Device4Enable,
but this duplicates the devicetree on/off options. Therefore depend on
the devicetree for enablement of the SA thermal subsystem controller.
All corresponding mainboards were checked if the devicetree
configuration matches the Device4Enable setting, and missing entries
were added.
Change-Id: I7553716d52743c3e8d82891b2de14c52c6d8ef16
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/44026
Reviewed-by: Michael Niewöhner
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/mainboard/51nb/x210/devicetree.cb b/src/mainboard/51nb/x210/devicetree.cb
index d4ab530..d6ad862 100644
--- a/src/mainboard/51nb/x210/devicetree.cb
+++ b/src/mainboard/51nb/x210/devicetree.cb
@@ -54,7 +54,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "1"
register "SaGv" = "SaGv_Enabled"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -123,6 +122,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/facebook/monolith/devicetree.cb b/src/mainboard/facebook/monolith/devicetree.cb
index 8621663..f6c42f1 100644
--- a/src/mainboard/facebook/monolith/devicetree.cb
+++ b/src/mainboard/facebook/monolith/devicetree.cb
@@ -38,7 +38,6 @@
# FSP Configuration
register "ScsEmmcHs400Enabled" = "1"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "SaGv" = "SaGv_Enabled"
register "SaImguEnable" = "0"
register "Cio2Enable" = "0"
diff --git a/src/mainboard/google/eve/devicetree.cb b/src/mainboard/google/eve/devicetree.cb
index 5e927b4..8a459f7 100644
--- a/src/mainboard/google/eve/devicetree.cb
+++ b/src/mainboard/google/eve/devicetree.cb
@@ -47,7 +47,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -247,6 +246,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on
chip drivers/usb/acpi
register "desc" = ""Root Hub""
diff --git a/src/mainboard/google/fizz/variants/baseboard/devicetree.cb b/src/mainboard/google/fizz/variants/baseboard/devicetree.cb
index ac3ee8b..651f174 100644
--- a/src/mainboard/google/fizz/variants/baseboard/devicetree.cb
+++ b/src/mainboard/google/fizz/variants/baseboard/devicetree.cb
@@ -78,7 +78,6 @@
register "ScsSdCardEnabled" = "2"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -322,6 +321,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on
chip drivers/usb/acpi
register "desc" = ""Root Hub""
diff --git a/src/mainboard/google/glados/devicetree.cb b/src/mainboard/google/glados/devicetree.cb
index 1e1b8e8..f2d7c64 100644
--- a/src/mainboard/google/glados/devicetree.cb
+++ b/src/mainboard/google/glados/devicetree.cb
@@ -49,7 +49,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -102,6 +101,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/google/poppy/variants/atlas/devicetree.cb b/src/mainboard/google/poppy/variants/atlas/devicetree.cb
index 432ef99..eae9835 100644
--- a/src/mainboard/google/poppy/variants/atlas/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/atlas/devicetree.cb
@@ -54,7 +54,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -248,6 +247,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 13.0 off end # Integrated Sensor Hub
device pci 14.0 on
chip drivers/usb/acpi
diff --git a/src/mainboard/google/poppy/variants/baseboard/devicetree.cb b/src/mainboard/google/poppy/variants/baseboard/devicetree.cb
index 2dc0703..ea6267f 100644
--- a/src/mainboard/google/poppy/variants/baseboard/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/baseboard/devicetree.cb
@@ -44,7 +44,6 @@
register "ScsSdCardEnabled" = "2"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -268,6 +267,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 on end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/google/poppy/variants/nami/devicetree.cb b/src/mainboard/google/poppy/variants/nami/devicetree.cb
index bf3b7bd..98568f8 100644
--- a/src/mainboard/google/poppy/variants/nami/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/nami/devicetree.cb
@@ -43,7 +43,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -283,6 +282,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 on end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/google/poppy/variants/nautilus/devicetree.cb b/src/mainboard/google/poppy/variants/nautilus/devicetree.cb
index d64bd8a..43d6509 100644
--- a/src/mainboard/google/poppy/variants/nautilus/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/nautilus/devicetree.cb
@@ -44,7 +44,6 @@
register "ScsSdCardEnabled" = "2"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -289,6 +288,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 on end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/google/poppy/variants/nocturne/devicetree.cb b/src/mainboard/google/poppy/variants/nocturne/devicetree.cb
index 26207f5..2bd82a9 100644
--- a/src/mainboard/google/poppy/variants/nocturne/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/nocturne/devicetree.cb
@@ -49,7 +49,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -268,7 +267,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
-
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on
chip drivers/usb/acpi
register "desc" = ""Root Hub""
diff --git a/src/mainboard/google/poppy/variants/rammus/devicetree.cb b/src/mainboard/google/poppy/variants/rammus/devicetree.cb
index 54faf47..ef5cd1b 100644
--- a/src/mainboard/google/poppy/variants/rammus/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/rammus/devicetree.cb
@@ -54,7 +54,6 @@
register "ScsSdCardEnabled" = "2"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -247,6 +246,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on
chip drivers/usb/acpi
register "desc" = ""Root Hub""
diff --git a/src/mainboard/google/poppy/variants/soraka/devicetree.cb b/src/mainboard/google/poppy/variants/soraka/devicetree.cb
index 777c521..e5307c2 100644
--- a/src/mainboard/google/poppy/variants/soraka/devicetree.cb
+++ b/src/mainboard/google/poppy/variants/soraka/devicetree.cb
@@ -44,7 +44,6 @@
register "ScsSdCardEnabled" = "2"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -269,6 +268,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 on end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/intel/kblrvp/variants/baseboard/devicetree.cb b/src/mainboard/intel/kblrvp/variants/baseboard/devicetree.cb
index 231fbad..318986e 100644
--- a/src/mainboard/intel/kblrvp/variants/baseboard/devicetree.cb
+++ b/src/mainboard/intel/kblrvp/variants/baseboard/devicetree.cb
@@ -28,7 +28,6 @@
register "ScsEmmcHs400Enabled" = "1"
register "ScsSdCardEnabled" = "2"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "SaGv" = "SaGv_Enabled"
register "PchHdaVcType" = "Vc1"
@@ -121,6 +120,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/intel/kblrvp/variants/rvp11/overridetree.cb b/src/mainboard/intel/kblrvp/variants/rvp11/overridetree.cb
index ad9dd36..ae372ec 100644
--- a/src/mainboard/intel/kblrvp/variants/rvp11/overridetree.cb
+++ b/src/mainboard/intel/kblrvp/variants/rvp11/overridetree.cb
@@ -4,7 +4,6 @@
register "DspEnable" = "0"
register "ScsEmmcHs400Enabled" = "0"
register "ScsSdCardEnabled" = "0"
- register "Device4Enable" = "0"
register "PmTimerDisabled" = "0"
register "serirq_mode" = "SERIRQ_CONTINUOUS"
@@ -117,6 +116,7 @@
}"
device domain 0 on
+ device pci 04.0 off end # SA thermal subsystem
device pci 17.0 on end # SATA
device pci 19.1 on end # I2C #5
device pci 1e.1 on end # UART #1
diff --git a/src/mainboard/intel/kunimitsu/devicetree.cb b/src/mainboard/intel/kunimitsu/devicetree.cb
index aebda85..ae637ca 100644
--- a/src/mainboard/intel/kunimitsu/devicetree.cb
+++ b/src/mainboard/intel/kunimitsu/devicetree.cb
@@ -29,7 +29,6 @@
register "ScsEmmcHs400Enabled" = "1"
register "ScsSdCardEnabled" = "2"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "SaGv_Enabled"
register "PmTimerDisabled" = "1"
@@ -175,6 +174,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/intel/saddlebrook/devicetree.cb b/src/mainboard/intel/saddlebrook/devicetree.cb
index 2a0558e..87d3fc0 100644
--- a/src/mainboard/intel/saddlebrook/devicetree.cb
+++ b/src/mainboard/intel/saddlebrook/devicetree.cb
@@ -23,7 +23,6 @@
register "ScsEmmcHs400Enabled" = "0"
register "ScsSdCardEnabled" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "0"
register "SaGv" = "SaGv_Enabled"
register "PmTimerDisabled" = "0"
@@ -211,6 +210,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 off end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/libretrend/lt1000/devicetree.cb b/src/mainboard/libretrend/lt1000/devicetree.cb
index a58e169..a355ee4 100644
--- a/src/mainboard/libretrend/lt1000/devicetree.cb
+++ b/src/mainboard/libretrend/lt1000/devicetree.cb
@@ -54,7 +54,6 @@
register "ScsEmmcHs400Enabled" = "0"
register "ScsSdCardEnabled" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "1"
register "SaGv" = "SaGv_Enabled"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -174,6 +173,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 on end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/protectli/vault_kbl/devicetree.cb b/src/mainboard/protectli/vault_kbl/devicetree.cb
index 9071a7b..1640011 100644
--- a/src/mainboard/protectli/vault_kbl/devicetree.cb
+++ b/src/mainboard/protectli/vault_kbl/devicetree.cb
@@ -43,7 +43,6 @@
register "ScsEmmcHs400Enabled" = "0"
register "ScsSdCardEnabled" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "0"
register "HeciEnabled" = "1"
register "PmTimerDisabled" = "1"
register "SaGv" = "SaGv_Enabled"
@@ -219,6 +218,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 off end # SA thermal subsystem
device pci 08.0 off end # Gaussian Mixture Model
device pci 13.0 off end # Integrated Sensor Hub
device pci 14.0 on end # USB xHCI
diff --git a/src/mainboard/purism/librem_skl/devicetree.cb b/src/mainboard/purism/librem_skl/devicetree.cb
index 5aa51d3..18e02e7 100644
--- a/src/mainboard/purism/librem_skl/devicetree.cb
+++ b/src/mainboard/purism/librem_skl/devicetree.cb
@@ -60,7 +60,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "0"
register "SaGv" = "3"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -171,6 +170,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
+ device pci 04.0 on end # SA thermal subsystem
device pci 14.0 on end # USB xHCI
device pci 14.1 on end # USB xDCI (OTG)
device pci 14.2 on end # Thermal Subsystem
diff --git a/src/mainboard/razer/blade_stealth_kbl/devicetree.cb b/src/mainboard/razer/blade_stealth_kbl/devicetree.cb
index 01aec8b..4306da6 100644
--- a/src/mainboard/razer/blade_stealth_kbl/devicetree.cb
+++ b/src/mainboard/razer/blade_stealth_kbl/devicetree.cb
@@ -40,7 +40,6 @@
register "ScsSdCardEnabled" = "0"
register "PttSwitch" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "HeciEnabled" = "1"
register "SaGv" = "SaGv_Enabled"
register "PmConfigSlpS3MinAssert" = "2" # 50ms
@@ -189,7 +188,7 @@
device domain 0 on
device pci 00.0 on end # Host Bridge
device pci 02.0 on end # Integrated Graphics Device
- device pci 04.0 off end # Thermal Subsystem
+ device pci 04.0 on end # Thermal Subsystem
device pci 08.0 off end # Gaussian Mixture Model
device pci 14.0 on end # USB xHCI
device pci 14.1 off end # USB xDCI (OTG)
diff --git a/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb b/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb
index 51c3cec..435015b 100644
--- a/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb
+++ b/src/mainboard/supermicro/x11-lga1151-series/devicetree.cb
@@ -10,7 +10,6 @@
register "ScsEmmcHs400Enabled" = "0"
register "ScsSdCardEnabled" = "0"
register "SkipExtGfxScan" = "1"
- register "Device4Enable" = "1"
register "SaGv" = "SaGv_Disabled"
# SATA configuration
diff --git a/src/soc/intel/skylake/chip.c b/src/soc/intel/skylake/chip.c
index 562d791..6423cf4 100644
--- a/src/soc/intel/skylake/chip.c
+++ b/src/soc/intel/skylake/chip.c
@@ -278,7 +278,9 @@
params->PchHdaVcType = config->PchHdaVcType;
params->PchHdaIoBufferOwnership = config->IoBufferOwnership;
params->PchHdaDspEnable = config->DspEnable;
- params->Device4Enable = config->Device4Enable;
+
+ dev = pcidev_path_on_root(SA_DEVFN_TS);
+ params->Device4Enable = dev && dev->enabled;
params->EnableTcoTimer = !config->PmTimerDisabled;
diff --git a/src/soc/intel/skylake/chip.h b/src/soc/intel/skylake/chip.h
index fc86cfd..e332a6b 100644
--- a/src/soc/intel/skylake/chip.h
+++ b/src/soc/intel/skylake/chip.h
@@ -336,7 +336,6 @@
u32 LogoPtr;
u32 LogoSize;
u32 GraphicsConfigPtr;
- u8 Device4Enable;
u8 RtcLock;
/* GPIO IRQ Route The valid values is 14 or 15*/
u8 GpioIrqSelect;