Rev 5060 | Rev 5367 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5060 | Rev 5354 | ||
---|---|---|---|
Line 274... | Line 274... | ||
274 | } |
274 | } |
Line 275... | Line 275... | ||
275 | 275 | ||
276 | int i915_gem_init_stolen(struct drm_device *dev) |
276 | int i915_gem_init_stolen(struct drm_device *dev) |
277 | { |
277 | { |
- | 278 | struct drm_i915_private *dev_priv = dev->dev_private; |
|
278 | struct drm_i915_private *dev_priv = dev->dev_private; |
279 | u32 tmp; |
Line 279... | Line 280... | ||
279 | int bios_reserved = 0; |
280 | int bios_reserved = 0; |
280 | 281 | ||
281 | #ifdef CONFIG_INTEL_IOMMU |
282 | #ifdef CONFIG_INTEL_IOMMU |
Line 293... | Line 294... | ||
293 | return 0; |
294 | return 0; |
Line 294... | Line 295... | ||
294 | 295 | ||
295 | DRM_DEBUG_KMS("found %zd bytes of stolen memory at %08lx\n", |
296 | DRM_DEBUG_KMS("found %zd bytes of stolen memory at %08lx\n", |
Line 296... | Line 297... | ||
296 | dev_priv->gtt.stolen_size, dev_priv->mm.stolen_base); |
297 | dev_priv->gtt.stolen_size, dev_priv->mm.stolen_base); |
- | 298 | ||
- | 299 | if (INTEL_INFO(dev)->gen >= 8) { |
|
- | 300 | tmp = I915_READ(GEN7_BIOS_RESERVED); |
|
297 | 301 | tmp >>= GEN8_BIOS_RESERVED_SHIFT; |
|
- | 302 | tmp &= GEN8_BIOS_RESERVED_MASK; |
|
- | 303 | bios_reserved = (1024*1024) << tmp; |
|
- | 304 | } else if (IS_GEN7(dev)) { |
|
- | 305 | tmp = I915_READ(GEN7_BIOS_RESERVED); |
|
- | 306 | bios_reserved = tmp & GEN7_BIOS_RESERVED_256K ? |
|
Line 298... | Line 307... | ||
298 | if (IS_VALLEYVIEW(dev)) |
307 | 256*1024 : 1024*1024; |
299 | bios_reserved = 1024*1024; /* top 1M on VLV/BYT */ |
308 | } |
Line 300... | Line 309... | ||
300 | 309 | ||
Line 509... | Line 518... | ||
509 | DRM_DEBUG_KMS("failed to allocate stolen GTT space\n"); |
518 | DRM_DEBUG_KMS("failed to allocate stolen GTT space\n"); |
510 | goto err_vma; |
519 | goto err_vma; |
511 | } |
520 | } |
512 | } |
521 | } |
Line 513... | Line 522... | ||
513 | 522 | ||
Line 514... | Line 523... | ||
514 | obj->has_global_gtt_mapping = 1; |
523 | vma->bound |= GLOBAL_BIND; |
515 | 524 | ||
516 | list_add_tail(&obj->global_list, &dev_priv->mm.bound_list); |
525 | list_add_tail(&obj->global_list, &dev_priv->mm.bound_list); |