Patch "drm/radeon/r6xx: add a stubbed out set_uvd_clocks callback" has been added to the 3.11-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    drm/radeon/r6xx: add a stubbed out set_uvd_clocks callback

to the 3.11-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     drm-radeon-r6xx-add-a-stubbed-out-set_uvd_clocks-callback.patch
and it can be found in the queue-3.11 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From 1b9ba70a49ba92e910d8e5df702edf8c1858cecf Mon Sep 17 00:00:00 2001
From: Alex Deucher <alexander.deucher@xxxxxxx>
Date: Thu, 5 Sep 2013 09:52:37 -0400
Subject: drm/radeon/r6xx: add a stubbed out set_uvd_clocks callback

From: Alex Deucher <alexander.deucher@xxxxxxx>

commit 1b9ba70a49ba92e910d8e5df702edf8c1858cecf upstream.

Certain r6xx boards use the same power state for both UVD
and other things.  Since we don't support UVD on r6xx boards
at the moment, there was no callback installed for setting
the UVD clocks, however, on systems that use the same power
state, this leads to a NULL pointer dereference.  Fill
in a stubbed out implementation for now to avoid the crash.

Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=66963

Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
 drivers/gpu/drm/radeon/r600.c        |    5 +++++
 drivers/gpu/drm/radeon/radeon_asic.c |    2 ++
 drivers/gpu/drm/radeon/radeon_asic.h |    1 +
 3 files changed, 8 insertions(+)

--- a/drivers/gpu/drm/radeon/r600.c
+++ b/drivers/gpu/drm/radeon/r600.c
@@ -119,6 +119,11 @@ u32 r600_get_xclk(struct radeon_device *
 	return rdev->clock.spll.reference_freq;
 }
 
+int r600_set_uvd_clocks(struct radeon_device *rdev, u32 vclk, u32 dclk)
+{
+	return 0;
+}
+
 /* get temperature in millidegrees */
 int rv6xx_get_temp(struct radeon_device *rdev)
 {
--- a/drivers/gpu/drm/radeon/radeon_asic.c
+++ b/drivers/gpu/drm/radeon/radeon_asic.c
@@ -1146,6 +1146,7 @@ static struct radeon_asic rv6xx_asic = {
 		.set_pcie_lanes = &r600_set_pcie_lanes,
 		.set_clock_gating = NULL,
 		.get_temperature = &rv6xx_get_temp,
+		.set_uvd_clocks = &r600_set_uvd_clocks,
 	},
 	.dpm = {
 		.init = &rv6xx_dpm_init,
@@ -1257,6 +1258,7 @@ static struct radeon_asic rs780_asic = {
 		.set_pcie_lanes = NULL,
 		.set_clock_gating = NULL,
 		.get_temperature = &rv6xx_get_temp,
+		.set_uvd_clocks = &r600_set_uvd_clocks,
 	},
 	.dpm = {
 		.init = &rs780_dpm_init,
--- a/drivers/gpu/drm/radeon/radeon_asic.h
+++ b/drivers/gpu/drm/radeon/radeon_asic.h
@@ -405,6 +405,7 @@ int r600_mc_wait_for_idle(struct radeon_
 u32 r600_get_xclk(struct radeon_device *rdev);
 uint64_t r600_get_gpu_clock_counter(struct radeon_device *rdev);
 int rv6xx_get_temp(struct radeon_device *rdev);
+int r600_set_uvd_clocks(struct radeon_device *rdev, u32 vclk, u32 dclk);
 int r600_dpm_pre_set_power_state(struct radeon_device *rdev);
 void r600_dpm_post_set_power_state(struct radeon_device *rdev);
 /* rv6xx dpm */


Patches currently in stable-queue which might be from alexander.deucher@xxxxxxx are

queue-3.11/radeon-kms-fix-uninitialised-hotplug-work-usage-in-r100_irq_process.patch
queue-3.11/drm-radeon-avoid-uvd-corruptions-on-agp-cards.patch
queue-3.11/drm-radeon-dpm-rs780-don-t-enable-sclk-scaling-if-not-required.patch
queue-3.11/drm-radeon-fix-init-ordering-for-r600.patch
queue-3.11/drm-radeon-add-berlin-pci-ids.patch
queue-3.11/drm-radeon-enable-uvd-interrupts-on-cik.patch
queue-3.11/drm-radeon-fix-lcd-record-parsing.patch
queue-3.11/drm-radeon-fix-panel-scaling-with-edp-and-lvds-bridges.patch
queue-3.11/drm-radeon-fix-resume-on-some-rs4xx-boards-v2.patch
queue-3.11/drm-radeon-cik-update-gpu_init-for-an-additional-berlin-gpu.patch
queue-3.11/drm-radeon-update-line-buffer-allocation-for-dce8.patch
queue-3.11/drm-radeon-r6xx-add-a-stubbed-out-set_uvd_clocks-callback.patch
queue-3.11/drm-radeon-si-add-support-for-cp-dma-to-cs-checker-for-compute-v2.patch
queue-3.11/drm-radeon-atom-workaround-vbios-bug-in-transmitter-table-on-rs880-v2.patch
queue-3.11/drm-radeon-fix-endian-bugs-in-hw-i2c-atom-routines.patch
queue-3.11/drm-radeon-dpm-add-reclocking-quirk-for-asus-k70af.patch
queue-3.11/drm-radeon-update-line-buffer-allocation-for-dce6.patch
queue-3.11/drm-radeon-update-line-buffer-allocation-for-dce4.1-5.patch
queue-3.11/drm-radeon-add-some-additional-berlin-pci-ids.patch
queue-3.11/drm-radeon-dpm-handle-bapm-on-trinity.patch
queue-3.11/drm-radeon-dpm-fix-fallback-for-empty-uvd-clocks.patch
queue-3.11/drm-radeon-dpm-make-sure-dc-performance-level-limits-are-valid-btc-si-v2.patch
queue-3.11/drm-radeon-fix-handling-of-variable-sized-arrays-for-router-objects.patch
queue-3.11/drm-radeon-fill-in-gpu_init-for-berlin-gpu-cores.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]