diff options
| author | David S. Miller <davem@kernel.bkbits.net> | 2004-09-13 10:25:41 -0700 |
|---|---|---|
| committer | David S. Miller <davem@kernel.bkbits.net> | 2004-09-13 10:25:41 -0700 |
| commit | 5ca8dc165f099da3f72ed6f6c459d6f1f52bd5e5 (patch) | |
| tree | 5969f0de681d489068d758409b44abc2cfc07774 /include | |
| parent | cf11cae7380e2da18f343dc48a1bc3074f2943d0 (diff) | |
| parent | 5c422c68d6e8cb32f6d3525858c5fb8bc71ef754 (diff) | |
Merge davem@nuts.davemloft.net:/disk1/BK/net-2.6
into kernel.bkbits.net:/home/davem/net-2.6
Diffstat (limited to 'include')
| -rw-r--r-- | include/asm-generic/iomap.h | 44 | ||||
| -rw-r--r-- | include/asm-i386/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-i386/io.h | 2 | ||||
| -rw-r--r-- | include/asm-ia64/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-mips/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-ppc/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-ppc64/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-ppc64/io.h | 2 | ||||
| -rw-r--r-- | include/asm-sh/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-sh64/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-sparc/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/asm-x86_64/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/linux/dma-mapping.h | 1 | ||||
| -rw-r--r-- | include/linux/sched.h | 3 |
14 files changed, 52 insertions, 9 deletions
diff --git a/include/asm-generic/iomap.h b/include/asm-generic/iomap.h new file mode 100644 index 000000000000..cbd9e7f03a2a --- /dev/null +++ b/include/asm-generic/iomap.h @@ -0,0 +1,44 @@ +#ifndef __GENERIC_IO_H +#define __GENERIC_IO_H + +#include <linux/linkage.h> + +/* + * These are the "generic" interfaces for doing new-style + * memory-mapped or PIO accesses. Architectures may do + * their own arch-optimized versions, these just act as + * wrappers around the old-style IO register access functions: + * read[bwl]/write[bwl]/in[bwl]/out[bwl] + * + * Don't include this directly, include it from <asm/io.h>. + */ + +/* + * Read/write from/to an (offsettable) iomem cookie. It might be a PIO + * access or a MMIO access, these functions don't care. The info is + * encoded in the hardware mapping set up by the mapping functions + * (or the cookie itself, depending on implementation and hw). + * + * The generic routines just encode the PIO/MMIO as part of the + * cookie, and coldly assume that the MMIO IO mappings are not + * in the low address range. Architectures for which this is not + * true can't use this generic implementation. + */ +extern unsigned int fastcall ioread8(void __iomem *); +extern unsigned int fastcall ioread16(void __iomem *); +extern unsigned int fastcall ioread32(void __iomem *); + +extern void fastcall iowrite8(u8, void __iomem *); +extern void fastcall iowrite16(u16, void __iomem *); +extern void fastcall iowrite32(u32, void __iomem *); + +/* Create a virtual mapping cookie for an IO port range */ +extern void __iomem *ioport_map(unsigned int port, unsigned int nr); +extern void ioport_unmap(void __iomem *); + +/* Create a virtual mapping cookie for a PCI BAR (memory or IO) */ +struct pci_dev; +extern void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long max); +extern void pci_iounmap(struct pci_dev *dev, void __iomem *); + +#endif diff --git a/include/asm-i386/dma-mapping.h b/include/asm-i386/dma-mapping.h index eced63913860..8d432bd90f2b 100644 --- a/include/asm-i386/dma-mapping.h +++ b/include/asm-i386/dma-mapping.h @@ -1,7 +1,6 @@ #ifndef _ASM_I386_DMA_MAPPING_H #define _ASM_I386_DMA_MAPPING_H -#include <linux/device.h> #include <linux/mm.h> #include <asm/cache.h> diff --git a/include/asm-i386/io.h b/include/asm-i386/io.h index 20a26b98ec6e..083e3b8f8c7f 100644 --- a/include/asm-i386/io.h +++ b/include/asm-i386/io.h @@ -45,6 +45,8 @@ #ifdef __KERNEL__ +#include <asm-generic/iomap.h> + #include <linux/vmalloc.h> /** diff --git a/include/asm-ia64/dma-mapping.h b/include/asm-ia64/dma-mapping.h index 695690a5429b..6347c9845642 100644 --- a/include/asm-ia64/dma-mapping.h +++ b/include/asm-ia64/dma-mapping.h @@ -6,7 +6,6 @@ * David Mosberger-Tang <davidm@hpl.hp.com> */ #include <linux/config.h> -#include <linux/device.h> #include <asm/machvec.h> #define dma_alloc_coherent platform_dma_alloc_coherent diff --git a/include/asm-mips/dma-mapping.h b/include/asm-mips/dma-mapping.h index a11cf994d526..716951187bf0 100644 --- a/include/asm-mips/dma-mapping.h +++ b/include/asm-mips/dma-mapping.h @@ -1,7 +1,6 @@ #ifndef _ASM_DMA_MAPPING_H #define _ASM_DMA_MAPPING_H -#include <linux/device.h> #include <asm/scatterlist.h> #include <asm/cache.h> diff --git a/include/asm-ppc/dma-mapping.h b/include/asm-ppc/dma-mapping.h index 9be4f7297400..7f0487afebbe 100644 --- a/include/asm-ppc/dma-mapping.h +++ b/include/asm-ppc/dma-mapping.h @@ -8,7 +8,6 @@ #include <linux/config.h> /* need struct page definitions */ #include <linux/mm.h> -#include <linux/device.h> #include <asm/scatterlist.h> #include <asm/io.h> diff --git a/include/asm-ppc64/dma-mapping.h b/include/asm-ppc64/dma-mapping.h index 0cdc5346f6f8..1e05f389e72b 100644 --- a/include/asm-ppc64/dma-mapping.h +++ b/include/asm-ppc64/dma-mapping.h @@ -8,7 +8,6 @@ #define _ASM_DMA_MAPPING_H #include <linux/types.h> -#include <linux/device.h> #include <linux/cache.h> /* need struct page definitions */ #include <linux/mm.h> diff --git a/include/asm-ppc64/io.h b/include/asm-ppc64/io.h index 33c2dfff9815..1e9cd557352e 100644 --- a/include/asm-ppc64/io.h +++ b/include/asm-ppc64/io.h @@ -18,6 +18,8 @@ #include <asm/memory.h> #include <asm/delay.h> +#include <asm-generic/iomap.h> + #define __ide_mm_insw(p, a, c) _insw_ns((volatile u16 *)(p), (a), (c)) #define __ide_mm_insl(p, a, c) _insl_ns((volatile u32 *)(p), (a), (c)) #define __ide_mm_outsw(p, a, c) _outsw_ns((volatile u16 *)(p), (a), (c)) diff --git a/include/asm-sh/dma-mapping.h b/include/asm-sh/dma-mapping.h index 8f149477ee2c..8876ec7b0e4d 100644 --- a/include/asm-sh/dma-mapping.h +++ b/include/asm-sh/dma-mapping.h @@ -3,7 +3,6 @@ #include <linux/config.h> #include <linux/mm.h> -#include <linux/device.h> #include <asm/scatterlist.h> #include <asm/io.h> diff --git a/include/asm-sh64/dma-mapping.h b/include/asm-sh64/dma-mapping.h index 3a6424986b4b..b8d26fe677f4 100644 --- a/include/asm-sh64/dma-mapping.h +++ b/include/asm-sh64/dma-mapping.h @@ -3,7 +3,6 @@ #include <linux/config.h> #include <linux/mm.h> -#include <linux/device.h> #include <asm/scatterlist.h> #include <asm/io.h> diff --git a/include/asm-sparc/dma-mapping.h b/include/asm-sparc/dma-mapping.h index 08ede04f7eaf..2dc5bb8effa6 100644 --- a/include/asm-sparc/dma-mapping.h +++ b/include/asm-sparc/dma-mapping.h @@ -2,7 +2,6 @@ #define _ASM_SPARC_DMA_MAPPING_H #include <linux/config.h> -#include <linux/device.h> #ifdef CONFIG_PCI #include <asm-generic/dma-mapping.h> diff --git a/include/asm-x86_64/dma-mapping.h b/include/asm-x86_64/dma-mapping.h index 95102ecc1b70..a416dc31634a 100644 --- a/include/asm-x86_64/dma-mapping.h +++ b/include/asm-x86_64/dma-mapping.h @@ -7,7 +7,6 @@ */ #include <linux/config.h> -#include <linux/device.h> #include <asm/scatterlist.h> #include <asm/io.h> diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h index 3c545e326d57..806c305332c1 100644 --- a/include/linux/dma-mapping.h +++ b/include/linux/dma-mapping.h @@ -1,6 +1,7 @@ #ifndef _ASM_LINUX_DMA_MAPPING_H #define _ASM_LINUX_DMA_MAPPING_H +#include <linux/device.h> #include <linux/err.h> /* These definitions mirror those in pci.h, so they can be used diff --git a/include/linux/sched.h b/include/linux/sched.h index b73710a9ac12..f5d4b9cae523 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1024,6 +1024,9 @@ static inline void arch_pick_mmap_layout(struct mm_struct *mm) } #endif +extern long sched_setaffinity(pid_t pid, cpumask_t new_mask); +extern long sched_getaffinity(pid_t pid, cpumask_t *mask); + #endif /* __KERNEL__ */ #endif |
