]> Git Repo - linux.git/commitdiff
Merge branch 'linus' into x86/gart
authorIngo Molnar <[email protected]>
Fri, 15 Aug 2008 16:15:17 +0000 (18:15 +0200)
committerIngo Molnar <[email protected]>
Fri, 15 Aug 2008 16:15:17 +0000 (18:15 +0200)
1  2 
arch/x86/kernel/pci-gart_64.c

index 1062dc1e6396395e3d70a21cb99617fd61087b16,49285f8fd4d54005d5efb9a9fad6bc498420e6d6..cdab6784907476d6d014f668538e52e954edc8c9
@@@ -67,9 -67,6 +67,6 @@@ static u32 gart_unmapped_entry
        (((x) & 0xfffff000) | (((x) >> 32) << 4) | GPTE_VALID | GPTE_COHERENT)
  #define GPTE_DECODE(x) (((x) & 0xfffff000) | (((u64)(x) & 0xff0) << 28))
  
- #define to_pages(addr, size) \
-       (round_up(((addr) & ~PAGE_MASK) + (size), PAGE_SIZE) >> PAGE_SHIFT)
  #define EMERGENCY_PAGES 32 /* = 128KB */
  
  #ifdef CONFIG_AGP
@@@ -93,7 -90,7 +90,7 @@@ static unsigned long alloc_iommu(struc
  
        base_index = ALIGN(iommu_bus_base & dma_get_seg_boundary(dev),
                           PAGE_SIZE) >> PAGE_SHIFT;
 -      boundary_size = ALIGN(dma_get_seg_boundary(dev) + 1,
 +      boundary_size = ALIGN((unsigned long long)dma_get_seg_boundary(dev) + 1,
                              PAGE_SIZE) >> PAGE_SHIFT;
  
        spin_lock_irqsave(&iommu_bitmap_lock, flags);
@@@ -241,7 -238,7 +238,7 @@@ nonforced_iommu(struct device *dev, uns
  static dma_addr_t dma_map_area(struct device *dev, dma_addr_t phys_mem,
                                size_t size, int dir)
  {
-       unsigned long npages = to_pages(phys_mem, size);
+       unsigned long npages = iommu_num_pages(phys_mem, size);
        unsigned long iommu_page = alloc_iommu(dev, npages);
        int i;
  
@@@ -304,7 -301,7 +301,7 @@@ static void gart_unmap_single(struct de
                return;
  
        iommu_page = (dma_addr - iommu_bus_base)>>PAGE_SHIFT;
-       npages = to_pages(dma_addr, size);
+       npages = iommu_num_pages(dma_addr, size);
        for (i = 0; i < npages; i++) {
                iommu_gatt_base[iommu_page + i] = gart_unmapped_entry;
                CLEAR_LEAK(iommu_page + i);
@@@ -387,7 -384,7 +384,7 @@@ static int __dma_map_cont(struct devic
                }
  
                addr = phys_addr;
-               pages = to_pages(s->offset, s->length);
+               pages = iommu_num_pages(s->offset, s->length);
                while (pages--) {
                        iommu_gatt_base[iommu_page] = GPTE_ENCODE(addr);
                        SET_LEAK(iommu_page);
@@@ -470,7 -467,7 +467,7 @@@ gart_map_sg(struct device *dev, struct 
  
                seg_size += s->length;
                need = nextneed;
-               pages += to_pages(s->offset, s->length);
+               pages += iommu_num_pages(s->offset, s->length);
                ps = s;
        }
        if (dma_map_cont(dev, start_sg, i - start, sgmap, pages, need) < 0)
@@@ -692,8 -689,7 +689,7 @@@ static __init int init_k8_gatt(struct a
  
  extern int agp_amd64_init(void);
  
- static const struct dma_mapping_ops gart_dma_ops = {
-       .mapping_error                  = NULL,
+ static struct dma_mapping_ops gart_dma_ops = {
        .map_single                     = gart_map_single,
        .map_simple                     = gart_map_simple,
        .unmap_single                   = gart_unmap_single,
This page took 0.059014 seconds and 4 git commands to generate.