diff options
author | Oded Gabbay <oded.gabbay@gmail.com> | 2016-01-30 00:59:33 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-02-02 10:09:05 -0500 |
commit | c5244987394648913ae1a03879c58058a2fc2cee (patch) | |
tree | 8adbbe18e8080da833fe536c42a925771ef8f4e2 | |
parent | 4b0e4e4af6c6dc8354dcb72182d52c1bc55f12fc (diff) |
drm/radeon: mask out WC from BO on unsupported arches
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_object.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_object.c b/drivers/gpu/drm/radeon/radeon_object.c index 84d45633d28c..fb6ad143873f 100644 --- a/drivers/gpu/drm/radeon/radeon_object.c +++ b/drivers/gpu/drm/radeon/radeon_object.c | |||
@@ -33,6 +33,7 @@ | |||
33 | #include <linux/slab.h> | 33 | #include <linux/slab.h> |
34 | #include <drm/drmP.h> | 34 | #include <drm/drmP.h> |
35 | #include <drm/radeon_drm.h> | 35 | #include <drm/radeon_drm.h> |
36 | #include <drm/drm_cache.h> | ||
36 | #include "radeon.h" | 37 | #include "radeon.h" |
37 | #include "radeon_trace.h" | 38 | #include "radeon_trace.h" |
38 | 39 | ||
@@ -245,6 +246,12 @@ int radeon_bo_create(struct radeon_device *rdev, | |||
245 | DRM_INFO_ONCE("Please enable CONFIG_MTRR and CONFIG_X86_PAT for " | 246 | DRM_INFO_ONCE("Please enable CONFIG_MTRR and CONFIG_X86_PAT for " |
246 | "better performance thanks to write-combining\n"); | 247 | "better performance thanks to write-combining\n"); |
247 | bo->flags &= ~(RADEON_GEM_GTT_WC | RADEON_GEM_GTT_UC); | 248 | bo->flags &= ~(RADEON_GEM_GTT_WC | RADEON_GEM_GTT_UC); |
249 | #else | ||
250 | /* For architectures that don't support WC memory, | ||
251 | * mask out the WC flag from the BO | ||
252 | */ | ||
253 | if (!drm_arch_can_wc_memory()) | ||
254 | bo->flags &= ~RADEON_GEM_GTT_WC; | ||
248 | #endif | 255 | #endif |
249 | 256 | ||
250 | radeon_ttm_placement_from_domain(bo, domain); | 257 | radeon_ttm_placement_from_domain(bo, domain); |