Subversion Repositories Kolibri OS

Rev

Rev 5271 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5271 Rev 6104
Line 1336... Line 1336...
1336
	struct radeon_ps *new_ps = &pi->requested_rps;
1336
	struct radeon_ps *new_ps = &pi->requested_rps;
Line 1337... Line 1337...
1337
 
1337
 
1338
	sumo_update_current_ps(rdev, new_ps);
1338
	sumo_update_current_ps(rdev, new_ps);
Line -... Line 1339...
-
 
1339
}
1339
}
1340
 
1340
 
1341
#if 0
1341
void sumo_dpm_reset_asic(struct radeon_device *rdev)
1342
void sumo_dpm_reset_asic(struct radeon_device *rdev)
1342
{
1343
{
1343
	sumo_program_bootup_state(rdev);
1344
	sumo_program_bootup_state(rdev);
Line 1347... Line 1348...
1347
	sumo_wait_for_level_0(rdev);
1348
	sumo_wait_for_level_0(rdev);
1348
	sumo_set_forced_mode_disabled(rdev);
1349
	sumo_set_forced_mode_disabled(rdev);
1349
	sumo_set_forced_mode_enabled(rdev);
1350
	sumo_set_forced_mode_enabled(rdev);
1350
	sumo_set_forced_mode_disabled(rdev);
1351
	sumo_set_forced_mode_disabled(rdev);
1351
}
1352
}
-
 
1353
#endif
Line 1352... Line 1354...
1352
 
1354
 
1353
void sumo_dpm_setup_asic(struct radeon_device *rdev)
1355
void sumo_dpm_setup_asic(struct radeon_device *rdev)
1354
{
1356
{
Line 1535... Line 1537...
1535
	}
1537
	}
Line 1536... Line 1538...
1536
 
1538
 
1537
	return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_7bit;
1539
	return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_7bit;
Line -... Line 1540...
-
 
1540
}
1538
}
1541
 
1539
 
1542
#if 0
1540
u32 sumo_convert_vid7_to_vid2(struct radeon_device *rdev,
1543
u32 sumo_convert_vid7_to_vid2(struct radeon_device *rdev,
1541
			      struct sumo_vid_mapping_table *vid_mapping_table,
1544
			      struct sumo_vid_mapping_table *vid_mapping_table,
1542
			      u32 vid_7bit)
1545
			      u32 vid_7bit)
Line 1548... Line 1551...
1548
			return vid_mapping_table->entries[i].vid_2bit;
1551
			return vid_mapping_table->entries[i].vid_2bit;
1549
	}
1552
	}
Line 1550... Line 1553...
1550
 
1553
 
1551
	return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_2bit;
1554
	return vid_mapping_table->entries[vid_mapping_table->num_entries - 1].vid_2bit;
-
 
1555
}
Line 1552... Line 1556...
1552
}
1556
#endif
1553
 
1557
 
1554
static u16 sumo_convert_voltage_index_to_value(struct radeon_device *rdev,
1558
static u16 sumo_convert_voltage_index_to_value(struct radeon_device *rdev,
1555
					       u32 vid_2bit)
1559
					       u32 vid_2bit)
Line 1831... Line 1835...
1831
			   current_index, pl->sclk,
1835
			   current_index, pl->sclk,
1832
			   sumo_convert_voltage_index_to_value(rdev, pl->vddc_index));
1836
			   sumo_convert_voltage_index_to_value(rdev, pl->vddc_index));
1833
	}
1837
	}
1834
}
1838
}
Line -... Line 1839...
-
 
1839
 
-
 
1840
u32 sumo_dpm_get_current_sclk(struct radeon_device *rdev)
-
 
1841
{
-
 
1842
	struct sumo_power_info *pi = sumo_get_pi(rdev);
-
 
1843
	struct radeon_ps *rps = &pi->current_rps;
-
 
1844
	struct sumo_ps *ps = sumo_get_ps(rps);
-
 
1845
	struct sumo_pl *pl;
-
 
1846
	u32 current_index =
-
 
1847
		(RREG32(TARGET_AND_CURRENT_PROFILE_INDEX) & CURR_INDEX_MASK) >>
-
 
1848
		CURR_INDEX_SHIFT;
-
 
1849
 
-
 
1850
	if (current_index == BOOST_DPM_LEVEL) {
-
 
1851
		pl = &pi->boost_pl;
-
 
1852
		return pl->sclk;
-
 
1853
	} else if (current_index >= ps->num_levels) {
-
 
1854
		return 0;
-
 
1855
	} else {
-
 
1856
		pl = &ps->levels[current_index];
-
 
1857
		return pl->sclk;
-
 
1858
	}
-
 
1859
}
-
 
1860
 
-
 
1861
u32 sumo_dpm_get_current_mclk(struct radeon_device *rdev)
-
 
1862
{
-
 
1863
	struct sumo_power_info *pi = sumo_get_pi(rdev);
-
 
1864
 
-
 
1865
	return pi->sys_info.bootup_uma_clk;
-
 
1866
}
1835
 
1867
 
1836
void sumo_dpm_fini(struct radeon_device *rdev)
1868
void sumo_dpm_fini(struct radeon_device *rdev)
1837
{
1869
{
Line 1838... Line 1870...
1838
	int i;
1870
	int i;