[PATCH 18/59] drm/amd/display: Clean up Per-DPM Struct

Alex Hung <[email protected]>
Newsgroups org.freedesktop.lists.amd-gfx
Message-ID <[email protected]>
From: Austin Zheng <[email protected]>

[WHY/HOW]
Deprecate original organization in favor for the organization used by v2.
External usages no longer used so it can be removed entirely.

Reviewed-by: Dillon Varone <[email protected]>
Signed-off-by: Austin Zheng <[email protected]>
Signed-off-by: Alex Hung <[email protected]>
---
 .../dml21/inc/dml_top_soc_parameter_types.h   | 32 +++----------------
 1 file changed, 4 insertions(+), 28 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/inc/dml_top_soc_parameter_types.h b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/inc/dml_top_soc_parameter_types.h
index 45208f804d2b..422833548aa6 100644
--- a/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/inc/dml_top_soc_parameter_types.h
+++ b/drivers/gpu/drm/amd/display/dc/dml2_0/dml21/inc/dml_top_soc_parameter_types.h
@@ -78,41 +78,17 @@ enum dml2_qos_param_type {
 // - If a non-zero DPM index has derate_percent = 0, fall back to index 0
 // Unpopulated derates should fallback to the global derate value.
 // Each element pairs a derate percentage with its threshold
-struct dml2_soc_derate_values_per_dpm_v2 {
+struct dml2_soc_derate_values_per_dpm {
 	unsigned int derate_percent;
 	unsigned int clk_upperbound_threshold_khz;
 };
 
-// Legacy structure - for backward compatibility as driver debug values can override the values. (will temporarily break driver overrides)
 // Per-DPM derate arrays for system_active_average (the only power state that varies by DPM)
 // Urgent derates are constant across DPMs and come from derate_table.system_active_urgent
-struct dml2_soc_derate_values_per_dpm {
-	unsigned int dram_derate_percent_pixel[DML_MAX_CLK_TABLE_SIZE];
-	unsigned int fclk_derate_percent[DML_MAX_CLK_TABLE_SIZE];
-	unsigned int dcfclk_derate_percent[DML_MAX_CLK_TABLE_SIZE];
-};
-
 struct dml2_soc_derates_per_dpm {
-	// Union allows both layouts to coexist without increasing struct size
-	// Anonymous structs allow direct member access without .v1 or .v2 prefix
-	union {
-		// Legacy layout - used by soc_and_ip_translator (unchanged access pattern)
-		// TODO: Remove after soc_and_ip_translator migration is complete
-		struct {
-			struct dml2_soc_derate_values_per_dpm system_active_derates_per_dpm;
-			unsigned int min_uclk_khz_threshold[DML_MAX_CLK_TABLE_SIZE];
-			unsigned int min_fclk_khz_threshold[DML_MAX_CLK_TABLE_SIZE];
-			unsigned int min_dcfclk_khz_threshold[DML_MAX_CLK_TABLE_SIZE];
-		};
-
-		// New layout - used by DML internally
-		// Arrays of derate/threshold pairs, one per DPM level
-		struct {
-			struct dml2_soc_derate_values_per_dpm_v2 dram_per_dpm_derate_pixel[DML_MAX_CLK_TABLE_SIZE];
-			struct dml2_soc_derate_values_per_dpm_v2 fclk_per_dpm_derate[DML_MAX_CLK_TABLE_SIZE];
-			struct dml2_soc_derate_values_per_dpm_v2 dcfclk_per_dpm_derate[DML_MAX_CLK_TABLE_SIZE];
-		};
-	};
+	struct dml2_soc_derate_values_per_dpm dram_per_dpm_derate_pixel[DML_MAX_CLK_TABLE_SIZE];
+	struct dml2_soc_derate_values_per_dpm fclk_per_dpm_derate[DML_MAX_CLK_TABLE_SIZE];
+	struct dml2_soc_derate_values_per_dpm dcfclk_per_dpm_derate[DML_MAX_CLK_TABLE_SIZE];
 };
 
 struct dml2_soc_qos_parameters {
-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.