diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/1591-drm-amd-display-reduce-abm-min-reduction-deviation-g.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/1591-drm-amd-display-reduce-abm-min-reduction-deviation-g.patch | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/1591-drm-amd-display-reduce-abm-min-reduction-deviation-g.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/1591-drm-amd-display-reduce-abm-min-reduction-deviation-g.patch new file mode 100644 index 00000000..e594d205 --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/1591-drm-amd-display-reduce-abm-min-reduction-deviation-g.patch @@ -0,0 +1,64 @@ +From deb47160c74e0206fa4809c838c28d8fc8a820e1 Mon Sep 17 00:00:00 2001 +From: Josip Pavic <Josip.Pavic@amd.com> +Date: Fri, 22 Feb 2019 16:55:08 -0500 +Subject: [PATCH 1591/2940] drm/amd/display: reduce abm min reduction, + deviation gain and contrast factor + +[Why] +Increased power savings are desired for ABM 2.2. + +[How] +Reduce the minimum reduction level, the deviation gain and the contrast factor +to allow for more aggressive operation of the algorithm. + +Signed-off-by: Josip Pavic <Josip.Pavic@amd.com> +Reviewed-by: Anthony Koo <Anthony.Koo@amd.com> +Acked-by: Leo Li <sunpeng.li@amd.com> +--- + .../drm/amd/display/modules/power/power_helpers.c | 15 +++++++++------ + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git a/drivers/gpu/drm/amd/display/modules/power/power_helpers.c b/drivers/gpu/drm/amd/display/modules/power/power_helpers.c +index 038b88221c5f..efd386f3ca53 100644 +--- a/drivers/gpu/drm/amd/display/modules/power/power_helpers.c ++++ b/drivers/gpu/drm/amd/display/modules/power/power_helpers.c +@@ -41,9 +41,12 @@ static const unsigned char min_reduction_table[13] = { + static const unsigned char max_reduction_table[13] = { + 0xf5, 0xe5, 0xd9, 0xcd, 0xb1, 0xa5, 0xa5, 0x80, 0x65, 0x4d, 0x4d, 0x4d, 0x32}; + +-/* ABM 2.2 Min Reduction effectively disabled (100% for all configs)*/ ++/* Possible ABM 2.2 Min Reduction configs from least aggressive to most aggressive ++ * 0 1 2 3 4 5 6 7 8 9 10 11 12 ++ * 100 100 100 100 100 100 100 90.2 85.1 80.0 80.0 75.3 75.3 % ++ */ + static const unsigned char min_reduction_table_v_2_2[13] = { +-0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; ++0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe6, 0xd9, 0xcc, 0xcc, 0xc0, 0xc0}; + + /* Possible ABM 2.2 Max Reduction configs from least aggressive to most aggressive + * 0 1 2 3 4 5 6 7 8 9 10 11 12 +@@ -408,9 +411,9 @@ void fill_iram_v_2_2(struct iram_table_v_2_2 *ram_table, struct dmcu_iram_parame + ram_table->flags = 0x0; + + ram_table->deviation_gain[0] = 0xb3; +- ram_table->deviation_gain[1] = 0xb3; +- ram_table->deviation_gain[2] = 0xb3; +- ram_table->deviation_gain[3] = 0xb3; ++ ram_table->deviation_gain[1] = 0xa8; ++ ram_table->deviation_gain[2] = 0x98; ++ ram_table->deviation_gain[3] = 0x68; + + ram_table->min_reduction[0][0] = min_reduction_table_v_2_2[abm_config[set][0]]; + ram_table->min_reduction[1][0] = min_reduction_table_v_2_2[abm_config[set][0]]; +@@ -505,7 +508,7 @@ void fill_iram_v_2_2(struct iram_table_v_2_2 *ram_table, struct dmcu_iram_parame + + ram_table->contrastFactor[0] = 0x99; + ram_table->contrastFactor[1] = 0x99; +- ram_table->contrastFactor[2] = 0x99; ++ ram_table->contrastFactor[2] = 0x90; + ram_table->contrastFactor[3] = 0x80; + + ram_table->iir_curve[0] = 0x65; +-- +2.17.1 + |