diff options
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_gtt.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c index 17b7df0b561f..619dad1b2386 100644 --- a/drivers/gpu/drm/i915/i915_gem_gtt.c +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c | |||
@@ -952,6 +952,13 @@ static int gen8_ppgtt_init(struct i915_hw_ppgtt *ppgtt) | |||
952 | 952 | ||
953 | ppgtt->base.start = 0; | 953 | ppgtt->base.start = 0; |
954 | ppgtt->base.total = 1ULL << 32; | 954 | ppgtt->base.total = 1ULL << 32; |
955 | if (IS_ENABLED(CONFIG_X86_32)) | ||
956 | /* While we have a proliferation of size_t variables | ||
957 | * we cannot represent the full ppgtt size on 32bit, | ||
958 | * so limit it to the same size as the GGTT (currently | ||
959 | * 2GiB). | ||
960 | */ | ||
961 | ppgtt->base.total = to_i915(ppgtt->base.dev)->gtt.base.total; | ||
955 | ppgtt->base.cleanup = gen8_ppgtt_cleanup; | 962 | ppgtt->base.cleanup = gen8_ppgtt_cleanup; |
956 | ppgtt->base.allocate_va_range = gen8_alloc_va_range; | 963 | ppgtt->base.allocate_va_range = gen8_alloc_va_range; |
957 | ppgtt->base.insert_entries = gen8_ppgtt_insert_entries; | 964 | ppgtt->base.insert_entries = gen8_ppgtt_insert_entries; |