aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-generic
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-generic')
-rw-r--r--include/asm-generic/dma-mapping.h308
-rw-r--r--include/asm-generic/fcntl.h12
-rw-r--r--include/asm-generic/siginfo.h14
-rw-r--r--include/asm-generic/statfs.h5
-rw-r--r--include/asm-generic/topology.h10
-rw-r--r--include/asm-generic/vmlinux.lds.h15
6 files changed, 22 insertions, 342 deletions
diff --git a/include/asm-generic/dma-mapping.h b/include/asm-generic/dma-mapping.h
deleted file mode 100644
index 189486c3f92..00000000000
--- a/include/asm-generic/dma-mapping.h
+++ /dev/null
@@ -1,308 +0,0 @@
1/* Copyright (C) 2002 by James.Bottomley@HansenPartnership.com
2 *
3 * Implements the generic device dma API via the existing pci_ one
4 * for unconverted architectures
5 */
6
7#ifndef _ASM_GENERIC_DMA_MAPPING_H
8#define _ASM_GENERIC_DMA_MAPPING_H
9
10
11#ifdef CONFIG_PCI
12
13/* we implement the API below in terms of the existing PCI one,
14 * so include it */
15#include <linux/pci.h>
16/* need struct page definitions */
17#include <linux/mm.h>
18
19static inline int
20dma_supported(struct device *dev, u64 mask)
21{
22 BUG_ON(dev->bus != &pci_bus_type);
23
24 return pci_dma_supported(to_pci_dev(dev), mask);
25}
26
27static inline int
28dma_set_mask(struct device *dev, u64 dma_mask)
29{
30 BUG_ON(dev->bus != &pci_bus_type);
31
32 return pci_set_dma_mask(to_pci_dev(dev), dma_mask);
33}
34
35static inline void *
36dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
37 gfp_t flag)
38{
39 BUG_ON(dev->bus != &pci_bus_type);
40
41 return pci_alloc_consistent(to_pci_dev(dev), size, dma_handle);
42}
43
44static inline void
45dma_free_coherent(struct device *dev, size_t size, void *cpu_addr,
46 dma_addr_t dma_handle)
47{
48 BUG_ON(dev->bus != &pci_bus_type);
49
50 pci_free_consistent(to_pci_dev(dev), size, cpu_addr, dma_handle);
51}
52
53static inline dma_addr_t
54dma_map_single(struct device *dev, void *cpu_addr, size_t size,
55 enum dma_data_direction direction)
56{
57 BUG_ON(dev->bus != &pci_bus_type);
58
59 return pci_map_single(to_pci_dev(dev), cpu_addr, size, (int)direction);
60}
61
62static inline void
63dma_unmap_single(struct device *dev, dma_addr_t dma_addr, size_t size,
64 enum dma_data_direction direction)
65{
66 BUG_ON(dev->bus != &pci_bus_type);
67
68 pci_unmap_single(to_pci_dev(dev), dma_addr, size, (int)direction);
69}
70
71static inline dma_addr_t
72dma_map_page(struct device *dev, struct page *page,
73 unsigned long offset, size_t size,
74 enum dma_data_direction direction)
75{
76 BUG_ON(dev->bus != &pci_bus_type);
77
78 return pci_map_page(to_pci_dev(dev), page, offset, size, (int)direction);
79}
80
81static inline void
82dma_unmap_page(struct device *dev, dma_addr_t dma_address, size_t size,
83 enum dma_data_direction direction)
84{
85 BUG_ON(dev->bus != &pci_bus_type);
86
87 pci_unmap_page(to_pci_dev(dev), dma_address, size, (int)direction);
88}
89
90static inline int
91dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
92 enum dma_data_direction direction)
93{
94 BUG_ON(dev->bus != &pci_bus_type);
95
96 return pci_map_sg(to_pci_dev(dev), sg, nents, (int)direction);
97}
98
99static inline void
100dma_unmap_sg(struct device *dev, struct scatterlist *sg, int nhwentries,
101 enum dma_data_direction direction)
102{
103 BUG_ON(dev->bus != &pci_bus_type);
104
105 pci_unmap_sg(to_pci_dev(dev), sg, nhwentries, (int)direction);
106}
107
108static inline void
109dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, size_t size,
110 enum dma_data_direction direction)
111{
112 BUG_ON(dev->bus != &pci_bus_type);
113
114 pci_dma_sync_single_for_cpu(to_pci_dev(dev), dma_handle,
115 size, (int)direction);
116}
117
118static inline void
119dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, size_t size,
120 enum dma_data_direction direction)
121{
122 BUG_ON(dev->bus != &pci_bus_type);
123
124 pci_dma_sync_single_for_device(to_pci_dev(dev), dma_handle,
125 size, (int)direction);
126}
127
128static inline void
129dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems,
130 enum dma_data_direction direction)
131{
132 BUG_ON(dev->bus != &pci_bus_type);
133
134 pci_dma_sync_sg_for_cpu(to_pci_dev(dev), sg, nelems, (int)direction);
135}
136
137static inline void
138dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems,
139 enum dma_data_direction direction)
140{
141 BUG_ON(dev->bus != &pci_bus_type);
142
143 pci_dma_sync_sg_for_device(to_pci_dev(dev), sg, nelems, (int)direction);
144}
145
146static inline int
147dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
148{
149 return pci_dma_mapping_error(to_pci_dev(dev), dma_addr);
150}
151
152
153#else
154
155static inline int
156dma_supported(struct device *dev, u64 mask)
157{
158 return 0;
159}
160
161static inline int
162dma_set_mask(struct device *dev, u64 dma_mask)
163{
164 BUG();
165 return 0;
166}
167
168static inline void *
169dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
170 gfp_t flag)
171{
172 BUG();
173 return NULL;
174}
175
176static inline void
177dma_free_coherent(struct device *dev, size_t size, void *cpu_addr,
178 dma_addr_t dma_handle)
179{
180 BUG();
181}
182
183static inline dma_addr_t
184dma_map_single(struct device *dev, void *cpu_addr, size_t size,
185 enum dma_data_direction direction)
186{
187 BUG();
188 return 0;
189}
190
191static inline void
192dma_unmap_single(struct device *dev, dma_addr_t dma_addr, size_t size,
193 enum dma_data_direction direction)
194{
195 BUG();
196}
197
198static inline dma_addr_t
199dma_map_page(struct device *dev, struct page *page,
200 unsigned long offset, size_t size,
201 enum dma_data_direction direction)
202{
203 BUG();
204 return 0;
205}
206
207static inline void
208dma_unmap_page(struct device *dev, dma_addr_t dma_address, size_t size,
209 enum dma_data_direction direction)
210{
211 BUG();
212}
213
214static inline int
215dma_map_sg(struct device *dev, struct scatterlist *sg, int nents,
216 enum dma_data_direction direction)
217{
218 BUG();
219 return 0;
220}
221
222static inline void
223dma_unmap_sg(struct device *dev, struct scatterlist *sg, int nhwentries,
224 enum dma_data_direction direction)
225{
226 BUG();
227}
228
229static inline void
230dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, size_t size,
231 enum dma_data_direction direction)
232{
233 BUG();
234}
235
236static inline void
237dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, size_t size,
238 enum dma_data_direction direction)
239{
240 BUG();
241}
242
243static inline void
244dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems,
245 enum dma_data_direction direction)
246{
247 BUG();
248}
249
250static inline void
251dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems,
252 enum dma_data_direction direction)
253{
254 BUG();
255}
256
257static inline int
258dma_error(dma_addr_t dma_addr)
259{
260 return 0;
261}
262
263#endif
264
265/* Now for the API extensions over the pci_ one */
266
267#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
268#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
269#define dma_is_consistent(d, h) (1)
270
271static inline int
272dma_get_cache_alignment(void)
273{
274 /* no easy way to get cache size on all processors, so return
275 * the maximum possible, to be safe */
276 return (1 << INTERNODE_CACHE_SHIFT);
277}
278
279static inline void
280dma_sync_single_range_for_cpu(struct device *dev, dma_addr_t dma_handle,
281 unsigned long offset, size_t size,
282 enum dma_data_direction direction)
283{
284 /* just sync everything, that's all the pci API can do */
285 dma_sync_single_for_cpu(dev, dma_handle, offset+size, direction);
286}
287
288static inline void
289dma_sync_single_range_for_device(struct device *dev, dma_addr_t dma_handle,
290 unsigned long offset, size_t size,
291 enum dma_data_direction direction)
292{
293 /* just sync everything, that's all the pci API can do */
294 dma_sync_single_for_device(dev, dma_handle, offset+size, direction);
295}
296
297static inline void
298dma_cache_sync(struct device *dev, void *vaddr, size_t size,
299 enum dma_data_direction direction)
300{
301 /* could define this in terms of the dma_cache ... operations,
302 * but if you get this on a platform, you should convert the platform
303 * to using the generic device DMA API */
304 BUG();
305}
306
307#endif
308
diff --git a/include/asm-generic/fcntl.h b/include/asm-generic/fcntl.h
index b8477414c5c..4d3e48373e7 100644
--- a/include/asm-generic/fcntl.h
+++ b/include/asm-generic/fcntl.h
@@ -117,9 +117,9 @@
117struct flock { 117struct flock {
118 short l_type; 118 short l_type;
119 short l_whence; 119 short l_whence;
120 off_t l_start; 120 __kernel_off_t l_start;
121 off_t l_len; 121 __kernel_off_t l_len;
122 pid_t l_pid; 122 __kernel_pid_t l_pid;
123 __ARCH_FLOCK_PAD 123 __ARCH_FLOCK_PAD
124}; 124};
125#endif 125#endif
@@ -140,9 +140,9 @@ struct flock {
140struct flock64 { 140struct flock64 {
141 short l_type; 141 short l_type;
142 short l_whence; 142 short l_whence;
143 loff_t l_start; 143 __kernel_loff_t l_start;
144 loff_t l_len; 144 __kernel_loff_t l_len;
145 pid_t l_pid; 145 __kernel_pid_t l_pid;
146 __ARCH_FLOCK64_PAD 146 __ARCH_FLOCK64_PAD
147}; 147};
148#endif 148#endif
diff --git a/include/asm-generic/siginfo.h b/include/asm-generic/siginfo.h
index 969570167e9..35752dadd6d 100644
--- a/include/asm-generic/siginfo.h
+++ b/include/asm-generic/siginfo.h
@@ -23,7 +23,7 @@ typedef union sigval {
23#endif 23#endif
24 24
25#ifndef __ARCH_SI_UID_T 25#ifndef __ARCH_SI_UID_T
26#define __ARCH_SI_UID_T uid_t 26#define __ARCH_SI_UID_T __kernel_uid32_t
27#endif 27#endif
28 28
29/* 29/*
@@ -47,13 +47,13 @@ typedef struct siginfo {
47 47
48 /* kill() */ 48 /* kill() */
49 struct { 49 struct {
50 pid_t _pid; /* sender's pid */ 50 __kernel_pid_t _pid; /* sender's pid */
51 __ARCH_SI_UID_T _uid; /* sender's uid */ 51 __ARCH_SI_UID_T _uid; /* sender's uid */
52 } _kill; 52 } _kill;
53 53
54 /* POSIX.1b timers */ 54 /* POSIX.1b timers */
55 struct { 55 struct {
56 timer_t _tid; /* timer id */ 56 __kernel_timer_t _tid; /* timer id */
57 int _overrun; /* overrun count */ 57 int _overrun; /* overrun count */
58 char _pad[sizeof( __ARCH_SI_UID_T) - sizeof(int)]; 58 char _pad[sizeof( __ARCH_SI_UID_T) - sizeof(int)];
59 sigval_t _sigval; /* same as below */ 59 sigval_t _sigval; /* same as below */
@@ -62,18 +62,18 @@ typedef struct siginfo {
62 62
63 /* POSIX.1b signals */ 63 /* POSIX.1b signals */
64 struct { 64 struct {
65 pid_t _pid; /* sender's pid */ 65 __kernel_pid_t _pid; /* sender's pid */
66 __ARCH_SI_UID_T _uid; /* sender's uid */ 66 __ARCH_SI_UID_T _uid; /* sender's uid */
67 sigval_t _sigval; 67 sigval_t _sigval;
68 } _rt; 68 } _rt;
69 69
70 /* SIGCHLD */ 70 /* SIGCHLD */
71 struct { 71 struct {
72 pid_t _pid; /* which child */ 72 __kernel_pid_t _pid; /* which child */
73 __ARCH_SI_UID_T _uid; /* sender's uid */ 73 __ARCH_SI_UID_T _uid; /* sender's uid */
74 int _status; /* exit code */ 74 int _status; /* exit code */
75 clock_t _utime; 75 __kernel_clock_t _utime;
76 clock_t _stime; 76 __kernel_clock_t _stime;
77 } _sigchld; 77 } _sigchld;
78 78
79 /* SIGILL, SIGFPE, SIGSEGV, SIGBUS */ 79 /* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
diff --git a/include/asm-generic/statfs.h b/include/asm-generic/statfs.h
index 6129d680214..3b4fb3e52f0 100644
--- a/include/asm-generic/statfs.h
+++ b/include/asm-generic/statfs.h
@@ -1,8 +1,9 @@
1#ifndef _GENERIC_STATFS_H 1#ifndef _GENERIC_STATFS_H
2#define _GENERIC_STATFS_H 2#define _GENERIC_STATFS_H
3 3
4#ifndef __KERNEL_STRICT_NAMES 4#include <linux/types.h>
5# include <linux/types.h> 5
6#ifdef __KERNEL__
6typedef __kernel_fsid_t fsid_t; 7typedef __kernel_fsid_t fsid_t;
7#endif 8#endif
8 9
diff --git a/include/asm-generic/topology.h b/include/asm-generic/topology.h
index 0e9e2bc0ee9..88bada2ebc4 100644
--- a/include/asm-generic/topology.h
+++ b/include/asm-generic/topology.h
@@ -43,20 +43,10 @@
43#ifndef cpumask_of_node 43#ifndef cpumask_of_node
44#define cpumask_of_node(node) ((void)node, cpu_online_mask) 44#define cpumask_of_node(node) ((void)node, cpu_online_mask)
45#endif 45#endif
46#ifndef node_to_first_cpu
47#define node_to_first_cpu(node) ((void)(node),0)
48#endif
49#ifndef pcibus_to_node 46#ifndef pcibus_to_node
50#define pcibus_to_node(bus) ((void)(bus), -1) 47#define pcibus_to_node(bus) ((void)(bus), -1)
51#endif 48#endif
52 49
53#ifndef pcibus_to_cpumask
54#define pcibus_to_cpumask(bus) (pcibus_to_node(bus) == -1 ? \
55 CPU_MASK_ALL : \
56 node_to_cpumask(pcibus_to_node(bus)) \
57 )
58#endif
59
60#ifndef cpumask_of_pcibus 50#ifndef cpumask_of_pcibus
61#define cpumask_of_pcibus(bus) (pcibus_to_node(bus) == -1 ? \ 51#define cpumask_of_pcibus(bus) (pcibus_to_node(bus) == -1 ? \
62 cpu_all_mask : \ 52 cpu_all_mask : \
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index d3bc3c86df6..7fa660fd449 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -104,6 +104,11 @@
104 VMLINUX_SYMBOL(__start___tracepoints) = .; \ 104 VMLINUX_SYMBOL(__start___tracepoints) = .; \
105 *(__tracepoints) \ 105 *(__tracepoints) \
106 VMLINUX_SYMBOL(__stop___tracepoints) = .; \ 106 VMLINUX_SYMBOL(__stop___tracepoints) = .; \
107 /* implement dynamic printk debug */ \
108 . = ALIGN(8); \
109 VMLINUX_SYMBOL(__start___verbose) = .; \
110 *(__verbose) \
111 VMLINUX_SYMBOL(__stop___verbose) = .; \
107 LIKELY_PROFILE() \ 112 LIKELY_PROFILE() \
108 BRANCH_PROFILE() \ 113 BRANCH_PROFILE() \
109 TRACE_PRINTKS() \ 114 TRACE_PRINTKS() \
@@ -336,15 +341,7 @@
336 CPU_DISCARD(init.data) \ 341 CPU_DISCARD(init.data) \
337 CPU_DISCARD(init.rodata) \ 342 CPU_DISCARD(init.rodata) \
338 MEM_DISCARD(init.data) \ 343 MEM_DISCARD(init.data) \
339 MEM_DISCARD(init.rodata) \ 344 MEM_DISCARD(init.rodata)
340 /* implement dynamic printk debug */ \
341 VMLINUX_SYMBOL(__start___verbose_strings) = .; \
342 *(__verbose_strings) \
343 VMLINUX_SYMBOL(__stop___verbose_strings) = .; \
344 . = ALIGN(8); \
345 VMLINUX_SYMBOL(__start___verbose) = .; \
346 *(__verbose) \
347 VMLINUX_SYMBOL(__stop___verbose) = .;
348 345
349#define INIT_TEXT \ 346#define INIT_TEXT \
350 *(.init.text) \ 347 *(.init.text) \