blob: 51f470dc4113d7e8e864e6b4c279bee6a9f00846 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -872,6 +872,9 @@ static int i915_gmch_probe(struct drm_de
{
struct drm_i915_private *dev_priv = dev->dev_private;
int ret;
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,9,0))
+ const struct intel_gtt *gtt;
+#endif
ret = intel_gmch_probe(dev_priv->bridge_dev, dev_priv->dev->pdev, NULL);
if (!ret) {
@@ -879,7 +882,16 @@ static int i915_gmch_probe(struct drm_de
return -EIO;
}
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
intel_gtt_get(gtt_total, stolen, mappable_base, mappable_end);
+#else
+ gtt = intel_gtt_get();
+
+ *gtt_total = gtt->gtt_total_entries << PAGE_SHIFT;
+ *stolen = gtt->stolen_size;
+ *mappable_base = gtt->gma_bus_addr;
+ *mappable_end = gtt->gtt_mappable_entries << PAGE_SHIFT;
+#endif
dev_priv->gtt.do_idle_maps = needs_idle_maps(dev_priv->dev);
dev_priv->gtt.base.clear_range = i915_ggtt_clear_range;
|