]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Dec 2013 19:21:55 +0000 (11:21 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 18 Dec 2013 19:21:55 +0000 (11:21 -0800)
added patches:
drm-radeon-fixup-bad-vram-size-on-si.patch
x86-efi-don-t-use-u-efi-time-services-on-32-bit.patch

queue-3.4/drm-radeon-fixup-bad-vram-size-on-si.patch [new file with mode: 0644]
queue-3.4/series
queue-3.4/x86-efi-don-t-use-u-efi-time-services-on-32-bit.patch [new file with mode: 0644]

diff --git a/queue-3.4/drm-radeon-fixup-bad-vram-size-on-si.patch b/queue-3.4/drm-radeon-fixup-bad-vram-size-on-si.patch
new file mode 100644 (file)
index 0000000..6a47c81
--- /dev/null
@@ -0,0 +1,41 @@
+From 0ca223b029a261e82fb2f50c52eb85d510f4260e Mon Sep 17 00:00:00 2001
+From: Alex Deucher <alexander.deucher@amd.com>
+Date: Tue, 3 Dec 2013 09:24:30 -0500
+Subject: drm/radeon: fixup bad vram size on SI
+
+From: Alex Deucher <alexander.deucher@amd.com>
+
+commit 0ca223b029a261e82fb2f50c52eb85d510f4260e upstream.
+
+Some boards seem to have garbage in the upper
+16 bits of the vram size register.  Check for
+this and clamp the size properly.  Fixes
+boards reporting bogus amounts of vram.
+
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ drivers/gpu/drm/radeon/si.c |   11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+--- a/drivers/gpu/drm/radeon/si.c
++++ b/drivers/gpu/drm/radeon/si.c
+@@ -2479,8 +2479,15 @@ static int si_mc_init(struct radeon_devi
+       rdev->mc.aper_base = pci_resource_start(rdev->pdev, 0);
+       rdev->mc.aper_size = pci_resource_len(rdev->pdev, 0);
+       /* size in MB on si */
+-      rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE) * 1024ULL * 1024ULL;
+-      rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE) * 1024ULL * 1024ULL;
++      tmp = RREG32(CONFIG_MEMSIZE);
++      /* some boards may have garbage in the upper 16 bits */
++      if (tmp & 0xffff0000) {
++              DRM_INFO("Probable bad vram size: 0x%08x\n", tmp);
++              if (tmp & 0xffff)
++                      tmp &= 0xffff;
++      }
++      rdev->mc.mc_vram_size = tmp * 1024ULL * 1024ULL;
++      rdev->mc.real_vram_size = rdev->mc.mc_vram_size;
+       rdev->mc.visible_vram_size = rdev->mc.aper_size;
+       si_vram_gtt_location(rdev, &rdev->mc);
+       radeon_update_bandwidth_info(rdev);
index 2f1fb244e18dc0eb209815b2476f3b2f14e878ac..1cb943f856e467b9f4c9c25c9a3bde4eb953a73c 100644 (file)
@@ -18,3 +18,5 @@ drivers-rtc-rtc-at91rm9200.c-correct-alarm-over-day-month-wrap.patch
 selinux-handle-tcp-syn-ack-packets-correctly-in-selinux_ip_output.patch
 selinux-handle-tcp-syn-ack-packets-correctly-in-selinux_ip_postroute.patch
 mac80211-don-t-attempt-to-reorder-multicast-frames.patch
+drm-radeon-fixup-bad-vram-size-on-si.patch
+x86-efi-don-t-use-u-efi-time-services-on-32-bit.patch
diff --git a/queue-3.4/x86-efi-don-t-use-u-efi-time-services-on-32-bit.patch b/queue-3.4/x86-efi-don-t-use-u-efi-time-services-on-32-bit.patch
new file mode 100644 (file)
index 0000000..8bec6e1
--- /dev/null
@@ -0,0 +1,41 @@
+From 04bf9ba720fcc4fa313fa122b799ae0989b6cd50 Mon Sep 17 00:00:00 2001
+From: Matthew Garrett <matthew.garrett@nebula.com>
+Date: Fri, 29 Nov 2013 14:44:43 -0500
+Subject: x86, efi: Don't use (U)EFI time services on 32 bit
+
+From: Matthew Garrett <matthew.garrett@nebula.com>
+
+commit 04bf9ba720fcc4fa313fa122b799ae0989b6cd50 upstream.
+
+UEFI time services are often broken once we're in virtual mode. We were
+already refusing to use them on 64-bit systems, but it turns out that
+they're also broken on some 32-bit firmware, including the Dell Venue.
+Disable them for now, we can revisit once we have the 1:1 mappings code
+incorporated.
+
+Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
+Link: http://lkml.kernel.org/r/1385754283-2464-1-git-send-email-matthew.garrett@nebula.com
+Cc: Matt Fleming <matt.fleming@intel.com>
+Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ arch/x86/platform/efi/efi.c |    7 -------
+ 1 file changed, 7 deletions(-)
+
+--- a/arch/x86/platform/efi/efi.c
++++ b/arch/x86/platform/efi/efi.c
+@@ -744,13 +744,6 @@ void __init efi_init(void)
+       set_bit(EFI_MEMMAP, &x86_efi_facility);
+-#ifdef CONFIG_X86_32
+-      if (efi_is_native()) {
+-              x86_platform.get_wallclock = efi_get_time;
+-              x86_platform.set_wallclock = efi_set_rtc_mmss;
+-      }
+-#endif
+-
+ #if EFI_DEBUG
+       print_efi_memmap();
+ #endif