Alex Deucher
bda5e3e97f
drm/radeon/ci: silence a harmless PCC warning
...
This has been a source of confusion. Make it debug only.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2015-07-16 12:39:43 -04:00
Alex Deucher
dbbd3c81b0
drm/radeon/ci: implement get_current_sclk/mclk
...
Will be used for exposing current clocks via INFO ioctl.
Tested-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2015-03-19 12:26:34 -04:00
Alex Deucher
64e580447f
drm/radeon: comment out some currently unused ci dpm code
...
Keep it around for reference.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2015-01-22 10:38:53 -05:00
Oleg Chernovskiy
36689e5750
drm/radeon: bind fan control on CI cards to hwmon interface (v2)
...
This adds a possibility to control fan on CI parts
via exported hwmon variables. Note that automatic
ucode fan management pauses if you choose to enable
manual fan control. Use with caution!
v2: agd5f: fix formatting, squash in:
minor fix for pwm1_enable exposed value
Track smc control in addition to fan mode
This fixes pwm1_enable being constantly set
to 1 because of enabled smc control
also handle the case where smc fan control is disabled.
Signed-off-by: Oleg Chernovskiy <algonkvel@gmail.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2015-01-22 10:38:48 -05:00
Alex Deucher
eb8d4d0d99
drm/radeon: enable smc fan control on CI
...
This seems to work well on CI boards after fixing the
last few bugs noticed by Chernovsky Oleg.
On boards with a high default fan speed this should
reduce fan noise. Manual fan control is not enabled
yet.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-12-03 19:05:19 -05:00
Alex Deucher
6554d9a0e6
drm/radeon: fix copy paste typos in fan control for si/ci
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-12-03 18:26:51 -05:00
Alex Deucher
d967be9b80
drm/radeon/ci: disable needless sclk changes
...
The current code always reprogrammed the sclk levels,
but we don't currently handle disp sclk requirements
so just skip it.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:13 -05:00
Alex Deucher
7f6233ca87
drm/radeon/ci: force pcie level before sclk and mclk
...
Preferred ordering.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:13 -05:00
Alex Deucher
e745c3c9aa
drm/radeon/ci: use different smc command for pcie dpm
...
Use unforce levels rather than enable mask instruction.
This is the preferred method.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:12 -05:00
Alex Deucher
f281d0a37c
drm/radeon/ci: apply disp voltage changes before clk changes
...
Apply voltage changes for displays before changing clocks.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:12 -05:00
Alex Deucher
66648b81ce
drm/radeon: fix PCC debugging message for CI DPM
...
Add missing newline and print the bad gpio shift.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:11 -05:00
Alex Deucher
0e4ed1c190
drm/radeon/dpm: add thermal dpm support for CI
...
Not currently used.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:10 -05:00
Alex Deucher
e03cea367f
drm/radeon/dpm: add smc fan control for CI (v2)
...
Enable smc fan control for CI boards. Should
reduce the fan noise on systems with a higher
default fan profile.
v2: disable by default, add additional fan setup, rpm control
bug:
https://bugs.freedesktop.org/show_bug.cgi?id=73338
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-20 13:00:10 -05:00
Alex Deucher
b94b95e7e3
drm/radeon: set power control in ci dpm enable
...
Necessary for poper operation.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:46 -05:00
Alex Deucher
542b379b55
drm/radeon: powertune fixes for hawaii
...
- bapm is not available on hawaii
- update pt defaults
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:45 -05:00
Alex Deucher
90b2fee35c
drm/radeon: fix dpm mc init for certain hawaii boards
...
Needs special overrides for certain vram configurations.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:44 -05:00
Alex Deucher
4e21518c3d
drm/radeon: set bootup pcie level to max for ci dpm
...
Avoids problems when re-loading the driver. Does not
affect power saving when dpm is enabled.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:44 -05:00
Alex Deucher
b6b41cf3b6
drm/radeon: fix default dpm state setup
...
Only enable the first levels for mclk and sclk.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:43 -05:00
Alex Deucher
36654dd4b9
drm/radeon: workaround a hw bug in bonaire pcie dpm
...
Some boards get stuck in pcie x1 otherwise.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:42 -05:00
Alex Deucher
127e056e2a
drm/radeon: fix mclk vddc configuration for cards for hawaii
...
Need to use vddc0 for vdcc1 for certain hawaii configurations.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:42 -05:00
Alex Deucher
489ba72c1e
drm/radeon: fix sclk DS enablement
...
Only enable it for levels 0 and 1.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:41 -05:00
Alex Deucher
d3052b8ce8
drm/radeon: fix activity settings for sclk and mclk for CI
...
Only need to be enabled on the first level.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:40 -05:00
Alex Deucher
c0392f8f09
drm/radeon: improve mclk param calcuations for ci dpm
...
Properly take into account the post divider.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:40 -05:00
Alex Deucher
21b8a36904
drm/radeon: fix dram timing for certain hawaii boards
...
Certain memory configurations need a fix.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:39 -05:00
Alex Deucher
1c52279f57
drm/radeon: switch force state commands for CI
...
Use the preferred SMC commands for forcing state on CI.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:38 -05:00
Alex Deucher
34fc0b58d9
drm/radeon/ci: handle gpio controlled dpm features properly
...
Certain feature enablement depends on entries in the atom
gpio pin table.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:37 -05:00
Alex Deucher
129acb7c0b
drm/radeon: fix typo in CI dpm disable
...
Need to disable DS, not enable it when disabling dpm.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2014-11-12 11:56:35 -05:00
Alex Deucher
1955f107a7
drm/radeon: rework CI dpm thermal setup
...
In preparation for fan control.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-11-12 11:56:35 -05:00
Michele Curti
01467a9b5e
drm/radeon: reduce sparse false positive warnings
...
include radeon_asic.h header file in the various xxx_dpm.c files
to reduce sparse false positive warnings. Not so great patch
in itself, but reducing warning count from 391 to 258 may help
to see real problems..
Signed-off-by: Michele Curti <michele.curti@gmail.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-10-16 18:34:10 -04:00
Alex Deucher
3e15c35374
drm/radeon/ci: add uvd/vce info to dpm debugfs output
...
Track whether UVD or VCE are enabled in debugfs.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-10-03 09:19:17 -04:00
Alex Deucher
6aff1e282a
drm/radeon/dpm: drop clk/voltage dependency filters for CI
...
Not sure this was ever necessary for CI, was just done
to be on the safe side.
bug:
https://bugs.freedesktop.org/show_bug.cgi?id=69721
Reviewed-by: Alexandre Demers <alexandre.f.demers@gmail.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-10-01 09:00:06 -04:00
Oleg Chernovskiy
6bce8d9772
drm/radeon: Add missing lines to ci_set_thermal_temperature_range
...
Properly set the thermal min and max temp on CI.
Otherwise, we end up setting the thermal ranges
to 0 on resume and end up in the lowest power state.
Signed-off-by: Oleg Chernovskiy <algonkvel@gmail.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2014-08-15 00:58:18 -04:00
Alex Deucher
6b57f20cb5
drm/radeon/dpm: handle voltage info fetching on hawaii
...
Some hawaii cards use a different method to fetch the
voltage info from the vbios.
bug:
https://bugs.freedesktop.org/show_bug.cgi?id=74250
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2014-08-05 08:53:47 -04:00
Alex Deucher
ed96377132
drm/radeon: fix typo in ci_stop_dpm()
...
Need to use the RREG32_SMC() accessor since the register
is an smc indirect index.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2014-07-10 17:01:30 -04:00
Alex Deucher
7e1858f9af
drm/radeon: re-enable mclk dpm on R7 260X asics
...
If the new mc ucode is available.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2014-04-17 13:59:53 +02:00
Alex Deucher
6abc6d5c73
drm/radeon: update CI DPM powertune settings
...
As per internal recommendations.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-04-17 13:59:41 +02:00
Alex Deucher
57700ad1f2
drm/radeon: disable mclk dpm on R7 260X
...
Setting higher mclks seems to cause stability issues
on some R7 260X boards. Disable it for now for stability
until we find a proper fix.
bug:
https://bugs.freedesktop.org/show_bug.cgi?id=75992
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: stable@vger.kernel.org
2014-04-17 13:59:36 +02:00
Alex Deucher
a1d6f97c8c
drm/radeon/cik: enable/disable vce cg when encoding v2
...
Some of the vce clocks are automatic, others need to
be manually enabled. For ease, just disable cg when
vce is active.
v2: rebased
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-02-18 16:11:46 +01:00
Alex Deucher
ee35b0024a
drm/radeon: enable vce dpm on CI
...
VCE dpm dynamically adjusts the uvd clocks on
demand.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-02-18 16:11:38 +01:00
Alex Deucher
8cd366823e
drm/radeon: add vce dpm support for CI
...
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-02-18 16:11:36 +01:00
Alex Deucher
82f79cc54b
drm/radeon/dpm: move platform caps fetching to a separate function
...
It's needed by by both the asic specific functions and the
extended table parser.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2014-02-18 16:11:30 +01:00
Alex Deucher
9a04dad3a1
drm/radeon/dpm: make some functions static for CI
...
Noticed by Rashika Kheria and cherry-picked from
her larger patch set.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
Cc: Rashika Kheria <rashika.kheria@gmail.com >
2014-01-07 12:55:37 -05:00
Alex Deucher
6c7bccea39
drm/radeon/pm: move pm handling into the asic specific code
...
We need more control over the ordering of dpm init with
respect to the rest of the asic. Specifically, the SMC
has to be initialized before the rlc and cg/pg. The pm
code currently initializes late in the driver, but we need
it to happen much earlier so move pm handling into the asic
specific callbacks.
This makes dpm more reliable and makes clockgating work
properly on CIK parts and should help on SI parts as well.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-12-24 17:57:06 -05:00
Alex Deucher
e14cd2bbcb
drm/radeon/dpm: switch on new late_enable callback
...
Right now it's called right after enable, but after
reworking the dpm init order, it will get called later
to accomodate loading the smc early, but enabling
thermal interrupts and block powergating later after
the ring tests are complete.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-12-24 17:56:50 -05:00
Alex Deucher
902084278b
drm/radeon/dpm: add late_enable for CI
...
Make sure interrupts are enabled
before we enable thermal interrupts.
Also, don't powergate uvd until after
the ring tests.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-12-24 17:56:19 -05:00
Alex Deucher
f2185ecef1
drm/radeon/cik: drop cg_update from dpm code
...
I'm not entirely sure this is required and it won't work
with the dpm restructing anyway.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-12-24 17:54:25 -05:00
Alex Deucher
2d40038d3f
drm/radeon: add hawaii dpm support
...
This updates the CI dpm (dynamic power management)
support for hawaii.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-11-08 12:33:44 -05:00
Alex Deucher
a52b5eb647
drm/radeon/dpm/ci: filter clocks based on voltage/clk dep tables
...
Filter out mclk and sclk levels higher than listed in the clk
voltage dependency tables. Supporting these clocks will require
additional driver tweaking that isn't supported yet.
See bug:
https://bugs.freedesktop.org/show_bug.cgi?id=68235
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-09-23 10:29:53 -04:00
Alex Deucher
1cd8b21aa2
drm/radeon/dpm: rework auto performance level enable
...
Calling force_performance_level() from set_power_state()
doesn't work on some asics because the current power
state pointer has not been properly updated at that point.
Move the calls to force_performance_level() out of the
asic specific set_power_state() functions and into
the main power state sequence.
Fixes dpm resume on SI.
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
2013-09-15 20:27:52 -04:00
Stephen Rothwell
ab62e76861
drm/radeon: protect ACPI calls with CONFIG_ACPI
...
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au >
Acked-by: Alex Deucher <Alexander.Deucher@amd.com >
Signed-off-by: Dave Airlie <airlied@gmail.com >
2013-09-05 08:19:31 +10:00