diff options
author | Kun Liu <liukun11@huaqin.corp-partner.google.com> | 2024-11-13 13:40:26 +0800 |
---|---|---|
committer | Subrata Banik <subratabanik@google.com> | 2024-11-15 06:28:50 +0000 |
commit | 7cf2189446f81a3966013d5b83c88e67f4711c21 (patch) | |
tree | 047247d07eeb50db36475b6b32ca6a4c8f3194ed | |
parent | c2424ee253d67442419a339edad64c709c3bea55 (diff) |
mb/google/nissa/var/telith: Add 6W and 15W DPTF parameters
The DPTF parameters were defined by the thermal team.
Based on thermal table in 377955793#comment2
BUG=b:377955793
TEST=emerge-nissa coreboot chromeos-bootimage
Change-Id: I7cb44a707d7a87f5caaf259b069a21826f5c0a2e
Signed-off-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/85114
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
-rw-r--r-- | src/mainboard/google/brya/variants/telith/overridetree.cb | 150 |
1 files changed, 137 insertions, 13 deletions
diff --git a/src/mainboard/google/brya/variants/telith/overridetree.cb b/src/mainboard/google/brya/variants/telith/overridetree.cb index 7a25152367..4f1b16e5c0 100644 --- a/src/mainboard/google/brya/variants/telith/overridetree.cb +++ b/src/mainboard/google/brya/variants/telith/overridetree.cb @@ -11,6 +11,10 @@ fw_config option UF_720P 2 option UF_1080P_WF 3 end + field THERMAL_SOLUTION 19 19 + option THERMAL_SOLUTION_6W 0 + option THERMAL_SOLUTION_15W 1 + end end chip soc/intel/alderlake @@ -154,33 +158,38 @@ chip soc/intel/alderlake # Power limit config register "power_limits_config[ADL_N_041_6W_CORE]" = "{ .tdp_pl1_override = 15, - .tdp_pl2_override = 25, + .tdp_pl2_override = 20, .tdp_pl4 = 78, }" + register "power_limits_config[ADL_N_081_15W_CORE]" = "{ + .tdp_pl1_override = 20, + .tdp_pl2_override = 35, + .tdp_pl4 = 83, + }" device domain 0 on device ref dtt on chip drivers/intel/dptf ## sensor information - register "options.tsr[0].desc" = ""CPU_VR"" - register "options.tsr[1].desc" = ""CPU"" + register "options.tsr[0].desc" = ""CPU"" + register "options.tsr[1].desc" = ""5V Regulator"" register "options.tsr[2].desc" = ""Ambient"" register "options.tsr[3].desc" = ""Charger"" # TODO: below values are initial reference values only ## Passive Policy register "policies.passive" = "{ - [0] = DPTF_PASSIVE(CPU, CPU, 95, 5000), - [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 75, 5000), - [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 75, 5000), - [3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 75, 5000), - [4] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_3, 75, 5000), + [0] = DPTF_PASSIVE(CPU, CPU, 85, 6000), + [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 6000), + [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 6000), + [3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 85, 5000), + [4] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_3, 85, 6000), }" ## Critical Policy register "policies.critical" = "{ - [0] = DPTF_CRITICAL(TEMP_SENSOR_1, 100, SHUTDOWN), - [1] = DPTF_CRITICAL(TEMP_SENSOR_2, 80, SHUTDOWN), + [0] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN), + [1] = DPTF_CRITICAL(TEMP_SENSOR_2, 90, SHUTDOWN), }" register "controls.power_limits" = "{ @@ -192,8 +201,8 @@ chip soc/intel/alderlake .granularity = 200 }, .pl2 = { - .min_power = 25000, - .max_power = 25000, + .min_power = 20000, + .max_power = 20000, .time_window_min = 28 * MSECS_PER_SEC, .time_window_max = 32 * MSECS_PER_SEC, .granularity = 1000 @@ -208,7 +217,122 @@ chip soc/intel/alderlake [3] = { 8, 500 } }" - device generic 0 on end + device generic 0 on + probe THERMAL_SOLUTION THERMAL_SOLUTION_6W + end + end + + chip drivers/intel/dptf + ## sensor information + register "options.tsr[0].desc" = ""CPU"" + register "options.tsr[1].desc" = ""5V Regulator"" + register "options.tsr[2].desc" = ""Ambient"" + register "options.tsr[3].desc" = ""Charger"" + + # TODO: below values are initial reference values only + ## Active Policy + register "policies.active" = "{ + [0] = { + .target = DPTF_TEMP_SENSOR_0, + .thresholds = { + TEMP_PCT(85, 90), + TEMP_PCT(54, 64), + TEMP_PCT(52, 52), + TEMP_PCT(50, 44), + TEMP_PCT(48, 38), + TEMP_PCT(45, 34), + } + }, + [1] = { + .target = DPTF_TEMP_SENSOR_1, + .thresholds = { + TEMP_PCT(75, 90), + TEMP_PCT(70, 80), + TEMP_PCT(65, 70), + TEMP_PCT(60, 60), + TEMP_PCT(55, 50), + TEMP_PCT(50, 40), + } + }, + [2] = { + .target = DPTF_TEMP_SENSOR_2, + .thresholds = { + TEMP_PCT(90, 90), + TEMP_PCT(85, 80), + TEMP_PCT(75, 70), + TEMP_PCT(70, 50), + } + }, + [3] = { + .target = DPTF_TEMP_SENSOR_3, + .thresholds = { + TEMP_PCT(80, 90), + TEMP_PCT(75, 80), + TEMP_PCT(70, 70), + TEMP_PCT(65, 50), + } + } + }" + ## Passive Policy + register "policies.passive" = "{ + [0] = DPTF_PASSIVE(CPU, CPU, 85, 6000), + [1] = DPTF_PASSIVE(CPU, TEMP_SENSOR_0, 85, 6000), + [2] = DPTF_PASSIVE(CPU, TEMP_SENSOR_1, 85, 6000), + [3] = DPTF_PASSIVE(CPU, TEMP_SENSOR_2, 85, 6000), + [4] = DPTF_PASSIVE(CHARGER, TEMP_SENSOR_3, 85, 6000), + }" + + ## Critical Policy + register "policies.critical" = "{ + [0] = DPTF_CRITICAL(TEMP_SENSOR_1, 90, SHUTDOWN), + [1] = DPTF_CRITICAL(TEMP_SENSOR_2, 90, SHUTDOWN), + }" + + register "controls.power_limits" = "{ + .pl1 = { + .min_power = 15000, + .max_power = 20000, + .time_window_min = 28 * MSECS_PER_SEC, + .time_window_max = 32 * MSECS_PER_SEC, + .granularity = 200 + }, + .pl2 = { + .min_power = 35000, + .max_power = 35000, + .time_window_min = 28 * MSECS_PER_SEC, + .time_window_max = 32 * MSECS_PER_SEC, + .granularity = 1000 + } + }" + + ## Charger Performance Control (Control, mA) + register "controls.charger_perf" = "{ + [0] = { 255, 3000 }, + [1] = { 24, 2000 }, + [2] = { 16, 1000 }, + [3] = { 8, 500 } + }" + + ## Fan Performance Control (Percent, Speed, Noise, Power) + register "controls.fan_perf" = "{ + [0] = { 100, 4000, 220, 1640, }, + [1] = { 90, 3700, 220, 1640, }, + [2] = { 80, 3500, 180, 1310, }, + [3] = { 70, 3300, 145, 1030, }, + [4] = { 60, 3100, 115, 765, }, + [5] = { 50, 2800, 90, 545, }, + [6] = { 40, 2500, 55, 365, }, + [7] = { 30, 2100, 30, 220, }, + [8] = { 20, 1500, 15, 120, }, + [9] = { 0, 0, 0, 50, } + }" + + ## Fan options + register "options.fan.fine_grained_control" = "1" + register "options.fan.step_size" = "2" + device generic 1 on + probe THERMAL_SOLUTION THERMAL_SOLUTION_15W + end end end device ref igpu on |