WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] remove x86_64 pci-nommu-xen.c

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH] remove x86_64 pci-nommu-xen.c
From: Chris Wright <chrisw@xxxxxxxxxxxx>
Date: Thu, 9 Feb 2006 12:47:08 -0800
Delivery-date: Thu, 09 Feb 2006 20:51:11 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.4.2.1i
This file is identical to its mainline counterpart, so remove it.

Signed-off-by: Chris Wright <chrisw@xxxxxxxxxxxx>
---

diff -r 10d6c1dc1bc7 linux-2.6-xen-sparse/arch/x86_64/kernel/pci-nommu-xen.c
--- a/linux-2.6-xen-sparse/arch/x86_64/kernel/pci-nommu-xen.c   Thu Feb  9 
12:17:35 2006 +0100
+++ /dev/null   Thu Jan  1 00:00:00 1970 +0000
@@ -1,99 +0,0 @@
-/* Fallback functions when the main IOMMU code is not compiled in. This
-   code is roughly equivalent to i386. */
-#include <linux/mm.h>
-#include <linux/init.h>
-#include <linux/pci.h>
-#include <linux/string.h>
-#include <asm/proto.h>
-#include <asm/processor.h>
-#include <asm/dma.h>
-
-static int
-check_addr(char *name, struct device *hwdev, dma_addr_t bus, size_t size)
-{
-        if (hwdev && bus + size > *hwdev->dma_mask) {
-               printk(KERN_ERR
-                   "nommu_%s: overflow %Lx+%lu of device mask %Lx\n",
-              name, (long long)bus, size, (long long)*hwdev->dma_mask);
-               return 0;
-       }
-       return 1;
-}
-
-static dma_addr_t
-nommu_map_single(struct device *hwdev, void *ptr, size_t size,
-              int direction)
-{
-       dma_addr_t bus = virt_to_bus(ptr);
-       if (!check_addr("map_single", hwdev, bus, size))
-                               return bad_dma_address;
-       return bus;
-}
-
-void nommu_unmap_single(struct device *dev, dma_addr_t addr,size_t size,
-                       int direction)
-{
-}
-
-/* Map a set of buffers described by scatterlist in streaming
- * mode for DMA.  This is the scatter-gather version of the
- * above pci_map_single interface.  Here the scatter gather list
- * elements are each tagged with the appropriate dma address
- * and length.  They are obtained via sg_dma_{address,length}(SG).
- *
- * NOTE: An implementation may be able to use a smaller number of
- *       DMA address/length pairs than there are SG table elements.
- *       (for example via virtual mapping capabilities)
- *       The routine returns the number of addr/length pairs actually
- *       used, at most nents.
- *
- * Device ownership issues as mentioned above for pci_map_single are
- * the same here.
- */
-int nommu_map_sg(struct device *hwdev, struct scatterlist *sg,
-              int nents, int direction)
-{
-       int i;
-
-       BUG_ON(direction == DMA_NONE);
-       for (i = 0; i < nents; i++ ) {
-               struct scatterlist *s = &sg[i];
-               BUG_ON(!s->page);
-               s->dma_address = virt_to_bus(page_address(s->page) +s->offset);
-               if (!check_addr("map_sg", hwdev, s->dma_address, s->length))
-                       return 0;
-               s->dma_length = s->length;
-       }
-       return nents;
-}
-
-/* Unmap a set of streaming mode DMA translations.
- * Again, cpu read rules concerning calls here are the same as for
- * pci_unmap_single() above.
- */
-void nommu_unmap_sg(struct device *dev, struct scatterlist *sg,
-                 int nents, int dir)
-{
-}
-
-struct dma_mapping_ops nommu_dma_ops = {
-       .map_single = nommu_map_single,
-       .unmap_single = nommu_unmap_single,
-       .map_sg = nommu_map_sg,
-       .unmap_sg = nommu_unmap_sg,
-       .is_phys = 1,
-};
-
-void __init no_iommu_init(void)
-{
-       if (dma_ops)
-               return;
-       printk(KERN_INFO "PCI-DMA: Disabling IOMMU.\n");
-       dma_ops = &nommu_dma_ops;
-       if (end_pfn > MAX_DMA32_PFN) {
-               printk(KERN_ERR
-                      "WARNING more than 4GB of memory but IOMMU not compiled 
in.\n"
-                      KERN_ERR "WARNING 32bit PCI may malfunction.\n"
-                      KERN_ERR "You might want to enable CONFIG_GART_IOMMU\n");
-       }
-}

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH] remove x86_64 pci-nommu-xen.c, Chris Wright <=