]> git.karo-electronics.de Git - karo-tx-linux.git/blob - arch/sparc/kernel/dma.c
sparc: Use asm-generic/pci-dma-compat
[karo-tx-linux.git] / arch / sparc / kernel / dma.c
1 /* dma.c: PCI and SBUS DMA accessors for 32-bit sparc.
2  *
3  * Copyright (C) 2008 David S. Miller <davem@davemloft.net>
4  */
5
6 #include <linux/kernel.h>
7 #include <linux/module.h>
8 #include <linux/dma-mapping.h>
9 #include <linux/scatterlist.h>
10 #include <linux/mm.h>
11
12 #ifdef CONFIG_PCI
13 #include <linux/pci.h>
14 #endif
15
16 /*
17  * Return whether the given PCI device DMA address mask can be
18  * supported properly.  For example, if your device can only drive the
19  * low 24-bits during PCI bus mastering, then you would pass
20  * 0x00ffffff as the mask to this function.
21  */
22 int dma_supported(struct device *dev, u64 mask)
23 {
24 #ifdef CONFIG_PCI
25         if (dev->bus == &pci_bus_type)
26                 return 1;
27 #endif
28         return 0;
29 }
30 EXPORT_SYMBOL(dma_supported);
31
32 int dma_set_mask(struct device *dev, u64 dma_mask)
33 {
34 #ifdef CONFIG_PCI
35         if (dev->bus == &pci_bus_type)
36                 return pci_set_dma_mask(to_pci_dev(dev), dma_mask);
37 #endif
38         return -EOPNOTSUPP;
39 }
40 EXPORT_SYMBOL(dma_set_mask);