diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-04-10 11:29:17 -0400 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-04-12 15:14:10 -0400 |
commit | 211c568bc6a1ebd51e35724f6d733e76717ce368 (patch) | |
tree | e103a75917c325ab2c602da32ce395f938b947b7 /drivers/gpu/drm/i915/i915_gem_gtt.c | |
parent | e3aef17286850a77f11a6dac28d972f65cde2235 (diff) |
drm/i915: simplify ppgtt setup
We don't need the pt_addr for the !dmar case, so drop the else and
move the if (dmar) condition out of the loop.
v2: Fixup whitespace damage noticed by Chris Wilson.
v3: Collapse the two identical if blocks. Chris Wilson makes me look
like a moron right now ...
Noticed-by: Konstantin Belousov <kostikbel@gmail.com>
Reviewed-by: Chris Wilson <chris@chris-wislon.co.uk>
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem_gtt.c')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_gtt.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c index 4fb875de32e..25c8bf9d1d4 100644 --- a/drivers/gpu/drm/i915/i915_gem_gtt.c +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c | |||
@@ -96,11 +96,10 @@ int i915_gem_init_aliasing_ppgtt(struct drm_device *dev) | |||
96 | GFP_KERNEL); | 96 | GFP_KERNEL); |
97 | if (!ppgtt->pt_dma_addr) | 97 | if (!ppgtt->pt_dma_addr) |
98 | goto err_pt_alloc; | 98 | goto err_pt_alloc; |
99 | } | ||
100 | 99 | ||
101 | for (i = 0; i < ppgtt->num_pd_entries; i++) { | 100 | for (i = 0; i < ppgtt->num_pd_entries; i++) { |
102 | dma_addr_t pt_addr; | 101 | dma_addr_t pt_addr; |
103 | if (dev_priv->mm.gtt->needs_dmar) { | 102 | |
104 | pt_addr = pci_map_page(dev->pdev, ppgtt->pt_pages[i], | 103 | pt_addr = pci_map_page(dev->pdev, ppgtt->pt_pages[i], |
105 | 0, 4096, | 104 | 0, 4096, |
106 | PCI_DMA_BIDIRECTIONAL); | 105 | PCI_DMA_BIDIRECTIONAL); |
@@ -112,8 +111,7 @@ int i915_gem_init_aliasing_ppgtt(struct drm_device *dev) | |||
112 | 111 | ||
113 | } | 112 | } |
114 | ppgtt->pt_dma_addr[i] = pt_addr; | 113 | ppgtt->pt_dma_addr[i] = pt_addr; |
115 | } else | 114 | } |
116 | pt_addr = page_to_phys(ppgtt->pt_pages[i]); | ||
117 | } | 115 | } |
118 | 116 | ||
119 | ppgtt->scratch_page_dma_addr = dev_priv->mm.gtt->scratch_page_dma; | 117 | ppgtt->scratch_page_dma_addr = dev_priv->mm.gtt->scratch_page_dma; |