Subrata Banik | 3d4ff84 | 2023-07-04 08:18:12 +0530 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
| 2 | |
| 3 | #include <baseboard/variants.h> |
| 4 | #include <device/pci_ids.h> |
| 5 | #include <intelblocks/power_limit.h> |
| 6 | |
| 7 | /* |
| 8 | * SKU_ID, TDP (Watts), pl1_min (milliWatts), pl1_max (milliWatts), |
| 9 | * pl2_min (milliWatts), pl2_max (milliWatts), pl4 (milliWatts) |
| 10 | * Following values are for performance config as per document #640982 |
| 11 | */ |
| 12 | const struct cpu_tdp_power_limits limits[] = { |
| 13 | { |
| 14 | .mch_id = PCI_DID_INTEL_MTL_P_ID_1, |
| 15 | .cpu_tdp = 28, |
| 16 | .pl1_min_power = 19000, |
| 17 | .pl1_max_power = 28000, |
| 18 | .pl2_min_power = 64000, |
| 19 | .pl2_max_power = 64000, |
| 20 | .pl4_power = 120000 |
| 21 | }, |
Subrata Banik | ceccd49 | 2023-11-29 01:55:13 +0530 | [diff] [blame^] | 22 | { |
| 23 | .mch_id = PCI_DID_INTEL_MTL_P_ID_3, |
| 24 | .cpu_tdp = 28, |
| 25 | .pl1_min_power = 19000, |
| 26 | .pl1_max_power = 28000, |
| 27 | .pl2_min_power = 64000, |
| 28 | .pl2_max_power = 64000, |
| 29 | .pl4_power = 120000 |
| 30 | }, |
Subrata Banik | 3d4ff84 | 2023-07-04 08:18:12 +0530 | [diff] [blame] | 31 | }; |
| 32 | |
Subrata Banik | faf2779 | 2023-11-29 00:25:58 +0530 | [diff] [blame] | 33 | void __weak variant_devtree_update(void) |
Subrata Banik | 3d4ff84 | 2023-07-04 08:18:12 +0530 | [diff] [blame] | 34 | { |
Subrata Banik | faf2779 | 2023-11-29 00:25:58 +0530 | [diff] [blame] | 35 | printk(BIOS_DEBUG, "WEAK: %s/%s called\n", __FILE__, __func__); |
| 36 | |
Subrata Banik | 3d4ff84 | 2023-07-04 08:18:12 +0530 | [diff] [blame] | 37 | size_t total_entries = ARRAY_SIZE(limits); |
| 38 | variant_update_cpu_power_limits(limits, total_entries); |
| 39 | } |
Subrata Banik | faf2779 | 2023-11-29 00:25:58 +0530 | [diff] [blame] | 40 | |
| 41 | void baseboard_devtree_update(void) |
| 42 | { |
| 43 | variant_devtree_update(); |
| 44 | } |