01467a9b5e7ec7b9e30768bee16ea5861665015b |
|
14-Oct-2014 |
Michele Curti <michele.curti@gmail.com> |
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>
|
41959341ac7e33dd360c7a881d13566f9eca37b2 |
|
09-Jul-2014 |
Alexandre Demers <alexandre.f.demers@gmail.com> |
drm/radeon/dpm: Reenabling SS on Cayman It reverts commit c745fe611ca42295c9d91d8e305d27983e9132ef now that Cayman is stable since VDDCI fix. Spread spectrum was not the culprit. This depends on b0880e87c1fd038b84498944f52e52c3e86ebe59 (drm/radeon/dpm: fix vddci setup typo on cayman). Signed-off-by: Alexandre Demers <alexandre.f.demers@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
|
78b035101999d8d071781778c019c387dc8bebb2 |
|
17-Feb-2014 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: reduce r7xx vblank mclk threshold to 200 Most laptops seems to have a vblank period of less than 300 and mclk switching works fine. Drop the quirk and set the default threshold to 200. bug: https://bugzilla.kernel.org/show_bug.cgi?id=70701 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
82f79cc54b6a67c0b17aff4fb5ed43155ff3f0ea |
|
21-Aug-2013 |
Alex Deucher <alexander.deucher@amd.com> |
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>
|
299302294e109aec5e7f54ea61a9816c555c2106 |
|
30-Jan-2014 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: use stored max_vddc rather than looking it up When we parse the power tables use the stored mac_vddc value rather than lookig it up manually each time. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
8097d94116d0c17e774ba4c8256e774018dc2a46 |
|
07-Jan-2014 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: disable mclk switching on desktop RV770 Mclk switching doesn't seem to work reliably on these cards. Most RV770 boards specify the same mclk for all performance levels anyway so in most cases, this has no affect. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=73067 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
|
f5f1f897c892cbff6135cd743df9989ca7bc29e4 |
|
21-Jan-2014 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon: add query to fetch the max engine clock (v2) This is needed for reporting the max GPU engine clock in OpenCL. This just reports the max possible engine clock, it does not take into account current conditions that may limit that clock. v2: fix query number for merge with 3.13 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
e14cd2bbcb98541e199b7223f38d61527dfe45c9 |
|
19-Dec-2013 |
Alex Deucher <alexander.deucher@amd.com> |
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>
|
a3f112451567546feece4c3513a42478bfaae3f2 |
|
19-Dec-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: add late_enable for rv7xx-NI Make sure interrupts are enabled before we enable thermal interrupts. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
c745fe611ca42295c9d91d8e305d27983e9132ef |
|
09-Dec-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: disable ss on Cayman Spread spectrum seems to cause hangs when dynamic clock switching is enabled. Disable it for now. This does not affect performance or the amount of power saved. Tracked down by Martin Andersson. bug: https://bugs.freedesktop.org/show_bug.cgi?id=69723 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
|
1cd8b21aa22c4fe8835abe614da5fa989c66dca9 |
|
13-Sep-2013 |
Alex Deucher <alexander.deucher@amd.com> |
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>
|
84f3d9f7b4781dea6e11dcaf7f81367c1b39fef0 |
|
10-Sep-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: fix fallback for empty UVD clocks Some older 6xx-7xx boards didn't always fill in the UVD clocks properly in the UVD power states. This leads to the driver trying to set a 0 clock which results in slow or broken UVD playback. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=69120 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
|
bdcc031bc7c2d0f1986237c8cea6871cfebf0853 |
|
21-Aug-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeonn: gcc fixes for rv7xx/eg/btc dpm Newer versions of gcc seem to wander off into the weeds when dealing with variable sizes arrays in structs. Rather than indexing the arrays, use pointer arithmetic. See bugs: https://bugs.freedesktop.org/show_bug.cgi?id=66932 https://bugs.freedesktop.org/show_bug.cgi?id=66972 https://bugs.freedesktop.org/show_bug.cgi?id=66945 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
f75195cac32bfd2ef07764bd370d3b788bd8b003 |
|
12-Aug-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: add reclocking quirk for ASUS K70AF The LCD has a relatively short vblank time (216us), but the card is able to reclock memory fine in that time. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Reported-by: normalrawr@gmail.com
|
b841ce7b41ffbecf84285b381b3ac23f05256d31 |
|
01-Aug-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: fix spread spectrum setup (v2) Need to check for engine and memory clock ss separately and only enable dynamic ss if either of them are found. This should fix systems which have a ss table, but do not have entries for engine or memory. On those systems we may enable dynamic spread spectrum without enabling it on the engine or memory clocks which can lead to a hang in some cases. fixes some systems reported here: https://bugs.freedesktop.org/show_bug.cgi?id=66963 v2: fix typo Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
fda837241f3680e5dc554c26e178c2deec7a039c |
|
31-Jul-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: adjust thermal protection requirements On rv770 and newer, clock gating is not required for thermal protection. The only requirement is that the design utilizes a thermal sensor. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
1294d4a36d1e0dacfc37c1f269d78ff58f0cd8bc |
|
16-Jul-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon: add a module parameter to disable aspm Can cause hangs when enabled in certain motherboards. Set radeon.aspm=0 to disable aspm. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
b06195d9943d561273939e866b4bfc87beba18bc |
|
08-Jul-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: implement vblank_too_short callback for 7xx Check if we can switch the mclk during the vblank time otherwise we may get artifacts on the screen when the mclk changes. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
222dc9a072e27b5069a7c03738e360eafdc2fdf5 |
|
08-Jul-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: fix display_gap programming on rv7xx Check the driver state rather than the register as the crtc registers may not be enabled yet. Should fix: https://bugzilla.kernel.org/show_bug.cgi?id=60510 https://bugs.freedesktop.org/show_bug.cgi?id=66651 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
8b5e6b7f0ec81f237d87cf9632309db9481c6fb5 |
|
03-Jul-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: implement force performance levels for 7xx/eg/btc Allows you to limit the selected power levels via sysfs. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
bf0936e196ec21b604106578043d4c14831f99e7 |
|
02-Jul-2013 |
Mike Lothian <mike@fireburn.co.uk> |
drm/radeon/dpm: fix compilation with certain versions of gcc Add #include <linux/seq_file.h> to *_dpm.c files Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
bd210d11cd37bee3da729e56288b5b4a038f88bd |
|
28-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: add debugfs support for 7xx/evergreen/btc This allows you to look at the current DPM state via debugfs. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
e38bb5aeef0d864313b4070ae6e35edff53e2790 |
|
03-Apr-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: fix typo in setting uvd clock Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
173dbb0ef6568f1da666ae846ecd5ce622076dbc |
|
28-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
add dpm_set_power_state failure output (7xx-ni) Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
72dd2c54ee630701608c08fd85e0eaf75336e31c |
|
28-Mar-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: add dpm_set_power_state failure output (7xx-ni) Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
fa4b5471bd6231d293a2de9ad016e39eb2c9c70e |
|
28-Mar-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: add dpm_enable failure output (7xx-ni) Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
b97721f311c68440144a95e345955284c25b69a2 |
|
27-Mar-2013 |
Alex Deucher <alexander.deucher@amd.com> |
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>
|
2abba66e7af70825734eaf9fdea37c97f9e7b6ff |
|
25-Mar-2013 |
Alex Deucher <alexander.deucher@amd.com> |
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>
|
58653abdd22427f2b4f2ec9930cadcbeb8832a73 |
|
13-Feb-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon: update radeon_atom_is_voltage_gpio() for SI SI uses a new atom table. Required for DPM on SI. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
5d77d776416a8881e49d42a30e0eaa919fc98ba5 |
|
28-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm/rv7xx: restructure code Needed to properly handle dynamic state adjustment. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
d22b7e406a4032f9208207d80c1d515267b73358 |
|
30-Nov-2012 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/dpm: fixup dynamic state adjust for btc (v2) Use a dedicated copy of the current power state since we may have to adjust it on the fly. v2: fix up redundant state sets Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
f85392bcf94c5ae8bf55852827dcfa46f86502dc |
|
26-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon: add dpm UVD handling for evergreen/btc asics Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
7c464f68b361aa05f964e22f7a8be4e7a7698a70 |
|
28-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon: add dpm UVD handling for r7xx asics Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
dc50ba7f9a6d9a920409892c7f30bce266067345 |
|
26-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/kms: add dpm support for evergreen (v4) This adds dpm support for evergreen asics. This includes: - clockgating - dynamic engine clock scaling - dynamic memory clock scaling - dynamic voltage scaling - dynamic pcie gen1/gen2 switching (requires additional acpi support) Set radeon.dpm=1 to enable. v2: reduce stack usage, rename ulv struct v3: fix thermal interrupt check notices by Jerome v4: fix state enable Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
66229b200598a3b66b839d1759ff3f5b17ac5639 |
|
26-Jun-2013 |
Alex Deucher <alexander.deucher@amd.com> |
drm/radeon/kms: add dpm support for rv7xx (v4) This adds dpm support for rv7xx asics. This includes: - clockgating - dynamic engine clock scaling - dynamic memory clock scaling - dynamic voltage scaling - dynamic pcie gen1/gen2 switching Set radeon.dpm=1 to enable. v2: reduce stack usage v3: fix 64 bit div v4: fix state enable Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|