aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/radeon/r600_dpm.c23
-rw-r--r--drivers/gpu/drm/radeon/r600_dpm.h5
2 files changed, 28 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/r600_dpm.c b/drivers/gpu/drm/radeon/r600_dpm.c
index 2e5ec65a78f7..28177da694f2 100644
--- a/drivers/gpu/drm/radeon/r600_dpm.c
+++ b/drivers/gpu/drm/radeon/r600_dpm.c
@@ -997,3 +997,26 @@ void r600_free_extended_power_table(struct radeon_device *rdev)
997 if (rdev->pm.dpm.dyn_state.ppm_table) 997 if (rdev->pm.dpm.dyn_state.ppm_table)
998 kfree(rdev->pm.dpm.dyn_state.ppm_table); 998 kfree(rdev->pm.dpm.dyn_state.ppm_table);
999} 999}
1000
1001enum radeon_pcie_gen r600_get_pcie_gen_support(struct radeon_device *rdev,
1002 u32 sys_mask,
1003 enum radeon_pcie_gen asic_gen,
1004 enum radeon_pcie_gen default_gen)
1005{
1006 switch (asic_gen) {
1007 case RADEON_PCIE_GEN1:
1008 return RADEON_PCIE_GEN1;
1009 case RADEON_PCIE_GEN2:
1010 return RADEON_PCIE_GEN2;
1011 case RADEON_PCIE_GEN3:
1012 return RADEON_PCIE_GEN3;
1013 default:
1014 if ((sys_mask & DRM_PCIE_SPEED_80) && (default_gen == RADEON_PCIE_GEN3))
1015 return RADEON_PCIE_GEN3;
1016 else if ((sys_mask & DRM_PCIE_SPEED_50) && (default_gen == RADEON_PCIE_GEN2))
1017 return RADEON_PCIE_GEN2;
1018 else
1019 return RADEON_PCIE_GEN1;
1020 }
1021 return RADEON_PCIE_GEN1;
1022}
diff --git a/drivers/gpu/drm/radeon/r600_dpm.h b/drivers/gpu/drm/radeon/r600_dpm.h
index c6b9e30f20c2..a95ab214289b 100644
--- a/drivers/gpu/drm/radeon/r600_dpm.h
+++ b/drivers/gpu/drm/radeon/r600_dpm.h
@@ -218,4 +218,9 @@ bool r600_is_internal_thermal_sensor(enum radeon_int_thermal_type sensor);
218int r600_parse_extended_power_table(struct radeon_device *rdev); 218int r600_parse_extended_power_table(struct radeon_device *rdev);
219void r600_free_extended_power_table(struct radeon_device *rdev); 219void r600_free_extended_power_table(struct radeon_device *rdev);
220 220
221enum radeon_pcie_gen r600_get_pcie_gen_support(struct radeon_device *rdev,
222 u32 sys_mask,
223 enum radeon_pcie_gen asic_gen,
224 enum radeon_pcie_gen default_gen);
225
221#endif 226#endif