From d92d0e24ae47a2e0fcb0bd580056fe9aa8369d60 Mon Sep 17 00:00:00 2001 From: Sumeet R Pawnikar Date: Thu, 18 Jun 2020 14:10:10 +0530 Subject: [PATCH] jasperlake: enable DPTF functionality for dedede Enable DPTF functionality on jasperlake based dedede platform BRANCH=None BUG=None TEST=Built for dedede system Change-Id: I17b6e4e96abee6181b0d1f94c356a32aa82c19b9 Signed-off-by: Sumeet R Pawnikar Reviewed-on: https://review.coreboot.org/c/coreboot/+/41668 Reviewed-by: Tim Wawrzynczak Reviewed-by: Karthik Ramasubramanian Tested-by: build bot (Jenkins) --- src/mainboard/google/dedede/dsdt.asl | 9 ++++ .../dedede/variants/baseboard/devicetree.cb | 13 ++++- .../baseboard/include/baseboard/acpi/dptf.asl | 48 +++++++++++++++++++ .../boten/include/variant/acpi/dptf.asl | 3 ++ .../dedede/include/variant/acpi/dptf.asl | 3 ++ .../drawcia/include/variant/acpi/dptf.asl | 3 ++ .../waddledee/include/variant/acpi/dptf.asl | 3 ++ .../waddledoo/include/variant/acpi/dptf.asl | 3 ++ .../wheelie/include/variant/acpi/dptf.asl | 3 ++ 9 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 src/mainboard/google/dedede/variants/baseboard/include/baseboard/acpi/dptf.asl create mode 100644 src/mainboard/google/dedede/variants/boten/include/variant/acpi/dptf.asl create mode 100644 src/mainboard/google/dedede/variants/dedede/include/variant/acpi/dptf.asl create mode 100644 src/mainboard/google/dedede/variants/drawcia/include/variant/acpi/dptf.asl create mode 100644 src/mainboard/google/dedede/variants/waddledee/include/variant/acpi/dptf.asl create mode 100644 src/mainboard/google/dedede/variants/waddledoo/include/variant/acpi/dptf.asl create mode 100644 src/mainboard/google/dedede/variants/wheelie/include/variant/acpi/dptf.asl diff --git a/src/mainboard/google/dedede/dsdt.asl b/src/mainboard/google/dedede/dsdt.asl index 933ca1a503..e064d9b1c8 100644 --- a/src/mainboard/google/dedede/dsdt.asl +++ b/src/mainboard/google/dedede/dsdt.asl @@ -55,4 +55,13 @@ DefinitionBlock( /* ACPI code for EC functions */ #include } + + /* Dynamic Platform Thermal Framework */ + Scope (\_SB) + { + /* Per board variant specific definitions. */ + #include + /* Include common dptf ASL files */ + #include + } } diff --git a/src/mainboard/google/dedede/variants/baseboard/devicetree.cb b/src/mainboard/google/dedede/variants/baseboard/devicetree.cb index 7fdf438f29..f95d123745 100644 --- a/src/mainboard/google/dedede/variants/baseboard/devicetree.cb +++ b/src/mainboard/google/dedede/variants/baseboard/devicetree.cb @@ -144,6 +144,17 @@ chip soc/intel/jasperlake # Enable Speed Shift Technology support register "speed_shift_enable" = "1" + # Enable DPTF + register "dptf_enable" = "1" + + register "power_limits_config" = "{ + .tdp_pl1_override = 6, + .tdp_pl2_override = 20, + }" + + # Enable processor thermal control + register "Device4Enable" = "1" + # chipset_lockdown configuration # Use below format to override value in overridetree.cb if required # format: @@ -153,7 +164,7 @@ chip soc/intel/jasperlake 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 device + device pci 04.0 on end # SA Thermal device device pci 05.0 off end # IPU device pci 09.0 off end # Intel Trace Hub device pci 12.6 off end # GSPI 2 diff --git a/src/mainboard/google/dedede/variants/baseboard/include/baseboard/acpi/dptf.asl b/src/mainboard/google/dedede/variants/baseboard/include/baseboard/acpi/dptf.asl new file mode 100644 index 0000000000..f6b16b456f --- /dev/null +++ b/src/mainboard/google/dedede/variants/baseboard/include/baseboard/acpi/dptf.asl @@ -0,0 +1,48 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +/* Below values might change after Thermal Tuning. */ +#define DPTF_CPU_PASSIVE 90 +#define DPTF_CPU_CRITICAL 99 + +#define DPTF_TSR0_SENSOR_ID 0 +#define DPTF_TSR0_SENSOR_NAME "Memory" +#define DPTF_TSR0_PASSIVE 80 +#define DPTF_TSR0_CRITICAL 90 + +#define DPTF_TSR1_SENSOR_ID 1 +#define DPTF_TSR1_SENSOR_NAME "Ambient" +#define DPTF_TSR1_PASSIVE 55 +#define DPTF_TSR1_CRITICAL 80 + +Name (DTRT, Package () { + /* CPU Throttle Effect on CPU */ + Package () { \_SB.PCI0.TCPU, \_SB.PCI0.TCPU, 100, 100, 0, 0, 0, 0 }, + + /* CPU Effect on Temp Sensor 0 */ + Package () { \_SB.PCI0.TCPU, \_SB.DPTF.TSR0, 100, 600, 0, 0, 0, 0 }, + + /* CPU Effect on Temp Sensor 1 */ + Package () { \_SB.PCI0.TCPU, \_SB.DPTF.TSR1, 100, 150, 0, 0, 0, 0 }, +}) + +Name (MPPC, Package () +{ + 0x2, /* Revision */ + Package () { /* Power Limit 1 */ + 0, /* PowerLimitIndex, 0 for Power Limit 1 */ + 3000, /* PowerLimitMinimum */ + 6000, /* PowerLimitMaximum */ + 1000, /* TimeWindowMinimum */ + 1000, /* TimeWindowMaximum */ + 200 /* StepSize */ + }, + + Package () { /* Power Limit 2 */ + 1, /* PowerLimitIndex, 1 for Power Limit 2 */ + 6000, /* PowerLimitMinimum */ + 20000, /* PowerLimitMaximum */ + 1000, /* TimeWindowMinimum */ + 1000, /* TimeWindowMaximum */ + 1000 /* StepSize */ + } +}) diff --git a/src/mainboard/google/dedede/variants/boten/include/variant/acpi/dptf.asl b/src/mainboard/google/dedede/variants/boten/include/variant/acpi/dptf.asl new file mode 100644 index 0000000000..189cafea4c --- /dev/null +++ b/src/mainboard/google/dedede/variants/boten/include/variant/acpi/dptf.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include diff --git a/src/mainboard/google/dedede/variants/dedede/include/variant/acpi/dptf.asl b/src/mainboard/google/dedede/variants/dedede/include/variant/acpi/dptf.asl new file mode 100644 index 0000000000..189cafea4c --- /dev/null +++ b/src/mainboard/google/dedede/variants/dedede/include/variant/acpi/dptf.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include diff --git a/src/mainboard/google/dedede/variants/drawcia/include/variant/acpi/dptf.asl b/src/mainboard/google/dedede/variants/drawcia/include/variant/acpi/dptf.asl new file mode 100644 index 0000000000..189cafea4c --- /dev/null +++ b/src/mainboard/google/dedede/variants/drawcia/include/variant/acpi/dptf.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include diff --git a/src/mainboard/google/dedede/variants/waddledee/include/variant/acpi/dptf.asl b/src/mainboard/google/dedede/variants/waddledee/include/variant/acpi/dptf.asl new file mode 100644 index 0000000000..189cafea4c --- /dev/null +++ b/src/mainboard/google/dedede/variants/waddledee/include/variant/acpi/dptf.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include diff --git a/src/mainboard/google/dedede/variants/waddledoo/include/variant/acpi/dptf.asl b/src/mainboard/google/dedede/variants/waddledoo/include/variant/acpi/dptf.asl new file mode 100644 index 0000000000..189cafea4c --- /dev/null +++ b/src/mainboard/google/dedede/variants/waddledoo/include/variant/acpi/dptf.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include diff --git a/src/mainboard/google/dedede/variants/wheelie/include/variant/acpi/dptf.asl b/src/mainboard/google/dedede/variants/wheelie/include/variant/acpi/dptf.asl new file mode 100644 index 0000000000..189cafea4c --- /dev/null +++ b/src/mainboard/google/dedede/variants/wheelie/include/variant/acpi/dptf.asl @@ -0,0 +1,3 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include