/Linux-v4.19/drivers/gpu/drm/radeon/ |
D | btc_dpm.c | 1309 u16 *vddc, u16 *vddci) in btc_apply_voltage_delta_rules() argument 1314 if ((0 == *vddc) || (0 == *vddci)) in btc_apply_voltage_delta_rules() 1317 if (*vddc > *vddci) { in btc_apply_voltage_delta_rules() 1318 if ((*vddc - *vddci) > rdev->pm.dpm.dyn_state.vddc_vddci_delta) { in btc_apply_voltage_delta_rules() 1320 (*vddc - rdev->pm.dpm.dyn_state.vddc_vddci_delta)); in btc_apply_voltage_delta_rules() 1324 if ((*vddci - *vddc) > rdev->pm.dpm.dyn_state.vddc_vddci_delta) { in btc_apply_voltage_delta_rules() 1327 *vddc = (new_voltage < max_vddc) ? new_voltage : max_vddc; in btc_apply_voltage_delta_rules() 1403 if (ulv_pl->vddc) { in btc_populate_ulv_state() 2101 u16 vddc, vddci; in btc_apply_state_adjust_rules() local 2119 if (ps->high.vddc > max_limits->vddc) in btc_apply_state_adjust_rules() [all …]
|
D | rv6xx_dpm.c | 486 pi->hw.vddc[R600_POWER_LEVEL_CTXSW] = state->high.vddc; in rv6xx_calculate_voltage_stepping_parameters() 487 pi->hw.vddc[R600_POWER_LEVEL_HIGH] = state->high.vddc; in rv6xx_calculate_voltage_stepping_parameters() 488 pi->hw.vddc[R600_POWER_LEVEL_MEDIUM] = state->medium.vddc; in rv6xx_calculate_voltage_stepping_parameters() 489 pi->hw.vddc[R600_POWER_LEVEL_LOW] = state->low.vddc; in rv6xx_calculate_voltage_stepping_parameters() 509 if ((state->high.vddc == state->medium.vddc) && in rv6xx_calculate_voltage_stepping_parameters() 517 if ((state->medium.vddc == state->low.vddc) && in rv6xx_calculate_voltage_stepping_parameters() 726 pi->hw.vddc[i]); in rv6xx_program_voltage_stepping_parameters_except_lowest_entry() 768 pi->hw.vddc[0]); in rv6xx_program_voltage_stepping_parameters_lowest_entry() 949 pi->hw.vddc[i], in rv6xx_get_master_voltage_mask() 974 new_state->low.vddc, in rv6xx_enable_static_voltage_control() [all …]
|
D | si_dpm.c | 1773 s64 kt, kv, leakage_w, i_leakage, vddc; in si_calculate_leakage_for_v_and_t_formula() local 1778 vddc = div64_s64(drm_int2fixp(v), 1000); in si_calculate_leakage_for_v_and_t_formula() 1787 tmp = drm_fixp_mul(t_slope, vddc) + t_intercept; in si_calculate_leakage_for_v_and_t_formula() 1790 kv = drm_fixp_mul(av, drm_fixp_exp(drm_fixp_mul(bv, vddc))); in si_calculate_leakage_for_v_and_t_formula() 1792 leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc); in si_calculate_leakage_for_v_and_t_formula() 1811 s64 kt, kv, leakage_w, i_leakage, vddc; in si_calculate_leakage_for_v_formula() local 1814 vddc = div64_s64(drm_int2fixp(v), 1000); in si_calculate_leakage_for_v_formula() 1818 drm_fixp_exp(drm_fixp_mul(div64_s64(drm_int2fixp(coeff->bv), 100000000), vddc))); in si_calculate_leakage_for_v_formula() 1820 leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc); in si_calculate_leakage_for_v_formula() 2292 SISLANDS_SMC_VOLTAGE_VALUE vddc; in si_populate_power_containment_values() local [all …]
|
D | rv770_dpm.c | 566 int rv770_populate_vddc_value(struct radeon_device *rdev, u16 vddc, in rv770_populate_vddc_value() argument 579 if (vddc <= pi->vddc_table[i].vddc) { in rv770_populate_vddc_value() 581 voltage->value = cpu_to_be16(vddc); in rv770_populate_vddc_value() 664 ret = rv770_populate_vddc_value(rdev, pl->vddc, in rv770_convert_power_level_to_smc() 665 &level->vddc); in rv770_convert_power_level_to_smc() 943 &table->ACPIState.levels[0].vddc); in rv770_populate_smc_acpi_state() 957 &table->ACPIState.levels[0].vddc); in rv770_populate_smc_acpi_state() 1072 initial_state->low.vddc, in rv770_populate_smc_initial_state() 1073 &table->initialState.levels[0].vddc); in rv770_populate_smc_initial_state() 1134 pi->vddc_table[i].vddc)); in rv770_populate_smc_vddc_table() [all …]
|
D | ni_dpm.c | 745 s64 kt, kv, leakage_w, i_leakage, vddc, temperature; in ni_calculate_leakage_for_v_and_t_formula() local 748 vddc = div64_s64(drm_int2fixp(v), 1000); in ni_calculate_leakage_for_v_and_t_formula() 754 drm_fixp_exp(drm_fixp_mul(div64_s64(drm_int2fixp(coeff->bv), 1000), vddc))); in ni_calculate_leakage_for_v_and_t_formula() 756 leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc); in ni_calculate_leakage_for_v_and_t_formula() 812 if (ps->performance_levels[i].vddc > max_limits->vddc) in ni_apply_state_adjust_rules() 813 ps->performance_levels[i].vddc = max_limits->vddc; in ni_apply_state_adjust_rules() 836 if (ps->performance_levels[i].vddc < ps->performance_levels[i - 1].vddc) in ni_apply_state_adjust_rules() 837 ps->performance_levels[i].vddc = ps->performance_levels[i - 1].vddc; in ni_apply_state_adjust_rules() 875 max_limits->vddc, &ps->performance_levels[i].vddc); in ni_apply_state_adjust_rules() 881 max_limits->vddc, &ps->performance_levels[i].vddc); in ni_apply_state_adjust_rules() [all …]
|
D | rv6xx_dpm.h | 40 u16 vddc[R600_PM_NUMBER_OF_VOLTAGE_LEVELS]; member 82 u16 vddc; member
|
D | rv770_dpm.h | 65 u16 vddc; member 144 u16 vddc; member 217 int rv770_populate_vddc_value(struct radeon_device *rdev, u16 vddc,
|
D | btc_dpm.h | 53 u16 *vddc, u16 *vddci);
|
D | rv730_dpm.c | 247 &table->ACPIState.levels[0].vddc); in rv730_populate_smc_acpi_state() 254 &table->ACPIState.levels[0].vddc); in rv730_populate_smc_acpi_state() 365 initial_state->low.vddc, in rv730_populate_smc_initial_state() 366 &table->initialState.levels[0].vddc); in rv730_populate_smc_initial_state()
|
D | rv770_smc.h | 110 RV770_SMC_VOLTAGE_VALUE vddc; member
|
D | ci_dpm.c | 268 static u8 ci_convert_to_vid(u16 vddc) in ci_convert_to_vid() argument 270 return (6200 - (vddc * VOLTAGE_SCALE)) / 25; in ci_convert_to_vid() 295 lo_vid[i] = ci_convert_to_vid(rdev->pm.dpm.dyn_state.cac_leakage_table.entries[i].vddc); in ci_populate_bapm_vddc_vid_sidd() 1340 u16 vddc, vddci; in ci_get_leakage_voltages() local 1349 if (radeon_atom_get_voltage_evv(rdev, virtual_voltage_id, &vddc) != 0) in ci_get_leakage_voltages() 1351 if (vddc != 0 && vddc != virtual_voltage_id) { in ci_get_leakage_voltages() 1352 pi->vddc_leakage.actual_voltage[pi->vddc_leakage.count] = vddc; in ci_get_leakage_voltages() 1360 if (radeon_atom_get_leakage_vddc_based_on_leakage_params(rdev, &vddc, &vddci, in ci_get_leakage_voltages() 1363 if (vddc != 0 && vddc != virtual_voltage_id) { in ci_get_leakage_voltages() 1364 pi->vddc_leakage.actual_voltage[pi->vddc_leakage.count] = vddc; in ci_get_leakage_voltages() [all …]
|
D | rv740_dpm.c | 335 &table->ACPIState.levels[0].vddc); in rv740_populate_smc_acpi_state() 343 &table->ACPIState.levels[0].vddc); in rv740_populate_smc_acpi_state()
|
/Linux-v4.19/drivers/gpu/drm/amd/amdgpu/ |
D | si_dpm.c | 1864 s64 kt, kv, leakage_w, i_leakage, vddc; in si_calculate_leakage_for_v_and_t_formula() local 1869 vddc = div64_s64(drm_int2fixp(v), 1000); in si_calculate_leakage_for_v_and_t_formula() 1878 tmp = drm_fixp_mul(t_slope, vddc) + t_intercept; in si_calculate_leakage_for_v_and_t_formula() 1881 kv = drm_fixp_mul(av, drm_fixp_exp(drm_fixp_mul(bv, vddc))); in si_calculate_leakage_for_v_and_t_formula() 1883 leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc); in si_calculate_leakage_for_v_and_t_formula() 1902 s64 kt, kv, leakage_w, i_leakage, vddc; in si_calculate_leakage_for_v_formula() local 1905 vddc = div64_s64(drm_int2fixp(v), 1000); in si_calculate_leakage_for_v_formula() 1909 drm_fixp_exp(drm_fixp_mul(div64_s64(drm_int2fixp(coeff->bv), 100000000), vddc))); in si_calculate_leakage_for_v_formula() 1911 leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc); in si_calculate_leakage_for_v_formula() 2390 SISLANDS_SMC_VOLTAGE_VALUE vddc; in si_populate_power_containment_values() local [all …]
|
D | amdgpu_atombios.h | 175 u16 *vddc, u16 *vddci, 209 u16 *vddc, u16 *vddci, u16 *mvdd);
|
D | si_dpm.h | 441 RV770_SMC_VOLTAGE_VALUE vddc; member 489 u16 vddc; member 601 u16 vddc; member 761 NISLANDS_SMC_VOLTAGE_VALUE vddc; member
|
D | ci_dpm.c | 393 static u8 ci_convert_to_vid(u16 vddc) in ci_convert_to_vid() argument 395 return (6200 - (vddc * VOLTAGE_SCALE)) / 25; in ci_convert_to_vid() 420 lo_vid[i] = ci_convert_to_vid(adev->pm.dpm.dyn_state.cac_leakage_table.entries[i].vddc); in ci_populate_bapm_vddc_vid_sidd() 1494 u16 vddc, vddci; in ci_get_leakage_voltages() local 1503 if (amdgpu_atombios_get_voltage_evv(adev, virtual_voltage_id, &vddc) != 0) in ci_get_leakage_voltages() 1505 if (vddc != 0 && vddc != virtual_voltage_id) { in ci_get_leakage_voltages() 1506 pi->vddc_leakage.actual_voltage[pi->vddc_leakage.count] = vddc; in ci_get_leakage_voltages() 1514 if (amdgpu_atombios_get_leakage_vddc_based_on_leakage_params(adev, &vddc, &vddci, in ci_get_leakage_voltages() 1517 if (vddc != 0 && vddc != virtual_voltage_id) { in ci_get_leakage_voltages() 1518 pi->vddc_leakage.actual_voltage[pi->vddc_leakage.count] = vddc; in ci_get_leakage_voltages() [all …]
|
D | amdgpu_dpm.h | 100 u16 vddc; member 121 u16 vddc; member
|
/Linux-v4.19/drivers/gpu/drm/amd/powerplay/hwmgr/ |
D | smu7_hwmgr.c | 841 entries[i].vddc = dep_sclk_table->entries[i].vddc; in smu7_odn_initial_default_setting() 853 entries[i].vddc = dep_mclk_table->entries[i].vddc; in smu7_odn_initial_default_setting() 879 || min_vddc > dep_sclk_table->entries[0].vddc) in smu7_setup_voltage_range_from_vbios() 880 min_vddc = dep_sclk_table->entries[0].vddc; in smu7_setup_voltage_range_from_vbios() 883 || max_vddc < dep_sclk_table->entries[dep_sclk_table->count-1].vddc) in smu7_setup_voltage_range_from_vbios() 884 max_vddc = dep_sclk_table->entries[dep_sclk_table->count-1].vddc; in smu7_setup_voltage_range_from_vbios() 924 if (dep_table->entries[i].vddc != odn_dep_table->entries[i].vddc) { in smu7_check_dpm_table_updated() 933 if (dep_table->entries[i].vddc != odn_dep_table->entries[i].vddc) { in smu7_check_dpm_table_updated() 1695 uint16_t vddc = 0; in smu7_get_evv_voltages() local 1760 sclk, vv_id, &vddc) == 0) { in smu7_get_evv_voltages() [all …]
|
D | hwmgr_ppt.h | 37 uint16_t vddc; member 66 uint16_t vddc; member
|
D | vega10_hwmgr.c | 321 odn_table->max_vddc = dep_table[0]->entries[dep_table[0]->count - 1].vddc; in vega10_odn_initial_default_setting() 323 odn_table->min_vddc = dep_table[0]->entries[0].vddc; in vega10_odn_initial_default_setting() 329 od_table[2]->entries[i].vddc = odn_table->max_vddc > od_table[2]->entries[i].vddc ? in vega10_odn_initial_default_setting() 331 od_table[2]->entries[i].vddc; in vega10_odn_initial_default_setting() 527 uint32_t vddc = 0; in vega10_get_evv_voltages() local 552 VOLTAGE_TYPE_VDDC, sclk, vv_id, &vddc), in vega10_get_evv_voltages() 558 PP_ASSERT_WITH_CODE((vddc < 2000 && vddc != 0), in vega10_get_evv_voltages() 562 if (vddc != 0 && vddc != vv_id) { in vega10_get_evv_voltages() 563 data->vddc_leakage.actual_voltage[data->vddc_leakage.count] = (uint16_t)(vddc/100); in vega10_get_evv_voltages() 622 uint16_t *vddc) in vega10_patch_clock_voltage_limits_with_vddc_leakage() argument [all …]
|
D | smu_helper.c | 32 uint8_t convert_to_vid(uint16_t vddc) in convert_to_vid() argument 34 return (uint8_t) ((6200 - (vddc * VOLTAGE_SCALE)) / 25); in convert_to_vid() 510 if (req_vddc <= vddc_table->entries[i].vddc) { in phm_apply_dal_min_voltage_request() 511 req_volt = (((uint32_t)vddc_table->entries[i].vddc) * VOLTAGE_SCALE); in phm_apply_dal_min_voltage_request() 645 dep_table->entries[i].vddc = allowed_dep_table->entries[i].vddc; in smu_get_voltage_dependency_table_ppt_v1()
|
/Linux-v4.19/drivers/gpu/drm/amd/powerplay/inc/ |
D | hardwaremanager.h | 272 uint32_t vddc; member 384 uint32_t vddc; member
|
/Linux-v4.19/drivers/gpu/drm/amd/powerplay/smumgr/ |
D | vegam_smumgr.c | 617 *voltage |= (dep_table->entries[i].vddc * in vegam_get_dependency_volt_by_clk() 627 (dep_table->entries[i].vddc - in vegam_get_dependency_volt_by_clk() 645 *voltage |= (dep_table->entries[i - 1].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in vegam_get_dependency_volt_by_clk() 647 (dep_table->entries[i - 1].vddc - in vegam_get_dependency_volt_by_clk() 1223 (mm_table->entries[count].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in vegam_populate_smc_vce_level() 1227 mm_table->entries[count].vddc - VDDC_VDDCI_DELTA); in vegam_populate_smc_vce_level() 1229 vddci = mm_table->entries[count].vddc - VDDC_VDDCI_DELTA; in vegam_populate_smc_vce_level() 1337 (mm_table->entries[count].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in vegam_populate_smc_uvd_level() 1341 mm_table->entries[count].vddc - VDDC_VDDCI_DELTA); in vegam_populate_smc_uvd_level() 1343 vddci = mm_table->entries[count].vddc - VDDC_VDDCI_DELTA; in vegam_populate_smc_uvd_level()
|
D | fiji_smumgr.c | 381 *voltage |= (dep_table->entries[i].vddc * in fiji_get_dependency_volt_by_clk() 391 (dep_table->entries[i].vddc - in fiji_get_dependency_volt_by_clk() 409 *voltage |= (dep_table->entries[i - 1].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in fiji_get_dependency_volt_by_clk() 416 (dep_table->entries[i].vddc - in fiji_get_dependency_volt_by_clk() 1449 (mm_table->entries[count].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in fiji_populate_smc_vce_level() 1451 ((mm_table->entries[count].vddc - VDDC_VDDCI_DELTA) * in fiji_populate_smc_vce_level() 1486 table->AcpLevel[count].MinVoltage |= (mm_table->entries[count].vddc * in fiji_populate_smc_acp_level() 1488 table->AcpLevel[count].MinVoltage |= ((mm_table->entries[count].vddc - in fiji_populate_smc_acp_level() 1585 table->UvdLevel[count].MinVoltage |= (mm_table->entries[count].vddc * in fiji_populate_smc_uvd_level() 1587 table->UvdLevel[count].MinVoltage |= ((mm_table->entries[count].vddc - in fiji_populate_smc_uvd_level()
|
D | polaris10_smumgr.c | 368 *voltage |= (dep_table->entries[i].vddc * in polaris10_get_dependency_volt_by_clk() 378 (dep_table->entries[i].vddc - in polaris10_get_dependency_volt_by_clk() 396 *voltage |= (dep_table->entries[i - 1].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in polaris10_get_dependency_volt_by_clk() 403 (dep_table->entries[i].vddc - in polaris10_get_dependency_volt_by_clk() 1304 (mm_table->entries[count].vddc * VOLTAGE_SCALE) << VDDC_SHIFT; in polaris10_populate_smc_vce_level() 1308 mm_table->entries[count].vddc - VDDC_VDDCI_DELTA); in polaris10_populate_smc_vce_level() 1310 vddci = mm_table->entries[count].vddc - VDDC_VDDCI_DELTA; in polaris10_populate_smc_vce_level() 1410 table->UvdLevel[count].MinVoltage |= (mm_table->entries[count].vddc * in polaris10_populate_smc_uvd_level() 1415 mm_table->entries[count].vddc - VDDC_VDDCI_DELTA); in polaris10_populate_smc_uvd_level() 1417 vddci = mm_table->entries[count].vddc - VDDC_VDDCI_DELTA; in polaris10_populate_smc_uvd_level()
|