Lines 23-28
Link Here
|
23 |
* |
23 |
* |
24 |
*/ |
24 |
*/ |
25 |
|
25 |
|
|
|
26 |
#include "amdgpu.h" |
27 |
|
26 |
#include "dccg.h" |
28 |
#include "dccg.h" |
27 |
#include "clk_mgr_internal.h" |
29 |
#include "clk_mgr_internal.h" |
28 |
|
30 |
|
Lines 126-131
static void rn_update_clocks(struct clk_mgr *clk_mgr_base,
Link Here
|
126 |
bool safe_to_lower) |
128 |
bool safe_to_lower) |
127 |
{ |
129 |
{ |
128 |
struct clk_mgr_internal *clk_mgr = TO_CLK_MGR_INTERNAL(clk_mgr_base); |
130 |
struct clk_mgr_internal *clk_mgr = TO_CLK_MGR_INTERNAL(clk_mgr_base); |
|
|
131 |
struct amdgpu_device *adev = clk_mgr_base->ctx->driver_context; |
129 |
struct dc_clocks *new_clocks = &context->bw_ctx.bw.dcn.clk; |
132 |
struct dc_clocks *new_clocks = &context->bw_ctx.bw.dcn.clk; |
130 |
struct dc *dc = clk_mgr_base->ctx->dc; |
133 |
struct dc *dc = clk_mgr_base->ctx->dc; |
131 |
int display_count; |
134 |
int display_count; |
Lines 157-163
static void rn_update_clocks(struct clk_mgr *clk_mgr_base,
Link Here
|
157 |
} |
160 |
} |
158 |
|
161 |
|
159 |
/* if we can go lower, go lower */ |
162 |
/* if we can go lower, go lower */ |
160 |
if (display_count == 0 && !hpd_state) { |
163 |
if (display_count == 0 && (adev->in_s0ix || !hpd_state)) { |
161 |
rn_vbios_smu_set_dcn_low_power_state(clk_mgr, DCN_PWR_STATE_LOW_POWER); |
164 |
rn_vbios_smu_set_dcn_low_power_state(clk_mgr, DCN_PWR_STATE_LOW_POWER); |
162 |
/* update power state */ |
165 |
/* update power state */ |
163 |
clk_mgr_base->clks.pwr_state = DCN_PWR_STATE_LOW_POWER; |
166 |
clk_mgr_base->clks.pwr_state = DCN_PWR_STATE_LOW_POWER; |
164 |
- |
|
|