#include <linux/pci.h>
#include <linux/seq_file.h>
#include "atom.h"
#include "r600_dpm.h"
#include "radeon.h"
#include "radeon_asic.h"
#include "rs780_dpm.h"
#include "rs780d.h"
static struct igp_ps *rs780_get_ps(struct radeon_ps *rps)
{ … }
static struct igp_power_info *rs780_get_pi(struct radeon_device *rdev)
{ … }
static void rs780_get_pm_mode_parameters(struct radeon_device *rdev)
{ … }
static void rs780_voltage_scaling_enable(struct radeon_device *rdev, bool enable);
static int rs780_initialize_dpm_power_state(struct radeon_device *rdev,
struct radeon_ps *boot_ps)
{ … }
static int rs780_initialize_dpm_parameters(struct radeon_device *rdev,
struct radeon_ps *boot_ps)
{ … }
static void rs780_start_dpm(struct radeon_device *rdev)
{ … }
static void rs780_preset_ranges_slow_clk_fbdiv_en(struct radeon_device *rdev)
{ … }
static void rs780_preset_starting_fbdiv(struct radeon_device *rdev)
{ … }
static void rs780_voltage_scaling_init(struct radeon_device *rdev)
{ … }
static void rs780_clk_scaling_enable(struct radeon_device *rdev, bool enable)
{ … }
static void rs780_voltage_scaling_enable(struct radeon_device *rdev, bool enable)
{ … }
static void rs780_set_engine_clock_wfc(struct radeon_device *rdev)
{ … }
static void rs780_set_engine_clock_sc(struct radeon_device *rdev)
{ … }
static void rs780_set_engine_clock_tdc(struct radeon_device *rdev)
{ … }
static void rs780_set_engine_clock_ssc(struct radeon_device *rdev)
{ … }
static void rs780_program_at(struct radeon_device *rdev)
{ … }
static void rs780_disable_vbios_powersaving(struct radeon_device *rdev)
{ … }
static void rs780_force_voltage(struct radeon_device *rdev, u16 voltage)
{ … }
static void rs780_force_fbdiv(struct radeon_device *rdev, u32 fb_div)
{ … }
static int rs780_set_engine_clock_scaling(struct radeon_device *rdev,
struct radeon_ps *new_ps,
struct radeon_ps *old_ps)
{ … }
static void rs780_set_engine_clock_spc(struct radeon_device *rdev,
struct radeon_ps *new_ps,
struct radeon_ps *old_ps)
{ … }
static void rs780_activate_engine_clk_scaling(struct radeon_device *rdev,
struct radeon_ps *new_ps,
struct radeon_ps *old_ps)
{ … }
static u32 rs780_get_voltage_for_vddc_level(struct radeon_device *rdev,
enum rs780_vddc_level vddc)
{ … }
static void rs780_enable_voltage_scaling(struct radeon_device *rdev,
struct radeon_ps *new_ps)
{ … }
static void rs780_set_uvd_clock_before_set_eng_clock(struct radeon_device *rdev,
struct radeon_ps *new_ps,
struct radeon_ps *old_ps)
{ … }
static void rs780_set_uvd_clock_after_set_eng_clock(struct radeon_device *rdev,
struct radeon_ps *new_ps,
struct radeon_ps *old_ps)
{ … }
int rs780_dpm_enable(struct radeon_device *rdev)
{ … }
void rs780_dpm_disable(struct radeon_device *rdev)
{ … }
int rs780_dpm_set_power_state(struct radeon_device *rdev)
{ … }
void rs780_dpm_setup_asic(struct radeon_device *rdev)
{ … }
void rs780_dpm_display_configuration_changed(struct radeon_device *rdev)
{ … }
igp_info;
power_info;
pplib_clock_info;
pplib_power_state;
static void rs780_parse_pplib_non_clock_info(struct radeon_device *rdev,
struct radeon_ps *rps,
struct _ATOM_PPLIB_NONCLOCK_INFO *non_clock_info,
u8 table_rev)
{ … }
static void rs780_parse_pplib_clock_info(struct radeon_device *rdev,
struct radeon_ps *rps,
union pplib_clock_info *clock_info)
{ … }
static int rs780_parse_power_table(struct radeon_device *rdev)
{ … }
int rs780_dpm_init(struct radeon_device *rdev)
{ … }
void rs780_dpm_print_power_state(struct radeon_device *rdev,
struct radeon_ps *rps)
{ … }
void rs780_dpm_fini(struct radeon_device *rdev)
{ … }
u32 rs780_dpm_get_sclk(struct radeon_device *rdev, bool low)
{ … }
u32 rs780_dpm_get_mclk(struct radeon_device *rdev, bool low)
{ … }
void rs780_dpm_debugfs_print_current_performance_level(struct radeon_device *rdev,
struct seq_file *m)
{ … }
u32 rs780_dpm_get_current_sclk(struct radeon_device *rdev)
{ … }
u32 rs780_dpm_get_current_mclk(struct radeon_device *rdev)
{ … }
int rs780_dpm_force_performance_level(struct radeon_device *rdev,
enum radeon_dpm_forced_level level)
{ … }