summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/display/modules/power/power_helpers.c
diff options
context:
space:
mode:
authorWyatt Wood <wyatt.wood@amd.com>2020-04-05 16:40:43 -0400
committerAlex Deucher <alexander.deucher@amd.com>2020-04-09 10:43:16 -0400
commitc5d5b0ecf9c849c23e167965d88e609958cd805d (patch)
tree36449f8c49dd3b02c46a1f478bde94a66efea44b /drivers/gpu/drm/amd/display/modules/power/power_helpers.c
parentc06a545ae531bd8f791dc41b787822512eb65c5d (diff)
downloadlinux-c5d5b0ecf9c849c23e167965d88e609958cd805d.tar.gz
linux-c5d5b0ecf9c849c23e167965d88e609958cd805d.tar.bz2
linux-c5d5b0ecf9c849c23e167965d88e609958cd805d.zip
drm/amd/display: Implement abm config table copy to dmcub
[Why] Driver must pass abm config table to dmub fw. This provides various parameters for abm functionality. [How] There is too much data to be passed in an inbox message, so we must pass this data using an indirect buffer. Copy the table to cw7 via x86, driver copies to fw_state structure. Signed-off-by: Wyatt Wood <wyatt.wood@amd.com> Reviewed-by: Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Acked-by: Tony Cheng <Tony.Cheng@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/display/modules/power/power_helpers.c')
-rw-r--r--drivers/gpu/drm/amd/display/modules/power/power_helpers.c4
1 files changed, 2 insertions, 2 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 8bf1bdd0f457..c1a95da6706f 100644
--- a/drivers/gpu/drm/amd/display/modules/power/power_helpers.c
+++ b/drivers/gpu/drm/amd/display/modules/power/power_helpers.c
@@ -671,8 +671,8 @@ bool dmcu_load_iram(struct dmcu *dmcu,
// ABM 2.4 and up are implemented on dmcub
if (dmcu == NULL) {
fill_iram_v_2_3((struct iram_table_v_2_2 *)ram_table, params);
- result = abm->funcs->load_abm_config(
- abm, 0, (char *)(&ram_table), IRAM_RESERVE_AREA_START_V2_2);
+ result = abm->funcs->init_abm_config(
+ abm, (char *)(&ram_table), IRAM_RESERVE_AREA_START_V2_2);
} else if (dmcu->dmcu_version.abm_version == 0x24) {
fill_iram_v_2_3((struct iram_table_v_2_2 *)ram_table, params);
result = dmcu->funcs->load_iram(