diff options
Diffstat (limited to 'arch/ia64/include/asm')
-rw-r--r-- | arch/ia64/include/asm/Kbuild | 1 | ||||
-rw-r--r-- | arch/ia64/include/asm/bitops.h | 2 | ||||
-rw-r--r-- | arch/ia64/include/asm/dma-mapping.h | 110 | ||||
-rw-r--r-- | arch/ia64/include/asm/fpu.h | 2 | ||||
-rw-r--r-- | arch/ia64/include/asm/gcc_intrin.h | 18 | ||||
-rw-r--r-- | arch/ia64/include/asm/hw_irq.h | 4 | ||||
-rw-r--r-- | arch/ia64/include/asm/iommu.h | 5 | ||||
-rw-r--r-- | arch/ia64/include/asm/mca.h | 38 | ||||
-rw-r--r-- | arch/ia64/include/asm/meminit.h | 18 | ||||
-rw-r--r-- | arch/ia64/include/asm/pal.h | 24 | ||||
-rw-r--r-- | arch/ia64/include/asm/pci.h | 13 | ||||
-rw-r--r-- | arch/ia64/include/asm/pgalloc.h | 6 | ||||
-rw-r--r-- | arch/ia64/include/asm/pgtable.h | 1 | ||||
-rw-r--r-- | arch/ia64/include/asm/processor.h | 56 | ||||
-rw-r--r-- | arch/ia64/include/asm/sal.h | 8 | ||||
-rw-r--r-- | arch/ia64/include/asm/sn/sn_sal.h | 2 | ||||
-rw-r--r-- | arch/ia64/include/asm/thread_info.h | 2 | ||||
-rw-r--r-- | arch/ia64/include/asm/tlb.h | 12 | ||||
-rw-r--r-- | arch/ia64/include/asm/types.h | 13 | ||||
-rw-r--r-- | arch/ia64/include/asm/unistd.h | 4 | ||||
-rw-r--r-- | arch/ia64/include/asm/xen/hypervisor.h | 1 |
21 files changed, 124 insertions, 216 deletions
diff --git a/arch/ia64/include/asm/Kbuild b/arch/ia64/include/asm/Kbuild index ccbe8ae47a61..c7d0a71b9242 100644 --- a/arch/ia64/include/asm/Kbuild +++ b/arch/ia64/include/asm/Kbuild | |||
@@ -2,7 +2,6 @@ include include/asm-generic/Kbuild.asm | |||
2 | 2 | ||
3 | header-y += break.h | 3 | header-y += break.h |
4 | header-y += fpu.h | 4 | header-y += fpu.h |
5 | header-y += fpswa.h | ||
6 | header-y += ia64regs.h | 5 | header-y += ia64regs.h |
7 | header-y += intel_intrin.h | 6 | header-y += intel_intrin.h |
8 | header-y += perfmon_default_smpl.h | 7 | header-y += perfmon_default_smpl.h |
diff --git a/arch/ia64/include/asm/bitops.h b/arch/ia64/include/asm/bitops.h index e2ca80037335..57a2787bc9fb 100644 --- a/arch/ia64/include/asm/bitops.h +++ b/arch/ia64/include/asm/bitops.h | |||
@@ -286,7 +286,7 @@ __test_and_clear_bit(int nr, volatile void * addr) | |||
286 | { | 286 | { |
287 | __u32 *p = (__u32 *) addr + (nr >> 5); | 287 | __u32 *p = (__u32 *) addr + (nr >> 5); |
288 | __u32 m = 1 << (nr & 31); | 288 | __u32 m = 1 << (nr & 31); |
289 | int oldbitset = *p & m; | 289 | int oldbitset = (*p & m) != 0; |
290 | 290 | ||
291 | *p &= ~m; | 291 | *p &= ~m; |
292 | return oldbitset; | 292 | return oldbitset; |
diff --git a/arch/ia64/include/asm/dma-mapping.h b/arch/ia64/include/asm/dma-mapping.h index 36c0009dbece..5a61b5c2e18f 100644 --- a/arch/ia64/include/asm/dma-mapping.h +++ b/arch/ia64/include/asm/dma-mapping.h | |||
@@ -8,6 +8,7 @@ | |||
8 | #include <asm/machvec.h> | 8 | #include <asm/machvec.h> |
9 | #include <linux/scatterlist.h> | 9 | #include <linux/scatterlist.h> |
10 | #include <asm/swiotlb.h> | 10 | #include <asm/swiotlb.h> |
11 | #include <linux/dma-debug.h> | ||
11 | 12 | ||
12 | #define ARCH_HAS_DMA_GET_REQUIRED_MASK | 13 | #define ARCH_HAS_DMA_GET_REQUIRED_MASK |
13 | 14 | ||
@@ -24,95 +25,28 @@ static inline void *dma_alloc_coherent(struct device *dev, size_t size, | |||
24 | dma_addr_t *daddr, gfp_t gfp) | 25 | dma_addr_t *daddr, gfp_t gfp) |
25 | { | 26 | { |
26 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | 27 | struct dma_map_ops *ops = platform_dma_get_ops(dev); |
27 | return ops->alloc_coherent(dev, size, daddr, gfp); | 28 | void *caddr; |
29 | |||
30 | caddr = ops->alloc_coherent(dev, size, daddr, gfp); | ||
31 | debug_dma_alloc_coherent(dev, size, *daddr, caddr); | ||
32 | return caddr; | ||
28 | } | 33 | } |
29 | 34 | ||
30 | static inline void dma_free_coherent(struct device *dev, size_t size, | 35 | static inline void dma_free_coherent(struct device *dev, size_t size, |
31 | void *caddr, dma_addr_t daddr) | 36 | void *caddr, dma_addr_t daddr) |
32 | { | 37 | { |
33 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | 38 | struct dma_map_ops *ops = platform_dma_get_ops(dev); |
39 | debug_dma_free_coherent(dev, size, caddr, daddr); | ||
34 | ops->free_coherent(dev, size, caddr, daddr); | 40 | ops->free_coherent(dev, size, caddr, daddr); |
35 | } | 41 | } |
36 | 42 | ||
37 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) | 43 | #define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f) |
38 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) | 44 | #define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h) |
39 | 45 | ||
40 | static inline dma_addr_t dma_map_single_attrs(struct device *dev, | 46 | #define get_dma_ops(dev) platform_dma_get_ops(dev) |
41 | void *caddr, size_t size, | 47 | #define flush_write_buffers() |
42 | enum dma_data_direction dir, | ||
43 | struct dma_attrs *attrs) | ||
44 | { | ||
45 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
46 | return ops->map_page(dev, virt_to_page(caddr), | ||
47 | (unsigned long)caddr & ~PAGE_MASK, size, | ||
48 | dir, attrs); | ||
49 | } | ||
50 | |||
51 | static inline void dma_unmap_single_attrs(struct device *dev, dma_addr_t daddr, | ||
52 | size_t size, | ||
53 | enum dma_data_direction dir, | ||
54 | struct dma_attrs *attrs) | ||
55 | { | ||
56 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
57 | ops->unmap_page(dev, daddr, size, dir, attrs); | ||
58 | } | ||
59 | |||
60 | #define dma_map_single(d, a, s, r) dma_map_single_attrs(d, a, s, r, NULL) | ||
61 | #define dma_unmap_single(d, a, s, r) dma_unmap_single_attrs(d, a, s, r, NULL) | ||
62 | |||
63 | static inline int dma_map_sg_attrs(struct device *dev, struct scatterlist *sgl, | ||
64 | int nents, enum dma_data_direction dir, | ||
65 | struct dma_attrs *attrs) | ||
66 | { | ||
67 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
68 | return ops->map_sg(dev, sgl, nents, dir, attrs); | ||
69 | } | ||
70 | |||
71 | static inline void dma_unmap_sg_attrs(struct device *dev, | ||
72 | struct scatterlist *sgl, int nents, | ||
73 | enum dma_data_direction dir, | ||
74 | struct dma_attrs *attrs) | ||
75 | { | ||
76 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
77 | ops->unmap_sg(dev, sgl, nents, dir, attrs); | ||
78 | } | ||
79 | |||
80 | #define dma_map_sg(d, s, n, r) dma_map_sg_attrs(d, s, n, r, NULL) | ||
81 | #define dma_unmap_sg(d, s, n, r) dma_unmap_sg_attrs(d, s, n, r, NULL) | ||
82 | |||
83 | static inline void dma_sync_single_for_cpu(struct device *dev, dma_addr_t daddr, | ||
84 | size_t size, | ||
85 | enum dma_data_direction dir) | ||
86 | { | ||
87 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
88 | ops->sync_single_for_cpu(dev, daddr, size, dir); | ||
89 | } | ||
90 | |||
91 | static inline void dma_sync_sg_for_cpu(struct device *dev, | ||
92 | struct scatterlist *sgl, | ||
93 | int nents, enum dma_data_direction dir) | ||
94 | { | ||
95 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
96 | ops->sync_sg_for_cpu(dev, sgl, nents, dir); | ||
97 | } | ||
98 | 48 | ||
99 | static inline void dma_sync_single_for_device(struct device *dev, | 49 | #include <asm-generic/dma-mapping-common.h> |
100 | dma_addr_t daddr, | ||
101 | size_t size, | ||
102 | enum dma_data_direction dir) | ||
103 | { | ||
104 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
105 | ops->sync_single_for_device(dev, daddr, size, dir); | ||
106 | } | ||
107 | |||
108 | static inline void dma_sync_sg_for_device(struct device *dev, | ||
109 | struct scatterlist *sgl, | ||
110 | int nents, | ||
111 | enum dma_data_direction dir) | ||
112 | { | ||
113 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
114 | ops->sync_sg_for_device(dev, sgl, nents, dir); | ||
115 | } | ||
116 | 50 | ||
117 | static inline int dma_mapping_error(struct device *dev, dma_addr_t daddr) | 51 | static inline int dma_mapping_error(struct device *dev, dma_addr_t daddr) |
118 | { | 52 | { |
@@ -120,30 +54,6 @@ static inline int dma_mapping_error(struct device *dev, dma_addr_t daddr) | |||
120 | return ops->mapping_error(dev, daddr); | 54 | return ops->mapping_error(dev, daddr); |
121 | } | 55 | } |
122 | 56 | ||
123 | static inline dma_addr_t dma_map_page(struct device *dev, struct page *page, | ||
124 | size_t offset, size_t size, | ||
125 | enum dma_data_direction dir) | ||
126 | { | ||
127 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | ||
128 | return ops->map_page(dev, page, offset, size, dir, NULL); | ||
129 | } | ||
130 | |||
131 | static inline void dma_unmap_page(struct device *dev, dma_addr_t addr, | ||
132 | size_t size, enum dma_data_direction dir) | ||
133 | { | ||
134 | dma_unmap_single(dev, addr, size, dir); | ||
135 | } | ||
136 | |||
137 | /* | ||
138 | * Rest of this file is part of the "Advanced DMA API". Use at your own risk. | ||
139 | * See Documentation/DMA-API.txt for details. | ||
140 | */ | ||
141 | |||
142 | #define dma_sync_single_range_for_cpu(dev, dma_handle, offset, size, dir) \ | ||
143 | dma_sync_single_for_cpu(dev, dma_handle, size, dir) | ||
144 | #define dma_sync_single_range_for_device(dev, dma_handle, offset, size, dir) \ | ||
145 | dma_sync_single_for_device(dev, dma_handle, size, dir) | ||
146 | |||
147 | static inline int dma_supported(struct device *dev, u64 mask) | 57 | static inline int dma_supported(struct device *dev, u64 mask) |
148 | { | 58 | { |
149 | struct dma_map_ops *ops = platform_dma_get_ops(dev); | 59 | struct dma_map_ops *ops = platform_dma_get_ops(dev); |
diff --git a/arch/ia64/include/asm/fpu.h b/arch/ia64/include/asm/fpu.h index 0c26157cffa5..b6395ad1500a 100644 --- a/arch/ia64/include/asm/fpu.h +++ b/arch/ia64/include/asm/fpu.h | |||
@@ -6,6 +6,8 @@ | |||
6 | * David Mosberger-Tang <davidm@hpl.hp.com> | 6 | * David Mosberger-Tang <davidm@hpl.hp.com> |
7 | */ | 7 | */ |
8 | 8 | ||
9 | #include <linux/types.h> | ||
10 | |||
9 | /* floating point status register: */ | 11 | /* floating point status register: */ |
10 | #define FPSR_TRAP_VD (1 << 0) /* invalid op trap disabled */ | 12 | #define FPSR_TRAP_VD (1 << 0) /* invalid op trap disabled */ |
11 | #define FPSR_TRAP_DD (1 << 1) /* denormal trap disabled */ | 13 | #define FPSR_TRAP_DD (1 << 1) /* denormal trap disabled */ |
diff --git a/arch/ia64/include/asm/gcc_intrin.h b/arch/ia64/include/asm/gcc_intrin.h index c2c5fd8fcac4..21ddee54adae 100644 --- a/arch/ia64/include/asm/gcc_intrin.h +++ b/arch/ia64/include/asm/gcc_intrin.h | |||
@@ -388,7 +388,7 @@ register unsigned long ia64_r13 asm ("r13") __used; | |||
388 | 388 | ||
389 | #define ia64_native_thash(addr) \ | 389 | #define ia64_native_thash(addr) \ |
390 | ({ \ | 390 | ({ \ |
391 | __u64 ia64_intri_res; \ | 391 | unsigned long ia64_intri_res; \ |
392 | asm volatile ("thash %0=%1" : "=r"(ia64_intri_res) : "r" (addr)); \ | 392 | asm volatile ("thash %0=%1" : "=r"(ia64_intri_res) : "r" (addr)); \ |
393 | ia64_intri_res; \ | 393 | ia64_intri_res; \ |
394 | }) | 394 | }) |
@@ -419,7 +419,7 @@ register unsigned long ia64_r13 asm ("r13") __used; | |||
419 | 419 | ||
420 | #define ia64_tpa(addr) \ | 420 | #define ia64_tpa(addr) \ |
421 | ({ \ | 421 | ({ \ |
422 | __u64 ia64_pa; \ | 422 | unsigned long ia64_pa; \ |
423 | asm volatile ("tpa %0 = %1" : "=r"(ia64_pa) : "r"(addr) : "memory"); \ | 423 | asm volatile ("tpa %0 = %1" : "=r"(ia64_pa) : "r"(addr) : "memory"); \ |
424 | ia64_pa; \ | 424 | ia64_pa; \ |
425 | }) | 425 | }) |
@@ -444,35 +444,35 @@ register unsigned long ia64_r13 asm ("r13") __used; | |||
444 | 444 | ||
445 | #define ia64_native_get_cpuid(index) \ | 445 | #define ia64_native_get_cpuid(index) \ |
446 | ({ \ | 446 | ({ \ |
447 | __u64 ia64_intri_res; \ | 447 | unsigned long ia64_intri_res; \ |
448 | asm volatile ("mov %0=cpuid[%r1]" : "=r"(ia64_intri_res) : "rO"(index)); \ | 448 | asm volatile ("mov %0=cpuid[%r1]" : "=r"(ia64_intri_res) : "rO"(index)); \ |
449 | ia64_intri_res; \ | 449 | ia64_intri_res; \ |
450 | }) | 450 | }) |
451 | 451 | ||
452 | #define __ia64_get_dbr(index) \ | 452 | #define __ia64_get_dbr(index) \ |
453 | ({ \ | 453 | ({ \ |
454 | __u64 ia64_intri_res; \ | 454 | unsigned long ia64_intri_res; \ |
455 | asm volatile ("mov %0=dbr[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ | 455 | asm volatile ("mov %0=dbr[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ |
456 | ia64_intri_res; \ | 456 | ia64_intri_res; \ |
457 | }) | 457 | }) |
458 | 458 | ||
459 | #define ia64_get_ibr(index) \ | 459 | #define ia64_get_ibr(index) \ |
460 | ({ \ | 460 | ({ \ |
461 | __u64 ia64_intri_res; \ | 461 | unsigned long ia64_intri_res; \ |
462 | asm volatile ("mov %0=ibr[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ | 462 | asm volatile ("mov %0=ibr[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ |
463 | ia64_intri_res; \ | 463 | ia64_intri_res; \ |
464 | }) | 464 | }) |
465 | 465 | ||
466 | #define ia64_get_pkr(index) \ | 466 | #define ia64_get_pkr(index) \ |
467 | ({ \ | 467 | ({ \ |
468 | __u64 ia64_intri_res; \ | 468 | unsigned long ia64_intri_res; \ |
469 | asm volatile ("mov %0=pkr[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ | 469 | asm volatile ("mov %0=pkr[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ |
470 | ia64_intri_res; \ | 470 | ia64_intri_res; \ |
471 | }) | 471 | }) |
472 | 472 | ||
473 | #define ia64_get_pmc(index) \ | 473 | #define ia64_get_pmc(index) \ |
474 | ({ \ | 474 | ({ \ |
475 | __u64 ia64_intri_res; \ | 475 | unsigned long ia64_intri_res; \ |
476 | asm volatile ("mov %0=pmc[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ | 476 | asm volatile ("mov %0=pmc[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ |
477 | ia64_intri_res; \ | 477 | ia64_intri_res; \ |
478 | }) | 478 | }) |
@@ -480,14 +480,14 @@ register unsigned long ia64_r13 asm ("r13") __used; | |||
480 | 480 | ||
481 | #define ia64_native_get_pmd(index) \ | 481 | #define ia64_native_get_pmd(index) \ |
482 | ({ \ | 482 | ({ \ |
483 | __u64 ia64_intri_res; \ | 483 | unsigned long ia64_intri_res; \ |
484 | asm volatile ("mov %0=pmd[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ | 484 | asm volatile ("mov %0=pmd[%1]" : "=r"(ia64_intri_res) : "r"(index)); \ |
485 | ia64_intri_res; \ | 485 | ia64_intri_res; \ |
486 | }) | 486 | }) |
487 | 487 | ||
488 | #define ia64_native_get_rr(index) \ | 488 | #define ia64_native_get_rr(index) \ |
489 | ({ \ | 489 | ({ \ |
490 | __u64 ia64_intri_res; \ | 490 | unsigned long ia64_intri_res; \ |
491 | asm volatile ("mov %0=rr[%1]" : "=r"(ia64_intri_res) : "r" (index)); \ | 491 | asm volatile ("mov %0=rr[%1]" : "=r"(ia64_intri_res) : "r" (index)); \ |
492 | ia64_intri_res; \ | 492 | ia64_intri_res; \ |
493 | }) | 493 | }) |
diff --git a/arch/ia64/include/asm/hw_irq.h b/arch/ia64/include/asm/hw_irq.h index 5c99cbcb8a0d..91619b31dbf5 100644 --- a/arch/ia64/include/asm/hw_irq.h +++ b/arch/ia64/include/asm/hw_irq.h | |||
@@ -106,7 +106,7 @@ extern struct irq_cfg irq_cfg[NR_IRQS]; | |||
106 | #define irq_to_domain(x) irq_cfg[(x)].domain | 106 | #define irq_to_domain(x) irq_cfg[(x)].domain |
107 | DECLARE_PER_CPU(int[IA64_NUM_VECTORS], vector_irq); | 107 | DECLARE_PER_CPU(int[IA64_NUM_VECTORS], vector_irq); |
108 | 108 | ||
109 | extern struct hw_interrupt_type irq_type_ia64_lsapic; /* CPU-internal interrupt controller */ | 109 | extern struct irq_chip irq_type_ia64_lsapic; /* CPU-internal interrupt controller */ |
110 | 110 | ||
111 | #ifdef CONFIG_PARAVIRT_GUEST | 111 | #ifdef CONFIG_PARAVIRT_GUEST |
112 | #include <asm/paravirt.h> | 112 | #include <asm/paravirt.h> |
@@ -146,7 +146,7 @@ static inline void ia64_native_resend_irq(unsigned int vector) | |||
146 | * Default implementations for the irq-descriptor API: | 146 | * Default implementations for the irq-descriptor API: |
147 | */ | 147 | */ |
148 | 148 | ||
149 | extern irq_desc_t irq_desc[NR_IRQS]; | 149 | extern struct irq_desc irq_desc[NR_IRQS]; |
150 | 150 | ||
151 | #ifndef CONFIG_IA64_GENERIC | 151 | #ifndef CONFIG_IA64_GENERIC |
152 | static inline ia64_vector __ia64_irq_to_vector(int irq) | 152 | static inline ia64_vector __ia64_irq_to_vector(int irq) |
diff --git a/arch/ia64/include/asm/iommu.h b/arch/ia64/include/asm/iommu.h index 0490794fe4aa..745e095fe82e 100644 --- a/arch/ia64/include/asm/iommu.h +++ b/arch/ia64/include/asm/iommu.h | |||
@@ -9,6 +9,11 @@ extern void pci_iommu_shutdown(void); | |||
9 | extern void no_iommu_init(void); | 9 | extern void no_iommu_init(void); |
10 | extern int force_iommu, no_iommu; | 10 | extern int force_iommu, no_iommu; |
11 | extern int iommu_detected; | 11 | extern int iommu_detected; |
12 | #ifdef CONFIG_DMAR | ||
13 | extern int iommu_pass_through; | ||
14 | #else | ||
15 | #define iommu_pass_through (0) | ||
16 | #endif | ||
12 | extern void iommu_dma_init(void); | 17 | extern void iommu_dma_init(void); |
13 | extern void machvec_init(const char *name); | 18 | extern void machvec_init(const char *name); |
14 | 19 | ||
diff --git a/arch/ia64/include/asm/mca.h b/arch/ia64/include/asm/mca.h index 18a4321349a3..44a0b53df900 100644 --- a/arch/ia64/include/asm/mca.h +++ b/arch/ia64/include/asm/mca.h | |||
@@ -72,39 +72,39 @@ typedef struct ia64_mc_info_s { | |||
72 | struct ia64_sal_os_state { | 72 | struct ia64_sal_os_state { |
73 | 73 | ||
74 | /* SAL to OS */ | 74 | /* SAL to OS */ |
75 | u64 os_gp; /* GP of the os registered with the SAL, physical */ | 75 | unsigned long os_gp; /* GP of the os registered with the SAL, physical */ |
76 | u64 pal_proc; /* PAL_PROC entry point, physical */ | 76 | unsigned long pal_proc; /* PAL_PROC entry point, physical */ |
77 | u64 sal_proc; /* SAL_PROC entry point, physical */ | 77 | unsigned long sal_proc; /* SAL_PROC entry point, physical */ |
78 | u64 rv_rc; /* MCA - Rendezvous state, INIT - reason code */ | 78 | unsigned long rv_rc; /* MCA - Rendezvous state, INIT - reason code */ |
79 | u64 proc_state_param; /* from R18 */ | 79 | unsigned long proc_state_param; /* from R18 */ |
80 | u64 monarch; /* 1 for a monarch event, 0 for a slave */ | 80 | unsigned long monarch; /* 1 for a monarch event, 0 for a slave */ |
81 | 81 | ||
82 | /* common */ | 82 | /* common */ |
83 | u64 sal_ra; /* Return address in SAL, physical */ | 83 | unsigned long sal_ra; /* Return address in SAL, physical */ |
84 | u64 sal_gp; /* GP of the SAL - physical */ | 84 | unsigned long sal_gp; /* GP of the SAL - physical */ |
85 | pal_min_state_area_t *pal_min_state; /* from R17. physical in asm, virtual in C */ | 85 | pal_min_state_area_t *pal_min_state; /* from R17. physical in asm, virtual in C */ |
86 | /* Previous values of IA64_KR(CURRENT) and IA64_KR(CURRENT_STACK). | 86 | /* Previous values of IA64_KR(CURRENT) and IA64_KR(CURRENT_STACK). |
87 | * Note: if the MCA/INIT recovery code wants to resume to a new context | 87 | * Note: if the MCA/INIT recovery code wants to resume to a new context |
88 | * then it must change these values to reflect the new kernel stack. | 88 | * then it must change these values to reflect the new kernel stack. |
89 | */ | 89 | */ |
90 | u64 prev_IA64_KR_CURRENT; /* previous value of IA64_KR(CURRENT) */ | 90 | unsigned long prev_IA64_KR_CURRENT; /* previous value of IA64_KR(CURRENT) */ |
91 | u64 prev_IA64_KR_CURRENT_STACK; | 91 | unsigned long prev_IA64_KR_CURRENT_STACK; |
92 | struct task_struct *prev_task; /* previous task, NULL if it is not useful */ | 92 | struct task_struct *prev_task; /* previous task, NULL if it is not useful */ |
93 | /* Some interrupt registers are not saved in minstate, pt_regs or | 93 | /* Some interrupt registers are not saved in minstate, pt_regs or |
94 | * switch_stack. Because MCA/INIT can occur when interrupts are | 94 | * switch_stack. Because MCA/INIT can occur when interrupts are |
95 | * disabled, we need to save the additional interrupt registers over | 95 | * disabled, we need to save the additional interrupt registers over |
96 | * MCA/INIT and resume. | 96 | * MCA/INIT and resume. |
97 | */ | 97 | */ |
98 | u64 isr; | 98 | unsigned long isr; |
99 | u64 ifa; | 99 | unsigned long ifa; |
100 | u64 itir; | 100 | unsigned long itir; |
101 | u64 iipa; | 101 | unsigned long iipa; |
102 | u64 iim; | 102 | unsigned long iim; |
103 | u64 iha; | 103 | unsigned long iha; |
104 | 104 | ||
105 | /* OS to SAL */ | 105 | /* OS to SAL */ |
106 | u64 os_status; /* OS status to SAL, enum below */ | 106 | unsigned long os_status; /* OS status to SAL, enum below */ |
107 | u64 context; /* 0 if return to same context | 107 | unsigned long context; /* 0 if return to same context |
108 | 1 if return to new context */ | 108 | 1 if return to new context */ |
109 | }; | 109 | }; |
110 | 110 | ||
@@ -150,7 +150,7 @@ extern void ia64_slave_init_handler(void); | |||
150 | extern void ia64_mca_cmc_vector_setup(void); | 150 | extern void ia64_mca_cmc_vector_setup(void); |
151 | extern int ia64_reg_MCA_extension(int (*fn)(void *, struct ia64_sal_os_state *)); | 151 | extern int ia64_reg_MCA_extension(int (*fn)(void *, struct ia64_sal_os_state *)); |
152 | extern void ia64_unreg_MCA_extension(void); | 152 | extern void ia64_unreg_MCA_extension(void); |
153 | extern u64 ia64_get_rnat(u64 *); | 153 | extern unsigned long ia64_get_rnat(unsigned long *); |
154 | extern void ia64_mca_printk(const char * fmt, ...) | 154 | extern void ia64_mca_printk(const char * fmt, ...) |
155 | __attribute__ ((format (printf, 1, 2))); | 155 | __attribute__ ((format (printf, 1, 2))); |
156 | 156 | ||
diff --git a/arch/ia64/include/asm/meminit.h b/arch/ia64/include/asm/meminit.h index c0cea375620a..688a812c017d 100644 --- a/arch/ia64/include/asm/meminit.h +++ b/arch/ia64/include/asm/meminit.h | |||
@@ -25,8 +25,8 @@ | |||
25 | #define IA64_MAX_RSVD_REGIONS 9 | 25 | #define IA64_MAX_RSVD_REGIONS 9 |
26 | 26 | ||
27 | struct rsvd_region { | 27 | struct rsvd_region { |
28 | unsigned long start; /* virtual address of beginning of element */ | 28 | u64 start; /* virtual address of beginning of element */ |
29 | unsigned long end; /* virtual address of end of element + 1 */ | 29 | u64 end; /* virtual address of end of element + 1 */ |
30 | }; | 30 | }; |
31 | 31 | ||
32 | extern struct rsvd_region rsvd_region[IA64_MAX_RSVD_REGIONS + 1]; | 32 | extern struct rsvd_region rsvd_region[IA64_MAX_RSVD_REGIONS + 1]; |
@@ -35,13 +35,13 @@ extern int num_rsvd_regions; | |||
35 | extern void find_memory (void); | 35 | extern void find_memory (void); |
36 | extern void reserve_memory (void); | 36 | extern void reserve_memory (void); |
37 | extern void find_initrd (void); | 37 | extern void find_initrd (void); |
38 | extern int filter_rsvd_memory (unsigned long start, unsigned long end, void *arg); | 38 | extern int filter_rsvd_memory (u64 start, u64 end, void *arg); |
39 | extern int filter_memory (unsigned long start, unsigned long end, void *arg); | 39 | extern int filter_memory (u64 start, u64 end, void *arg); |
40 | extern unsigned long efi_memmap_init(unsigned long *s, unsigned long *e); | 40 | extern unsigned long efi_memmap_init(u64 *s, u64 *e); |
41 | extern int find_max_min_low_pfn (unsigned long , unsigned long, void *); | 41 | extern int find_max_min_low_pfn (u64, u64, void *); |
42 | 42 | ||
43 | extern unsigned long vmcore_find_descriptor_size(unsigned long address); | 43 | extern unsigned long vmcore_find_descriptor_size(unsigned long address); |
44 | extern int reserve_elfcorehdr(unsigned long *start, unsigned long *end); | 44 | extern int reserve_elfcorehdr(u64 *start, u64 *end); |
45 | 45 | ||
46 | /* | 46 | /* |
47 | * For rounding an address to the next IA64_GRANULE_SIZE or order | 47 | * For rounding an address to the next IA64_GRANULE_SIZE or order |
@@ -63,8 +63,8 @@ extern int register_active_ranges(u64 start, u64 len, int nid); | |||
63 | # define LARGE_GAP 0x40000000 /* Use virtual mem map if hole is > than this */ | 63 | # define LARGE_GAP 0x40000000 /* Use virtual mem map if hole is > than this */ |
64 | extern unsigned long vmalloc_end; | 64 | extern unsigned long vmalloc_end; |
65 | extern struct page *vmem_map; | 65 | extern struct page *vmem_map; |
66 | extern int find_largest_hole (u64 start, u64 end, void *arg); | 66 | extern int find_largest_hole(u64 start, u64 end, void *arg); |
67 | extern int create_mem_map_page_table (u64 start, u64 end, void *arg); | 67 | extern int create_mem_map_page_table(u64 start, u64 end, void *arg); |
68 | extern int vmemmap_find_next_valid_pfn(int, int); | 68 | extern int vmemmap_find_next_valid_pfn(int, int); |
69 | #else | 69 | #else |
70 | static inline int vmemmap_find_next_valid_pfn(int node, int i) | 70 | static inline int vmemmap_find_next_valid_pfn(int node, int i) |
diff --git a/arch/ia64/include/asm/pal.h b/arch/ia64/include/asm/pal.h index 67b02901ead4..6a292505b396 100644 --- a/arch/ia64/include/asm/pal.h +++ b/arch/ia64/include/asm/pal.h | |||
@@ -989,8 +989,8 @@ ia64_pal_cache_read (pal_cache_line_id_u_t line_id, u64 physical_addr) | |||
989 | } | 989 | } |
990 | 990 | ||
991 | /* Return summary information about the hierarchy of caches controlled by the processor */ | 991 | /* Return summary information about the hierarchy of caches controlled by the processor */ |
992 | static inline s64 | 992 | static inline long ia64_pal_cache_summary(unsigned long *cache_levels, |
993 | ia64_pal_cache_summary (u64 *cache_levels, u64 *unique_caches) | 993 | unsigned long *unique_caches) |
994 | { | 994 | { |
995 | struct ia64_pal_retval iprv; | 995 | struct ia64_pal_retval iprv; |
996 | PAL_CALL(iprv, PAL_CACHE_SUMMARY, 0, 0, 0); | 996 | PAL_CALL(iprv, PAL_CACHE_SUMMARY, 0, 0, 0); |
@@ -1038,8 +1038,8 @@ ia64_pal_copy_pal (u64 target_addr, u64 alloc_size, u64 processor, u64 *pal_proc | |||
1038 | } | 1038 | } |
1039 | 1039 | ||
1040 | /* Return the number of instruction and data debug register pairs */ | 1040 | /* Return the number of instruction and data debug register pairs */ |
1041 | static inline s64 | 1041 | static inline long ia64_pal_debug_info(unsigned long *inst_regs, |
1042 | ia64_pal_debug_info (u64 *inst_regs, u64 *data_regs) | 1042 | unsigned long *data_regs) |
1043 | { | 1043 | { |
1044 | struct ia64_pal_retval iprv; | 1044 | struct ia64_pal_retval iprv; |
1045 | PAL_CALL(iprv, PAL_DEBUG_INFO, 0, 0, 0); | 1045 | PAL_CALL(iprv, PAL_DEBUG_INFO, 0, 0, 0); |
@@ -1074,8 +1074,7 @@ ia64_pal_fixed_addr (u64 *global_unique_addr) | |||
1074 | } | 1074 | } |
1075 | 1075 | ||
1076 | /* Get base frequency of the platform if generated by the processor */ | 1076 | /* Get base frequency of the platform if generated by the processor */ |
1077 | static inline s64 | 1077 | static inline long ia64_pal_freq_base(unsigned long *platform_base_freq) |
1078 | ia64_pal_freq_base (u64 *platform_base_freq) | ||
1079 | { | 1078 | { |
1080 | struct ia64_pal_retval iprv; | 1079 | struct ia64_pal_retval iprv; |
1081 | PAL_CALL(iprv, PAL_FREQ_BASE, 0, 0, 0); | 1080 | PAL_CALL(iprv, PAL_FREQ_BASE, 0, 0, 0); |
@@ -1437,7 +1436,7 @@ ia64_pal_proc_set_features (u64 feature_select) | |||
1437 | * possible. | 1436 | * possible. |
1438 | */ | 1437 | */ |
1439 | typedef struct ia64_ptce_info_s { | 1438 | typedef struct ia64_ptce_info_s { |
1440 | u64 base; | 1439 | unsigned long base; |
1441 | u32 count[2]; | 1440 | u32 count[2]; |
1442 | u32 stride[2]; | 1441 | u32 stride[2]; |
1443 | } ia64_ptce_info_t; | 1442 | } ia64_ptce_info_t; |
@@ -1478,9 +1477,9 @@ ia64_pal_register_info (u64 info_request, u64 *reg_info_1, u64 *reg_info_2) | |||
1478 | } | 1477 | } |
1479 | 1478 | ||
1480 | typedef union pal_hints_u { | 1479 | typedef union pal_hints_u { |
1481 | u64 ph_data; | 1480 | unsigned long ph_data; |
1482 | struct { | 1481 | struct { |
1483 | u64 si : 1, | 1482 | unsigned long si : 1, |
1484 | li : 1, | 1483 | li : 1, |
1485 | reserved : 62; | 1484 | reserved : 62; |
1486 | } pal_hints_s; | 1485 | } pal_hints_s; |
@@ -1489,8 +1488,8 @@ typedef union pal_hints_u { | |||
1489 | /* Return information about the register stack and RSE for this processor | 1488 | /* Return information about the register stack and RSE for this processor |
1490 | * implementation. | 1489 | * implementation. |
1491 | */ | 1490 | */ |
1492 | static inline s64 | 1491 | static inline long ia64_pal_rse_info(unsigned long *num_phys_stacked, |
1493 | ia64_pal_rse_info (u64 *num_phys_stacked, pal_hints_u_t *hints) | 1492 | pal_hints_u_t *hints) |
1494 | { | 1493 | { |
1495 | struct ia64_pal_retval iprv; | 1494 | struct ia64_pal_retval iprv; |
1496 | PAL_CALL(iprv, PAL_RSE_INFO, 0, 0, 0); | 1495 | PAL_CALL(iprv, PAL_RSE_INFO, 0, 0, 0); |
@@ -1608,8 +1607,7 @@ ia64_pal_vm_info (u64 tc_level, u64 tc_type, pal_tc_info_u_t *tc_info, u64 *tc_ | |||
1608 | /* Get page size information about the virtual memory characteristics of the processor | 1607 | /* Get page size information about the virtual memory characteristics of the processor |
1609 | * implementation. | 1608 | * implementation. |
1610 | */ | 1609 | */ |
1611 | static inline s64 | 1610 | static inline s64 ia64_pal_vm_page_size(u64 *tr_pages, u64 *vw_pages) |
1612 | ia64_pal_vm_page_size (u64 *tr_pages, u64 *vw_pages) | ||
1613 | { | 1611 | { |
1614 | struct ia64_pal_retval iprv; | 1612 | struct ia64_pal_retval iprv; |
1615 | PAL_CALL(iprv, PAL_VM_PAGE_SIZE, 0, 0, 0); | 1613 | PAL_CALL(iprv, PAL_VM_PAGE_SIZE, 0, 0, 0); |
diff --git a/arch/ia64/include/asm/pci.h b/arch/ia64/include/asm/pci.h index 1d660d89db0d..fcfca56bb850 100644 --- a/arch/ia64/include/asm/pci.h +++ b/arch/ia64/include/asm/pci.h | |||
@@ -135,19 +135,6 @@ extern void pcibios_resource_to_bus(struct pci_dev *dev, | |||
135 | extern void pcibios_bus_to_resource(struct pci_dev *dev, | 135 | extern void pcibios_bus_to_resource(struct pci_dev *dev, |
136 | struct resource *res, struct pci_bus_region *region); | 136 | struct resource *res, struct pci_bus_region *region); |
137 | 137 | ||
138 | static inline struct resource * | ||
139 | pcibios_select_root(struct pci_dev *pdev, struct resource *res) | ||
140 | { | ||
141 | struct resource *root = NULL; | ||
142 | |||
143 | if (res->flags & IORESOURCE_IO) | ||
144 | root = &ioport_resource; | ||
145 | if (res->flags & IORESOURCE_MEM) | ||
146 | root = &iomem_resource; | ||
147 | |||
148 | return root; | ||
149 | } | ||
150 | |||
151 | #define pcibios_scan_all_fns(a, b) 0 | 138 | #define pcibios_scan_all_fns(a, b) 0 |
152 | 139 | ||
153 | #define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ | 140 | #define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ |
diff --git a/arch/ia64/include/asm/pgalloc.h b/arch/ia64/include/asm/pgalloc.h index b9ac1a6fc216..96a8d927db28 100644 --- a/arch/ia64/include/asm/pgalloc.h +++ b/arch/ia64/include/asm/pgalloc.h | |||
@@ -48,7 +48,7 @@ static inline void pud_free(struct mm_struct *mm, pud_t *pud) | |||
48 | { | 48 | { |
49 | quicklist_free(0, NULL, pud); | 49 | quicklist_free(0, NULL, pud); |
50 | } | 50 | } |
51 | #define __pud_free_tlb(tlb, pud) pud_free((tlb)->mm, pud) | 51 | #define __pud_free_tlb(tlb, pud, address) pud_free((tlb)->mm, pud) |
52 | #endif /* CONFIG_PGTABLE_4 */ | 52 | #endif /* CONFIG_PGTABLE_4 */ |
53 | 53 | ||
54 | static inline void | 54 | static inline void |
@@ -67,7 +67,7 @@ static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) | |||
67 | quicklist_free(0, NULL, pmd); | 67 | quicklist_free(0, NULL, pmd); |
68 | } | 68 | } |
69 | 69 | ||
70 | #define __pmd_free_tlb(tlb, pmd) pmd_free((tlb)->mm, pmd) | 70 | #define __pmd_free_tlb(tlb, pmd, address) pmd_free((tlb)->mm, pmd) |
71 | 71 | ||
72 | static inline void | 72 | static inline void |
73 | pmd_populate(struct mm_struct *mm, pmd_t * pmd_entry, pgtable_t pte) | 73 | pmd_populate(struct mm_struct *mm, pmd_t * pmd_entry, pgtable_t pte) |
@@ -117,6 +117,6 @@ static inline void check_pgt_cache(void) | |||
117 | quicklist_trim(0, NULL, 25, 16); | 117 | quicklist_trim(0, NULL, 25, 16); |
118 | } | 118 | } |
119 | 119 | ||
120 | #define __pte_free_tlb(tlb, pte) pte_free((tlb)->mm, pte) | 120 | #define __pte_free_tlb(tlb, pte, address) pte_free((tlb)->mm, pte) |
121 | 121 | ||
122 | #endif /* _ASM_IA64_PGALLOC_H */ | 122 | #endif /* _ASM_IA64_PGALLOC_H */ |
diff --git a/arch/ia64/include/asm/pgtable.h b/arch/ia64/include/asm/pgtable.h index 0a9cc73d35c7..8840a690d1e7 100644 --- a/arch/ia64/include/asm/pgtable.h +++ b/arch/ia64/include/asm/pgtable.h | |||
@@ -155,7 +155,6 @@ | |||
155 | #include <linux/bitops.h> | 155 | #include <linux/bitops.h> |
156 | #include <asm/cacheflush.h> | 156 | #include <asm/cacheflush.h> |
157 | #include <asm/mmu_context.h> | 157 | #include <asm/mmu_context.h> |
158 | #include <asm/processor.h> | ||
159 | 158 | ||
160 | /* | 159 | /* |
161 | * Next come the mappings that determine how mmap() protection bits | 160 | * Next come the mappings that determine how mmap() protection bits |
diff --git a/arch/ia64/include/asm/processor.h b/arch/ia64/include/asm/processor.h index f88fa054d01d..3eaeedf1aef2 100644 --- a/arch/ia64/include/asm/processor.h +++ b/arch/ia64/include/asm/processor.h | |||
@@ -187,40 +187,40 @@ union ia64_rr { | |||
187 | * state comes earlier: | 187 | * state comes earlier: |
188 | */ | 188 | */ |
189 | struct cpuinfo_ia64 { | 189 | struct cpuinfo_ia64 { |
190 | __u32 softirq_pending; | 190 | unsigned int softirq_pending; |
191 | __u64 itm_delta; /* # of clock cycles between clock ticks */ | 191 | unsigned long itm_delta; /* # of clock cycles between clock ticks */ |
192 | __u64 itm_next; /* interval timer mask value to use for next clock tick */ | 192 | unsigned long itm_next; /* interval timer mask value to use for next clock tick */ |
193 | __u64 nsec_per_cyc; /* (1000000000<<IA64_NSEC_PER_CYC_SHIFT)/itc_freq */ | 193 | unsigned long nsec_per_cyc; /* (1000000000<<IA64_NSEC_PER_CYC_SHIFT)/itc_freq */ |
194 | __u64 unimpl_va_mask; /* mask of unimplemented virtual address bits (from PAL) */ | 194 | unsigned long unimpl_va_mask; /* mask of unimplemented virtual address bits (from PAL) */ |
195 | __u64 unimpl_pa_mask; /* mask of unimplemented physical address bits (from PAL) */ | 195 | unsigned long unimpl_pa_mask; /* mask of unimplemented physical address bits (from PAL) */ |
196 | __u64 itc_freq; /* frequency of ITC counter */ | 196 | unsigned long itc_freq; /* frequency of ITC counter */ |
197 | __u64 proc_freq; /* frequency of processor */ | 197 | unsigned long proc_freq; /* frequency of processor */ |
198 | __u64 cyc_per_usec; /* itc_freq/1000000 */ | 198 | unsigned long cyc_per_usec; /* itc_freq/1000000 */ |
199 | __u64 ptce_base; | 199 | unsigned long ptce_base; |
200 | __u32 ptce_count[2]; | 200 | unsigned int ptce_count[2]; |
201 | __u32 ptce_stride[2]; | 201 | unsigned int ptce_stride[2]; |
202 | struct task_struct *ksoftirqd; /* kernel softirq daemon for this CPU */ | 202 | struct task_struct *ksoftirqd; /* kernel softirq daemon for this CPU */ |
203 | 203 | ||
204 | #ifdef CONFIG_SMP | 204 | #ifdef CONFIG_SMP |
205 | __u64 loops_per_jiffy; | 205 | unsigned long loops_per_jiffy; |
206 | int cpu; | 206 | int cpu; |
207 | __u32 socket_id; /* physical processor socket id */ | 207 | unsigned int socket_id; /* physical processor socket id */ |
208 | __u16 core_id; /* core id */ | 208 | unsigned short core_id; /* core id */ |
209 | __u16 thread_id; /* thread id */ | 209 | unsigned short thread_id; /* thread id */ |
210 | __u16 num_log; /* Total number of logical processors on | 210 | unsigned short num_log; /* Total number of logical processors on |
211 | * this socket that were successfully booted */ | 211 | * this socket that were successfully booted */ |
212 | __u8 cores_per_socket; /* Cores per processor socket */ | 212 | unsigned char cores_per_socket; /* Cores per processor socket */ |
213 | __u8 threads_per_core; /* Threads per core */ | 213 | unsigned char threads_per_core; /* Threads per core */ |
214 | #endif | 214 | #endif |
215 | 215 | ||
216 | /* CPUID-derived information: */ | 216 | /* CPUID-derived information: */ |
217 | __u64 ppn; | 217 | unsigned long ppn; |
218 | __u64 features; | 218 | unsigned long features; |
219 | __u8 number; | 219 | unsigned char number; |
220 | __u8 revision; | 220 | unsigned char revision; |
221 | __u8 model; | 221 | unsigned char model; |
222 | __u8 family; | 222 | unsigned char family; |
223 | __u8 archrev; | 223 | unsigned char archrev; |
224 | char vendor[16]; | 224 | char vendor[16]; |
225 | char *model_name; | 225 | char *model_name; |
226 | 226 | ||
@@ -329,8 +329,8 @@ struct thread_struct { | |||
329 | #else | 329 | #else |
330 | # define INIT_THREAD_PM | 330 | # define INIT_THREAD_PM |
331 | #endif | 331 | #endif |
332 | __u64 dbr[IA64_NUM_DBG_REGS]; | 332 | unsigned long dbr[IA64_NUM_DBG_REGS]; |
333 | __u64 ibr[IA64_NUM_DBG_REGS]; | 333 | unsigned long ibr[IA64_NUM_DBG_REGS]; |
334 | struct ia64_fpreg fph[96]; /* saved/loaded on demand */ | 334 | struct ia64_fpreg fph[96]; /* saved/loaded on demand */ |
335 | }; | 335 | }; |
336 | 336 | ||
diff --git a/arch/ia64/include/asm/sal.h b/arch/ia64/include/asm/sal.h index 966797a97c94..d19ddba4e327 100644 --- a/arch/ia64/include/asm/sal.h +++ b/arch/ia64/include/asm/sal.h | |||
@@ -106,10 +106,10 @@ struct ia64_sal_retval { | |||
106 | * informational value should be printed (e.g., "reboot for | 106 | * informational value should be printed (e.g., "reboot for |
107 | * change to take effect"). | 107 | * change to take effect"). |
108 | */ | 108 | */ |
109 | s64 status; | 109 | long status; |
110 | u64 v0; | 110 | unsigned long v0; |
111 | u64 v1; | 111 | unsigned long v1; |
112 | u64 v2; | 112 | unsigned long v2; |
113 | }; | 113 | }; |
114 | 114 | ||
115 | typedef struct ia64_sal_retval (*ia64_sal_handler) (u64, ...); | 115 | typedef struct ia64_sal_retval (*ia64_sal_handler) (u64, ...); |
diff --git a/arch/ia64/include/asm/sn/sn_sal.h b/arch/ia64/include/asm/sn/sn_sal.h index e310fc0135dc..1f5ff470a5a1 100644 --- a/arch/ia64/include/asm/sn/sn_sal.h +++ b/arch/ia64/include/asm/sn/sn_sal.h | |||
@@ -929,7 +929,7 @@ ia64_sn_sysctl_tio_clock_reset(nasid_t nasid) | |||
929 | /* | 929 | /* |
930 | * Get the associated ioboard type for a given nasid. | 930 | * Get the associated ioboard type for a given nasid. |
931 | */ | 931 | */ |
932 | static inline s64 | 932 | static inline long |
933 | ia64_sn_sysctl_ioboard_get(nasid_t nasid, u16 *ioboard) | 933 | ia64_sn_sysctl_ioboard_get(nasid_t nasid, u16 *ioboard) |
934 | { | 934 | { |
935 | struct ia64_sal_retval isrv; | 935 | struct ia64_sal_retval isrv; |
diff --git a/arch/ia64/include/asm/thread_info.h b/arch/ia64/include/asm/thread_info.h index ae6922626bf4..8ce2e388e37c 100644 --- a/arch/ia64/include/asm/thread_info.h +++ b/arch/ia64/include/asm/thread_info.h | |||
@@ -48,7 +48,7 @@ struct thread_info { | |||
48 | .flags = 0, \ | 48 | .flags = 0, \ |
49 | .cpu = 0, \ | 49 | .cpu = 0, \ |
50 | .addr_limit = KERNEL_DS, \ | 50 | .addr_limit = KERNEL_DS, \ |
51 | .preempt_count = 0, \ | 51 | .preempt_count = INIT_PREEMPT_COUNT, \ |
52 | .restart_block = { \ | 52 | .restart_block = { \ |
53 | .fn = do_no_restart_syscall, \ | 53 | .fn = do_no_restart_syscall, \ |
54 | }, \ | 54 | }, \ |
diff --git a/arch/ia64/include/asm/tlb.h b/arch/ia64/include/asm/tlb.h index 20d8a39680c2..85d965cb19a0 100644 --- a/arch/ia64/include/asm/tlb.h +++ b/arch/ia64/include/asm/tlb.h | |||
@@ -236,22 +236,22 @@ do { \ | |||
236 | __tlb_remove_tlb_entry(tlb, ptep, addr); \ | 236 | __tlb_remove_tlb_entry(tlb, ptep, addr); \ |
237 | } while (0) | 237 | } while (0) |
238 | 238 | ||
239 | #define pte_free_tlb(tlb, ptep) \ | 239 | #define pte_free_tlb(tlb, ptep, address) \ |
240 | do { \ | 240 | do { \ |
241 | tlb->need_flush = 1; \ | 241 | tlb->need_flush = 1; \ |
242 | __pte_free_tlb(tlb, ptep); \ | 242 | __pte_free_tlb(tlb, ptep, address); \ |
243 | } while (0) | 243 | } while (0) |
244 | 244 | ||
245 | #define pmd_free_tlb(tlb, ptep) \ | 245 | #define pmd_free_tlb(tlb, ptep, address) \ |
246 | do { \ | 246 | do { \ |
247 | tlb->need_flush = 1; \ | 247 | tlb->need_flush = 1; \ |
248 | __pmd_free_tlb(tlb, ptep); \ | 248 | __pmd_free_tlb(tlb, ptep, address); \ |
249 | } while (0) | 249 | } while (0) |
250 | 250 | ||
251 | #define pud_free_tlb(tlb, pudp) \ | 251 | #define pud_free_tlb(tlb, pudp, address) \ |
252 | do { \ | 252 | do { \ |
253 | tlb->need_flush = 1; \ | 253 | tlb->need_flush = 1; \ |
254 | __pud_free_tlb(tlb, pudp); \ | 254 | __pud_free_tlb(tlb, pudp, address); \ |
255 | } while (0) | 255 | } while (0) |
256 | 256 | ||
257 | #endif /* _ASM_IA64_TLB_H */ | 257 | #endif /* _ASM_IA64_TLB_H */ |
diff --git a/arch/ia64/include/asm/types.h b/arch/ia64/include/asm/types.h index fbf1ed3b44ce..bcd260e597de 100644 --- a/arch/ia64/include/asm/types.h +++ b/arch/ia64/include/asm/types.h | |||
@@ -2,10 +2,11 @@ | |||
2 | #define _ASM_IA64_TYPES_H | 2 | #define _ASM_IA64_TYPES_H |
3 | 3 | ||
4 | /* | 4 | /* |
5 | * This file is never included by application software unless explicitly requested (e.g., | 5 | * This file is never included by application software unless explicitly |
6 | * via linux/types.h) in which case the application is Linux specific so (user-) name | 6 | * requested (e.g., via linux/types.h) in which case the application is |
7 | * space pollution is not a major issue. However, for interoperability, libraries still | 7 | * Linux specific so (user-) name space pollution is not a major issue. |
8 | * need to be careful to avoid a name clashes. | 8 | * However, for interoperability, libraries still need to be careful to |
9 | * avoid naming clashes. | ||
9 | * | 10 | * |
10 | * Based on <asm-alpha/types.h>. | 11 | * Based on <asm-alpha/types.h>. |
11 | * | 12 | * |
@@ -13,7 +14,11 @@ | |||
13 | * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co | 14 | * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co |
14 | */ | 15 | */ |
15 | 16 | ||
17 | #ifdef __KERNEL__ | ||
18 | #include <asm-generic/int-ll64.h> | ||
19 | #else | ||
16 | #include <asm-generic/int-l64.h> | 20 | #include <asm-generic/int-l64.h> |
21 | #endif | ||
17 | 22 | ||
18 | #ifdef __ASSEMBLY__ | 23 | #ifdef __ASSEMBLY__ |
19 | # define __IA64_UL(x) (x) | 24 | # define __IA64_UL(x) (x) |
diff --git a/arch/ia64/include/asm/unistd.h b/arch/ia64/include/asm/unistd.h index 10a9eb05f74d..5a5347f5c4e4 100644 --- a/arch/ia64/include/asm/unistd.h +++ b/arch/ia64/include/asm/unistd.h | |||
@@ -310,11 +310,12 @@ | |||
310 | #define __NR_inotify_init1 1318 | 310 | #define __NR_inotify_init1 1318 |
311 | #define __NR_preadv 1319 | 311 | #define __NR_preadv 1319 |
312 | #define __NR_pwritev 1320 | 312 | #define __NR_pwritev 1320 |
313 | #define __NR_rt_tgsigqueueinfo 1321 | ||
313 | 314 | ||
314 | #ifdef __KERNEL__ | 315 | #ifdef __KERNEL__ |
315 | 316 | ||
316 | 317 | ||
317 | #define NR_syscalls 297 /* length of syscall table */ | 318 | #define NR_syscalls 298 /* length of syscall table */ |
318 | 319 | ||
319 | /* | 320 | /* |
320 | * The following defines stop scripts/checksyscalls.sh from complaining about | 321 | * The following defines stop scripts/checksyscalls.sh from complaining about |
@@ -328,6 +329,7 @@ | |||
328 | #define __IGNORE_utime /* utimes() */ | 329 | #define __IGNORE_utime /* utimes() */ |
329 | #define __IGNORE_getpgrp /* getpgid() */ | 330 | #define __IGNORE_getpgrp /* getpgid() */ |
330 | #define __IGNORE_vfork /* clone() */ | 331 | #define __IGNORE_vfork /* clone() */ |
332 | #define __IGNORE_umount2 /* umount() */ | ||
331 | 333 | ||
332 | #define __ARCH_WANT_SYS_RT_SIGACTION | 334 | #define __ARCH_WANT_SYS_RT_SIGACTION |
333 | #define __ARCH_WANT_SYS_RT_SIGSUSPEND | 335 | #define __ARCH_WANT_SYS_RT_SIGSUSPEND |
diff --git a/arch/ia64/include/asm/xen/hypervisor.h b/arch/ia64/include/asm/xen/hypervisor.h index e425227a418e..88afb54501e4 100644 --- a/arch/ia64/include/asm/xen/hypervisor.h +++ b/arch/ia64/include/asm/xen/hypervisor.h | |||
@@ -33,6 +33,7 @@ | |||
33 | #ifndef _ASM_IA64_XEN_HYPERVISOR_H | 33 | #ifndef _ASM_IA64_XEN_HYPERVISOR_H |
34 | #define _ASM_IA64_XEN_HYPERVISOR_H | 34 | #define _ASM_IA64_XEN_HYPERVISOR_H |
35 | 35 | ||
36 | #include <linux/err.h> | ||
36 | #include <xen/interface/xen.h> | 37 | #include <xen/interface/xen.h> |
37 | #include <xen/interface/version.h> /* to compile feature.c */ | 38 | #include <xen/interface/version.h> /* to compile feature.c */ |
38 | #include <xen/features.h> /* to comiple xen-netfront.c */ | 39 | #include <xen/features.h> /* to comiple xen-netfront.c */ |