mirror of
https://github.com/linuxboot/heads.git
synced 2024-12-19 04:57:55 +00:00
76 lines
2.3 KiB
Diff
76 lines
2.3 KiB
Diff
|
From 1b2c65e94e6bcd3b36f799c880162fb3b3394ed4 Mon Sep 17 00:00:00 2001
|
||
|
From: Timothy Pearson <tpearson@raptorengineering.com>
|
||
|
Date: Sat, 7 Dec 2019 16:32:55 -0600
|
||
|
Subject: [PATCH 3/3] amdgpu: Wrap FPU dependent functions in dc20
|
||
|
|
||
|
dc20 containes several FPU-dependent functions without proper FPU
|
||
|
kernel mode enable/disable wrappers. Add the required wrappers
|
||
|
for both x86 and POWER.
|
||
|
|
||
|
This enables Navi DC20 support for POWER systems.
|
||
|
|
||
|
Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com>
|
||
|
---
|
||
|
.../gpu/drm/amd/display/dc/dcn20/dcn20_resource.c | 14 ++++++++++++--
|
||
|
1 file changed, 12 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c
|
||
|
index 254973751732..95303b77bfd6 100644
|
||
|
--- a/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c
|
||
|
+++ b/drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c
|
||
|
@@ -2917,14 +2917,19 @@ static bool dcn20_validate_bandwidth_internal(struct dc *dc, struct dc_state *co
|
||
|
bool dcn20_validate_bandwidth(struct dc *dc, struct dc_state *context,
|
||
|
bool fast_validate)
|
||
|
{
|
||
|
+ DC_FP_START()
|
||
|
+
|
||
|
bool voltage_supported = false;
|
||
|
bool full_pstate_supported = false;
|
||
|
bool dummy_pstate_supported = false;
|
||
|
double p_state_latency_us = context->bw_ctx.dml.soc.dram_clock_change_latency_us;
|
||
|
|
||
|
- if (fast_validate)
|
||
|
- return dcn20_validate_bandwidth_internal(dc, context, true);
|
||
|
+ if (fast_validate) {
|
||
|
+ voltage_supported = dcn20_validate_bandwidth_internal(dc, context, true);
|
||
|
|
||
|
+ DC_FP_END()
|
||
|
+ return voltage_supported;
|
||
|
+ }
|
||
|
|
||
|
// Best case, we support full UCLK switch latency
|
||
|
voltage_supported = dcn20_validate_bandwidth_internal(dc, context, false);
|
||
|
@@ -2953,6 +2958,7 @@ bool dcn20_validate_bandwidth(struct dc *dc, struct dc_state *context,
|
||
|
restore_dml_state:
|
||
|
context->bw_ctx.dml.soc.dram_clock_change_latency_us = p_state_latency_us;
|
||
|
|
||
|
+ DC_FP_END()
|
||
|
return voltage_supported;
|
||
|
}
|
||
|
|
||
|
@@ -3472,6 +3478,8 @@ static bool construct(
|
||
|
enum dml_project dml_project_version =
|
||
|
get_dml_project_version(ctx->asic_id.hw_internal_rev);
|
||
|
|
||
|
+ DC_FP_START()
|
||
|
+
|
||
|
ctx->dc_bios->regs = &bios_regs;
|
||
|
pool->base.funcs = &dcn20_res_pool_funcs;
|
||
|
|
||
|
@@ -3760,10 +3768,12 @@ static bool construct(
|
||
|
|
||
|
dc->cap_funcs = cap_funcs;
|
||
|
|
||
|
+ DC_FP_END()
|
||
|
return true;
|
||
|
|
||
|
create_fail:
|
||
|
|
||
|
+ DC_FP_END()
|
||
|
destruct(pool);
|
||
|
|
||
|
return false;
|
||
|
--
|
||
|
2.20.1
|
||
|
|