Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2dccf24 authored by Alex Deucher's avatar Alex Deucher
Browse files

drm/radeon/dpm: drop clk/voltage dependency filters for BTC

No longer needed now that the underlying bug was fixed in
e0792981
(drm/radeon/dpm: fix typo in vddci setup for eg/btc).

bug:
https://bugs.freedesktop.org/show_bug.cgi?id=69721



Reviewed-by: default avatarAlexandre Demers <alexandre.f.demers@gmail.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 6aff1e28
Loading
Loading
Loading
Loading
+0 −34
Original line number Diff line number Diff line
@@ -2099,7 +2099,6 @@ static void btc_apply_state_adjust_rules(struct radeon_device *rdev,
	bool disable_mclk_switching;
	u32 mclk, sclk;
	u16 vddc, vddci;
	u32 max_sclk_vddc, max_mclk_vddci, max_mclk_vddc;

	if ((rdev->pm.dpm.new_active_crtc_count > 1) ||
	    btc_dpm_vblank_too_short(rdev))
@@ -2141,39 +2140,6 @@ static void btc_apply_state_adjust_rules(struct radeon_device *rdev,
			ps->low.vddci = max_limits->vddci;
	}

	/* limit clocks to max supported clocks based on voltage dependency tables */
	btc_get_max_clock_from_voltage_dependency_table(&rdev->pm.dpm.dyn_state.vddc_dependency_on_sclk,
							&max_sclk_vddc);
	btc_get_max_clock_from_voltage_dependency_table(&rdev->pm.dpm.dyn_state.vddci_dependency_on_mclk,
							&max_mclk_vddci);
	btc_get_max_clock_from_voltage_dependency_table(&rdev->pm.dpm.dyn_state.vddc_dependency_on_mclk,
							&max_mclk_vddc);

	if (max_sclk_vddc) {
		if (ps->low.sclk > max_sclk_vddc)
			ps->low.sclk = max_sclk_vddc;
		if (ps->medium.sclk > max_sclk_vddc)
			ps->medium.sclk = max_sclk_vddc;
		if (ps->high.sclk > max_sclk_vddc)
			ps->high.sclk = max_sclk_vddc;
	}
	if (max_mclk_vddci) {
		if (ps->low.mclk > max_mclk_vddci)
			ps->low.mclk = max_mclk_vddci;
		if (ps->medium.mclk > max_mclk_vddci)
			ps->medium.mclk = max_mclk_vddci;
		if (ps->high.mclk > max_mclk_vddci)
			ps->high.mclk = max_mclk_vddci;
	}
	if (max_mclk_vddc) {
		if (ps->low.mclk > max_mclk_vddc)
			ps->low.mclk = max_mclk_vddc;
		if (ps->medium.mclk > max_mclk_vddc)
			ps->medium.mclk = max_mclk_vddc;
		if (ps->high.mclk > max_mclk_vddc)
			ps->high.mclk = max_mclk_vddc;
	}

	/* XXX validate the min clocks required for display */

	if (disable_mclk_switching) {