Lines Matching refs:ps

348 	struct trinity_ps *ps = rps->ps_priv;  in trinity_get_ps()  local
350 return ps; in trinity_get_ps()
870 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_setup_uvd_clock_table() local
871 u32 uvdstates = (ps->vclk_low_divider | in trinity_setup_uvd_clock_table()
872 ps->vclk_high_divider << 8 | in trinity_setup_uvd_clock_table()
873 ps->dclk_low_divider << 16 | in trinity_setup_uvd_clock_table()
874 ps->dclk_high_divider << 24); in trinity_setup_uvd_clock_table()
1189 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_dpm_force_performance_level() local
1192 if (ps->num_levels <= 1) in trinity_dpm_force_performance_level()
1199 ret = trinity_dpm_n_levels_disabled(rdev, ps->num_levels - 1); in trinity_dpm_force_performance_level()
1203 for (i = 0; i < ps->num_levels; i++) { in trinity_dpm_force_performance_level()
1306 struct trinity_ps *ps) in trinity_patch_boot_state() argument
1310 ps->num_levels = 1; in trinity_patch_boot_state()
1311 ps->nbps_flags = 0; in trinity_patch_boot_state()
1312 ps->bapm_flags = 0; in trinity_patch_boot_state()
1313 ps->levels[0] = pi->boot_pl; in trinity_patch_boot_state()
1381 struct trinity_ps *ps, in trinity_patch_thermal_state() argument
1398 ps->levels[0].vddc_index = current_vddc; in trinity_patch_thermal_state()
1400 if (ps->levels[0].sclk > current_sclk) in trinity_patch_thermal_state()
1401 ps->levels[0].sclk = current_sclk; in trinity_patch_thermal_state()
1403 ps->levels[0].ds_divider_index = in trinity_patch_thermal_state()
1404 trinity_get_sleep_divider_id_from_clock(rdev, ps->levels[0].sclk, sclk_in_sr); in trinity_patch_thermal_state()
1405 ps->levels[0].ss_divider_index = ps->levels[0].ds_divider_index; in trinity_patch_thermal_state()
1406 ps->levels[0].allow_gnb_slow = 1; in trinity_patch_thermal_state()
1407 ps->levels[0].force_nbp_state = 0; in trinity_patch_thermal_state()
1408 ps->levels[0].display_wm = 0; in trinity_patch_thermal_state()
1409 ps->levels[0].vce_wm = in trinity_patch_thermal_state()
1410 trinity_calculate_vce_wm(rdev, ps->levels[0].sclk); in trinity_patch_thermal_state()
1414 struct trinity_ps *ps, u32 index) in trinity_calculate_display_wm() argument
1416 if (ps == NULL || ps->num_levels <= 1) in trinity_calculate_display_wm()
1418 else if (ps->num_levels == 2) { in trinity_calculate_display_wm()
1426 else if (ps->levels[index].sclk < 30000) in trinity_calculate_display_wm()
1455 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_adjust_uvd_state() local
1475 ps->vclk_low_divider = in trinity_adjust_uvd_state()
1477 ps->dclk_low_divider = in trinity_adjust_uvd_state()
1479 ps->vclk_high_divider = in trinity_adjust_uvd_state()
1481 ps->dclk_high_divider = in trinity_adjust_uvd_state()
1492 struct trinity_ps *ps = trinity_get_ps(new_rps); in trinity_apply_state_adjust_rules() local
1503 return trinity_patch_thermal_state(rdev, ps, current_ps); in trinity_apply_state_adjust_rules()
1507 for (i = 0; i < ps->num_levels; i++) { in trinity_apply_state_adjust_rules()
1508 if (ps->levels[i].vddc_index < min_voltage) in trinity_apply_state_adjust_rules()
1509 ps->levels[i].vddc_index = min_voltage; in trinity_apply_state_adjust_rules()
1511 if (ps->levels[i].sclk < min_sclk) in trinity_apply_state_adjust_rules()
1512 ps->levels[i].sclk = in trinity_apply_state_adjust_rules()
1515 ps->levels[i].ds_divider_index = in trinity_apply_state_adjust_rules()
1516 sumo_get_sleep_divider_id_from_clock(rdev, ps->levels[i].sclk, sclk_in_sr); in trinity_apply_state_adjust_rules()
1518 ps->levels[i].ss_divider_index = ps->levels[i].ds_divider_index; in trinity_apply_state_adjust_rules()
1520 ps->levels[i].allow_gnb_slow = 1; in trinity_apply_state_adjust_rules()
1521 ps->levels[i].force_nbp_state = 0; in trinity_apply_state_adjust_rules()
1522 ps->levels[i].display_wm = in trinity_apply_state_adjust_rules()
1523 trinity_calculate_display_wm(rdev, ps, i); in trinity_apply_state_adjust_rules()
1524 ps->levels[i].vce_wm = in trinity_apply_state_adjust_rules()
1525 trinity_calculate_vce_wm(rdev, ps->levels[0].sclk); in trinity_apply_state_adjust_rules()
1530 ps->bapm_flags |= TRINITY_POWERSTATE_FLAGS_BAPM_DISABLE; in trinity_apply_state_adjust_rules()
1533 ps->Dpm0PgNbPsLo = 0x1; in trinity_apply_state_adjust_rules()
1534 ps->Dpm0PgNbPsHi = 0x0; in trinity_apply_state_adjust_rules()
1535 ps->DpmXNbPsLo = 0x2; in trinity_apply_state_adjust_rules()
1536 ps->DpmXNbPsHi = 0x1; in trinity_apply_state_adjust_rules()
1544 ps->Dpm0PgNbPsLo = force_high ? 0x2 : 0x3; in trinity_apply_state_adjust_rules()
1545 ps->Dpm0PgNbPsHi = 0x1; in trinity_apply_state_adjust_rules()
1546 ps->DpmXNbPsLo = force_high ? 0x2 : 0x3; in trinity_apply_state_adjust_rules()
1547 ps->DpmXNbPsHi = 0x2; in trinity_apply_state_adjust_rules()
1548 ps->levels[ps->num_levels - 1].allow_gnb_slow = 0; in trinity_apply_state_adjust_rules()
1619 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_parse_pplib_non_clock_info() local
1635 trinity_patch_boot_state(rdev, ps); in trinity_parse_pplib_non_clock_info()
1646 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_parse_pplib_clock_info() local
1647 struct trinity_pl *pl = &ps->levels[index]; in trinity_parse_pplib_clock_info()
1655 ps->num_levels = index + 1; in trinity_parse_pplib_clock_info()
1678 struct sumo_ps *ps; in trinity_parse_power_table() local
1695 rdev->pm.dpm.ps = kzalloc(sizeof(struct radeon_ps) * in trinity_parse_power_table()
1697 if (!rdev->pm.dpm.ps) in trinity_parse_power_table()
1708 ps = kzalloc(sizeof(struct sumo_ps), GFP_KERNEL); in trinity_parse_power_table()
1709 if (ps == NULL) { in trinity_parse_power_table()
1710 kfree(rdev->pm.dpm.ps); in trinity_parse_power_table()
1713 rdev->pm.dpm.ps[i].ps_priv = ps; in trinity_parse_power_table()
1726 &rdev->pm.dpm.ps[i], k, in trinity_parse_power_table()
1730 trinity_parse_pplib_non_clock_info(rdev, &rdev->pm.dpm.ps[i], in trinity_parse_power_table()
1931 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_dpm_print_power_state() local
1936 for (i = 0; i < ps->num_levels; i++) { in trinity_dpm_print_power_state()
1937 struct trinity_pl *pl = &ps->levels[i]; in trinity_dpm_print_power_state()
1950 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_dpm_debugfs_print_current_performance_level() local
1956 if (current_index >= ps->num_levels) { in trinity_dpm_debugfs_print_current_performance_level()
1959 pl = &ps->levels[current_index]; in trinity_dpm_debugfs_print_current_performance_level()
1971 struct trinity_ps *ps = trinity_get_ps(rps); in trinity_dpm_get_current_sclk() local
1977 if (current_index >= ps->num_levels) { in trinity_dpm_get_current_sclk()
1980 pl = &ps->levels[current_index]; in trinity_dpm_get_current_sclk()
1999 kfree(rdev->pm.dpm.ps[i].ps_priv); in trinity_dpm_fini()
2001 kfree(rdev->pm.dpm.ps); in trinity_dpm_fini()