diff --git a/kernel.spec b/kernel.spec index 3beeafd73..92bfc3d93 100644 --- a/kernel.spec +++ b/kernel.spec @@ -657,6 +657,8 @@ Patch1819: drm-intel-big-hammer.patch Patch1825: drm-intel-make-lvds-work.patch Patch1900: linux-2.6-intel-iommu-igfx.patch +Patch1920: radeon-mc-vram-map-needs-to-be-gt-pci-aperture.patch + # linux1394 git patches Patch2200: linux-2.6-firewire-git-update.patch Patch2201: linux-2.6-firewire-git-pending.patch @@ -1288,6 +1290,8 @@ ApplyOptionalPatch drm-nouveau-updates.patch #ApplyPatch drm-intel-make-lvds-work.patch ApplyPatch linux-2.6-intel-iommu-igfx.patch +ApplyPatch radeon-mc-vram-map-needs-to-be-gt-pci-aperture.patch + # linux1394 git patches #ApplyPatch linux-2.6-firewire-git-update.patch #ApplyOptionalPatch linux-2.6-firewire-git-pending.patch @@ -1988,6 +1992,9 @@ fi # || || %changelog +* Wed Nov 24 2010 Kyle McMartin +- drm/radeon/kms: MC vram map needs to be >= pci aperture size (fdo#28402) + * Wed Nov 24 2010 Kyle McMartin - Fix graphics on HP 2530p (korg#23542) diff --git a/radeon-mc-vram-map-needs-to-be-gt-pci-aperture.patch b/radeon-mc-vram-map-needs-to-be-gt-pci-aperture.patch new file mode 100644 index 000000000..88fa35e2f --- /dev/null +++ b/radeon-mc-vram-map-needs-to-be-gt-pci-aperture.patch @@ -0,0 +1,32 @@ +commit b7d8cce5b558e0c0aa6898c9865356481598b46d +Author: Alex Deucher +Date: Mon Oct 25 19:44:00 2010 -0400 + + drm/radeon/kms: MC vram map needs to be >= pci aperture size + + The vram map in the radeon memory controller needs to be + >= the pci aperture size. Fixes: + https://bugs.freedesktop.org/show_bug.cgi?id=28402 + + The problematic cards in the above bug have 64 MB of vram, + but the pci aperture is 128 MB and the MC vram map was only + 64 MB. This can lead to hangs. + + Signed-off-by: Alex Deucher + Cc: stable@kernel.org + Signed-off-by: Dave Airlie + +diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c +index 6112ac9..6d1540c 100644 +--- a/drivers/gpu/drm/radeon/r100.c ++++ b/drivers/gpu/drm/radeon/r100.c +@@ -2270,6 +2270,9 @@ void r100_vram_init_sizes(struct radeon_device *rdev) + /* Fix for RN50, M6, M7 with 8/16/32(??) MBs of VRAM - + * Novell bug 204882 + along with lots of ubuntu ones + */ ++ if (rdev->mc.aper_size > config_aper_size) ++ config_aper_size = rdev->mc.aper_size; ++ + if (config_aper_size > rdev->mc.real_vram_size) + rdev->mc.mc_vram_size = config_aper_size; + else