Alex Deucher
e38bb5aeef
drm/radeon/dpm: fix typo in setting uvd clock
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:09 -04:00
Alex Deucher
cc833b6088
drm/radeon/dpm: add dpm_set_power_state failure output (si)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:08 -04:00
Alex Deucher
173dbb0ef6
add dpm_set_power_state failure output (7xx-ni)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:08 -04:00
Alex Deucher
72dd2c54ee
drm/radeon/dpm: add dpm_set_power_state failure output (7xx-ni)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:07 -04:00
Alex Deucher
2c48febb47
drm/radeon/dpm: add dpm_enable failure output (si)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:06 -04:00
Alex Deucher
fa4b5471bd
drm/radeon/dpm: add dpm_enable failure output (7xx-ni)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:05 -04:00
Alex Deucher
a9e6141092
drm/radeon/kms: add dpm support for SI (v7)
...
This adds dpm support for SI asics. This includes:
- dynamic engine clock scaling
- dynamic memory clock scaling
- dynamic voltage scaling
- dynamic pcie gen1/gen2/gen3 switching
- power containment
- shader power scaling
Set radeon.dpm=1 to enable.
v2: enable hainan support, rebase
v3: guard acpi stuff
v4: fix 64 bit math
v5: fix 64 bit div harder
v6: fix thermal interrupt check noticed by Jerome
v7: attempt fix state enable
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:40:05 -04:00
Alex Deucher
a0ceada6b4
drm/radeon: switch SI to use radeon_ucode.h
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:53 -04:00
Alex Deucher
ac1633876f
drm/radeon: add SI to r600_is_internal_thermal_sensor()
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:52 -04:00
Alex Deucher
a172230f19
drm/radeon/dpm/rs780: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:52 -04:00
Alex Deucher
ac0cdcb514
drm/radeon/dpm/r6xx: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:51 -04:00
Alex Deucher
b97721f311
drm/radeon/dpm/r7xx: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:50 -04:00
Alex Deucher
c3efac0d5b
drm/radeon/dpm/trinity: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:49 -04:00
Alex Deucher
2c47b063a0
drm/radeon/dpm/sumo: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:48 -04:00
Alex Deucher
1f67df4df7
drm/radeon/dpm/evergreen: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:47 -04:00
Alex Deucher
aafb3afa59
drm/radeon/dpm/btc: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:46 -04:00
Alex Deucher
79fb809a5d
drm/radeon/dpm/ni: properly catch errors in dpm setup
...
We weren't properly catching errors in dpm_enable()
and dpm_set_power_state().
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:44 -04:00
Alex Deucher
779187f2c3
drm/radeon/atom: fix voltage table parsing
...
The arrays items are variable sized.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:42 -04:00
Alex Deucher
da289525b6
drm/radeon: fix typo in atom voltage table handling (si+)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:42 -04:00
Alex Deucher
7a80c2c9a9
drm/radeon: fix typo in atom voltage table handling (6xx-ni)
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:41 -04:00
Alex Deucher
4bd9f516f6
drm/radeon/dpm: add pcie gen helper function
...
Add a helper function to determine the preferred
pcie gen based on the card, system, and circumstance.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:40 -04:00
Alex Deucher
2abba66e7a
drm/radeon: update radeon_atombios_get_default_voltages for mvdd
...
Add a way to look up the bootup mvdd. Required for DPM on SI.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:40 -04:00
Alex Deucher
4489cd62e5
drm/radeon/dpm: validate voltages against dispclk requirements
...
Validate the voltages against the voltage requirements of the
dispclk. We currently don't adjust the disp clock so it never
changes, but we need to filter out voltage levels that are too
low none the less.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:39 -04:00
Alex Deucher
f907eec036
drm/radeon: fix some memory leaks in extended table parsing
...
Forgot to free some structs when allocation fails for some
tables.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:38 -04:00
Alex Deucher
b253e4b359
drm/radeon/dpm/cayman: use new fixed point functions (v2)
...
Use the new fixed point functions for leakage
calculations on cayman.
v2: fix up 64 bit math
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-06-27 19:16:38 -04:00