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 <[email protected]>
---
 .../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
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to