|
@@ -771,8 +771,8 @@ bool dce112_validate_bandwidth(
|
|
|
|
|
|
if (bw_calcs(
|
|
|
dc->ctx,
|
|
|
- &dc->bw_dceip,
|
|
|
- &dc->bw_vbios,
|
|
|
+ dc->bw_dceip,
|
|
|
+ dc->bw_vbios,
|
|
|
context->res_ctx.pipe_ctx,
|
|
|
dc->res_pool->pipe_count,
|
|
|
&context->bw.dce))
|
|
@@ -1018,21 +1018,21 @@ static void bw_calcs_data_update_from_pplib(struct core_dc *dc)
|
|
|
DM_PP_CLOCK_TYPE_ENGINE_CLK,
|
|
|
&clks);
|
|
|
/* convert all the clock fro kHz to fix point mHz */
|
|
|
- dc->bw_vbios.high_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->high_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels-1], 1000);
|
|
|
- dc->bw_vbios.mid1_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid1_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels/8], 1000);
|
|
|
- dc->bw_vbios.mid2_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid2_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels*2/8], 1000);
|
|
|
- dc->bw_vbios.mid3_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid3_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels*3/8], 1000);
|
|
|
- dc->bw_vbios.mid4_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid4_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels*4/8], 1000);
|
|
|
- dc->bw_vbios.mid5_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid5_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels*5/8], 1000);
|
|
|
- dc->bw_vbios.mid6_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid6_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels*6/8], 1000);
|
|
|
- dc->bw_vbios.low_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->low_sclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[0], 1000);
|
|
|
|
|
|
/*do memory clock*/
|
|
@@ -1041,12 +1041,12 @@ static void bw_calcs_data_update_from_pplib(struct core_dc *dc)
|
|
|
DM_PP_CLOCK_TYPE_MEMORY_CLK,
|
|
|
&clks);
|
|
|
|
|
|
- dc->bw_vbios.low_yclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->low_yclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[0] * MEMORY_TYPE_MULTIPLIER, 1000);
|
|
|
- dc->bw_vbios.mid_yclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid_yclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels>>1] * MEMORY_TYPE_MULTIPLIER,
|
|
|
1000);
|
|
|
- dc->bw_vbios.high_yclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->high_yclk = bw_frc_to_fixed(
|
|
|
clks.clocks_in_khz[clks.num_levels-1] * MEMORY_TYPE_MULTIPLIER,
|
|
|
1000);
|
|
|
|
|
@@ -1054,21 +1054,21 @@ static void bw_calcs_data_update_from_pplib(struct core_dc *dc)
|
|
|
}
|
|
|
|
|
|
/* convert all the clock fro kHz to fix point mHz TODO: wloop data */
|
|
|
- dc->bw_vbios.high_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->high_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels-1].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.mid1_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid1_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels/8].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.mid2_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid2_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels*2/8].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.mid3_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid3_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels*3/8].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.mid4_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid4_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels*4/8].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.mid5_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid5_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels*5/8].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.mid6_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid6_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[eng_clks.num_levels*6/8].clocks_in_khz, 1000);
|
|
|
- dc->bw_vbios.low_sclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->low_sclk = bw_frc_to_fixed(
|
|
|
eng_clks.data[0].clocks_in_khz, 1000);
|
|
|
|
|
|
/*do memory clock*/
|
|
@@ -1082,12 +1082,12 @@ static void bw_calcs_data_update_from_pplib(struct core_dc *dc)
|
|
|
* ALSO always convert UMA clock (from PPLIB) to YCLK (HW formula):
|
|
|
* YCLK = UMACLK*m_memoryTypeMultiplier
|
|
|
*/
|
|
|
- dc->bw_vbios.low_yclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->low_yclk = bw_frc_to_fixed(
|
|
|
mem_clks.data[0].clocks_in_khz * MEMORY_TYPE_MULTIPLIER, 1000);
|
|
|
- dc->bw_vbios.mid_yclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->mid_yclk = bw_frc_to_fixed(
|
|
|
mem_clks.data[mem_clks.num_levels>>1].clocks_in_khz * MEMORY_TYPE_MULTIPLIER,
|
|
|
1000);
|
|
|
- dc->bw_vbios.high_yclk = bw_frc_to_fixed(
|
|
|
+ dc->bw_vbios->high_yclk = bw_frc_to_fixed(
|
|
|
mem_clks.data[mem_clks.num_levels-1].clocks_in_khz * MEMORY_TYPE_MULTIPLIER,
|
|
|
1000);
|
|
|
|
|
@@ -1325,7 +1325,7 @@ static bool construct(
|
|
|
if (!dce112_hw_sequencer_construct(dc))
|
|
|
goto res_create_fail;
|
|
|
|
|
|
- bw_calcs_init(&dc->bw_dceip, &dc->bw_vbios, dc->ctx->asic_id);
|
|
|
+ bw_calcs_init(dc->bw_dceip, dc->bw_vbios, dc->ctx->asic_id);
|
|
|
|
|
|
bw_calcs_data_update_from_pplib(dc);
|
|
|
|