diff options
Diffstat (limited to 'arch/arm')
46 files changed, 155 insertions, 160 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index d6ebe39934b..dbfdf87f993 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -1325,6 +1325,8 @@ source "drivers/regulator/Kconfig" | |||
1325 | 1325 | ||
1326 | source "drivers/uio/Kconfig" | 1326 | source "drivers/uio/Kconfig" |
1327 | 1327 | ||
1328 | source "drivers/staging/Kconfig" | ||
1329 | |||
1328 | endmenu | 1330 | endmenu |
1329 | 1331 | ||
1330 | source "fs/Kconfig" | 1332 | source "fs/Kconfig" |
diff --git a/arch/arm/common/gic.c b/arch/arm/common/gic.c index 7fc9860a97d..c6884ba1d5e 100644 --- a/arch/arm/common/gic.c +++ b/arch/arm/common/gic.c | |||
@@ -109,11 +109,11 @@ static void gic_unmask_irq(unsigned int irq) | |||
109 | } | 109 | } |
110 | 110 | ||
111 | #ifdef CONFIG_SMP | 111 | #ifdef CONFIG_SMP |
112 | static void gic_set_cpu(unsigned int irq, cpumask_t mask_val) | 112 | static void gic_set_cpu(unsigned int irq, const struct cpumask *mask_val) |
113 | { | 113 | { |
114 | void __iomem *reg = gic_dist_base(irq) + GIC_DIST_TARGET + (gic_irq(irq) & ~3); | 114 | void __iomem *reg = gic_dist_base(irq) + GIC_DIST_TARGET + (gic_irq(irq) & ~3); |
115 | unsigned int shift = (irq % 4) * 8; | 115 | unsigned int shift = (irq % 4) * 8; |
116 | unsigned int cpu = first_cpu(mask_val); | 116 | unsigned int cpu = cpumask_first(mask_val); |
117 | u32 val; | 117 | u32 val; |
118 | 118 | ||
119 | spin_lock(&irq_controller_lock); | 119 | spin_lock(&irq_controller_lock); |
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild index 73237bd130a..43b0b2ba392 100644 --- a/arch/arm/include/asm/Kbuild +++ b/arch/arm/include/asm/Kbuild | |||
@@ -1,3 +1,4 @@ | |||
1 | include include/asm-generic/Kbuild.asm | 1 | include include/asm-generic/Kbuild.asm |
2 | 2 | ||
3 | unifdef-y += hwcap.h | 3 | unifdef-y += hwcap.h |
4 | unifdef-y += swab.h | ||
diff --git a/arch/arm/include/asm/atomic.h b/arch/arm/include/asm/atomic.h index 325f881ccb5..ee99723b3a6 100644 --- a/arch/arm/include/asm/atomic.h +++ b/arch/arm/include/asm/atomic.h | |||
@@ -12,10 +12,9 @@ | |||
12 | #define __ASM_ARM_ATOMIC_H | 12 | #define __ASM_ARM_ATOMIC_H |
13 | 13 | ||
14 | #include <linux/compiler.h> | 14 | #include <linux/compiler.h> |
15 | #include <linux/types.h> | ||
15 | #include <asm/system.h> | 16 | #include <asm/system.h> |
16 | 17 | ||
17 | typedef struct { volatile int counter; } atomic_t; | ||
18 | |||
19 | #define ATOMIC_INIT(i) { (i) } | 18 | #define ATOMIC_INIT(i) { (i) } |
20 | 19 | ||
21 | #ifdef __KERNEL__ | 20 | #ifdef __KERNEL__ |
diff --git a/arch/arm/include/asm/byteorder.h b/arch/arm/include/asm/byteorder.h index 4fbfb22f65a..c02b6fc28e1 100644 --- a/arch/arm/include/asm/byteorder.h +++ b/arch/arm/include/asm/byteorder.h | |||
@@ -15,38 +15,7 @@ | |||
15 | #ifndef __ASM_ARM_BYTEORDER_H | 15 | #ifndef __ASM_ARM_BYTEORDER_H |
16 | #define __ASM_ARM_BYTEORDER_H | 16 | #define __ASM_ARM_BYTEORDER_H |
17 | 17 | ||
18 | #include <linux/compiler.h> | 18 | #include <asm/swab.h> |
19 | #include <asm/types.h> | ||
20 | |||
21 | static inline __attribute_const__ __u32 ___arch__swab32(__u32 x) | ||
22 | { | ||
23 | __u32 t; | ||
24 | |||
25 | #ifndef __thumb__ | ||
26 | if (!__builtin_constant_p(x)) { | ||
27 | /* | ||
28 | * The compiler needs a bit of a hint here to always do the | ||
29 | * right thing and not screw it up to different degrees | ||
30 | * depending on the gcc version. | ||
31 | */ | ||
32 | asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x)); | ||
33 | } else | ||
34 | #endif | ||
35 | t = x ^ ((x << 16) | (x >> 16)); /* eor r1,r0,r0,ror #16 */ | ||
36 | |||
37 | x = (x << 24) | (x >> 8); /* mov r0,r0,ror #8 */ | ||
38 | t &= ~0x00FF0000; /* bic r1,r1,#0x00FF0000 */ | ||
39 | x ^= (t >> 8); /* eor r0,r0,r1,lsr #8 */ | ||
40 | |||
41 | return x; | ||
42 | } | ||
43 | |||
44 | #define __arch__swab32(x) ___arch__swab32(x) | ||
45 | |||
46 | #if !defined(__STRICT_ANSI__) || defined(__KERNEL__) | ||
47 | # define __BYTEORDER_HAS_U64__ | ||
48 | # define __SWAB_64_THRU_32__ | ||
49 | #endif | ||
50 | 19 | ||
51 | #ifdef __ARMEB__ | 20 | #ifdef __ARMEB__ |
52 | #include <linux/byteorder/big_endian.h> | 21 | #include <linux/byteorder/big_endian.h> |
diff --git a/arch/arm/include/asm/mach/pci.h b/arch/arm/include/asm/mach/pci.h index 32da1ae17e0..a38bdc7afa3 100644 --- a/arch/arm/include/asm/mach/pci.h +++ b/arch/arm/include/asm/mach/pci.h | |||
@@ -42,7 +42,7 @@ struct pci_sys_data { | |||
42 | /* | 42 | /* |
43 | * This is the standard PCI-PCI bridge swizzling algorithm. | 43 | * This is the standard PCI-PCI bridge swizzling algorithm. |
44 | */ | 44 | */ |
45 | u8 pci_std_swizzle(struct pci_dev *dev, u8 *pinp); | 45 | #define pci_std_swizzle pci_common_swizzle |
46 | 46 | ||
47 | /* | 47 | /* |
48 | * Call this with your hw_pci struct to initialise the PCI system. | 48 | * Call this with your hw_pci struct to initialise the PCI system. |
diff --git a/arch/arm/include/asm/swab.h b/arch/arm/include/asm/swab.h new file mode 100644 index 00000000000..27a689be085 --- /dev/null +++ b/arch/arm/include/asm/swab.h | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/byteorder.h | ||
3 | * | ||
4 | * ARM Endian-ness. In little endian mode, the data bus is connected such | ||
5 | * that byte accesses appear as: | ||
6 | * 0 = d0...d7, 1 = d8...d15, 2 = d16...d23, 3 = d24...d31 | ||
7 | * and word accesses (data or instruction) appear as: | ||
8 | * d0...d31 | ||
9 | * | ||
10 | * When in big endian mode, byte accesses appear as: | ||
11 | * 0 = d24...d31, 1 = d16...d23, 2 = d8...d15, 3 = d0...d7 | ||
12 | * and word accesses (data or instruction) appear as: | ||
13 | * d0...d31 | ||
14 | */ | ||
15 | #ifndef __ASM_ARM_SWAB_H | ||
16 | #define __ASM_ARM_SWAB_H | ||
17 | |||
18 | #include <linux/compiler.h> | ||
19 | #include <asm/types.h> | ||
20 | |||
21 | #if !defined(__STRICT_ANSI__) || defined(__KERNEL__) | ||
22 | # define __SWAB_64_THRU_32__ | ||
23 | #endif | ||
24 | |||
25 | static inline __attribute_const__ __u32 __arch_swab32(__u32 x) | ||
26 | { | ||
27 | __u32 t; | ||
28 | |||
29 | #ifndef __thumb__ | ||
30 | if (!__builtin_constant_p(x)) { | ||
31 | /* | ||
32 | * The compiler needs a bit of a hint here to always do the | ||
33 | * right thing and not screw it up to different degrees | ||
34 | * depending on the gcc version. | ||
35 | */ | ||
36 | asm ("eor\t%0, %1, %1, ror #16" : "=r" (t) : "r" (x)); | ||
37 | } else | ||
38 | #endif | ||
39 | t = x ^ ((x << 16) | (x >> 16)); /* eor r1,r0,r0,ror #16 */ | ||
40 | |||
41 | x = (x << 24) | (x >> 8); /* mov r0,r0,ror #8 */ | ||
42 | t &= ~0x00FF0000; /* bic r1,r1,#0x00FF0000 */ | ||
43 | x ^= (t >> 8); /* eor r0,r0,r1,lsr #8 */ | ||
44 | |||
45 | return x; | ||
46 | } | ||
47 | #define __arch_swab32 __arch_swab32 | ||
48 | |||
49 | #endif | ||
50 | |||
diff --git a/arch/arm/kernel/bios32.c b/arch/arm/kernel/bios32.c index 17a59b6e521..809681900ec 100644 --- a/arch/arm/kernel/bios32.c +++ b/arch/arm/kernel/bios32.c | |||
@@ -480,33 +480,6 @@ EXPORT_SYMBOL(pcibios_bus_to_resource); | |||
480 | #endif | 480 | #endif |
481 | 481 | ||
482 | /* | 482 | /* |
483 | * This is the standard PCI-PCI bridge swizzling algorithm: | ||
484 | * | ||
485 | * Dev: 0 1 2 3 | ||
486 | * A A B C D | ||
487 | * B B C D A | ||
488 | * C C D A B | ||
489 | * D D A B C | ||
490 | * ^^^^^^^^^^ irq pin on bridge | ||
491 | */ | ||
492 | u8 __devinit pci_std_swizzle(struct pci_dev *dev, u8 *pinp) | ||
493 | { | ||
494 | int pin = *pinp - 1; | ||
495 | |||
496 | while (dev->bus->self) { | ||
497 | pin = (pin + PCI_SLOT(dev->devfn)) & 3; | ||
498 | /* | ||
499 | * move up the chain of bridges, | ||
500 | * swizzling as we go. | ||
501 | */ | ||
502 | dev = dev->bus->self; | ||
503 | } | ||
504 | *pinp = pin + 1; | ||
505 | |||
506 | return PCI_SLOT(dev->devfn); | ||
507 | } | ||
508 | |||
509 | /* | ||
510 | * Swizzle the device pin each time we cross a bridge. | 483 | * Swizzle the device pin each time we cross a bridge. |
511 | * This might update pin and returns the slot number. | 484 | * This might update pin and returns the slot number. |
512 | */ | 485 | */ |
diff --git a/arch/arm/kernel/ecard.c b/arch/arm/kernel/ecard.c index 60c079d8535..eed2f795e1b 100644 --- a/arch/arm/kernel/ecard.c +++ b/arch/arm/kernel/ecard.c | |||
@@ -817,7 +817,7 @@ static struct expansion_card *__init ecard_alloc_card(int type, int slot) | |||
817 | ec->dma = NO_DMA; | 817 | ec->dma = NO_DMA; |
818 | ec->ops = &ecard_default_ops; | 818 | ec->ops = &ecard_default_ops; |
819 | 819 | ||
820 | snprintf(ec->dev.bus_id, sizeof(ec->dev.bus_id), "ecard%d", slot); | 820 | dev_set_name(&ec->dev, "ecard%d", slot); |
821 | ec->dev.parent = NULL; | 821 | ec->dev.parent = NULL; |
822 | ec->dev.bus = &ecard_bus_type; | 822 | ec->dev.bus = &ecard_bus_type; |
823 | ec->dev.dma_mask = &ec->dma_mask; | 823 | ec->dev.dma_mask = &ec->dma_mask; |
diff --git a/arch/arm/kernel/irq.c b/arch/arm/kernel/irq.c index 2f3eb795fa6..7141cee1fab 100644 --- a/arch/arm/kernel/irq.c +++ b/arch/arm/kernel/irq.c | |||
@@ -174,7 +174,7 @@ static void route_irq(struct irq_desc *desc, unsigned int irq, unsigned int cpu) | |||
174 | pr_debug("IRQ%u: moving from cpu%u to cpu%u\n", irq, desc->cpu, cpu); | 174 | pr_debug("IRQ%u: moving from cpu%u to cpu%u\n", irq, desc->cpu, cpu); |
175 | 175 | ||
176 | spin_lock_irq(&desc->lock); | 176 | spin_lock_irq(&desc->lock); |
177 | desc->chip->set_affinity(irq, cpumask_of_cpu(cpu)); | 177 | desc->chip->set_affinity(irq, cpumask_of(cpu)); |
178 | spin_unlock_irq(&desc->lock); | 178 | spin_unlock_irq(&desc->lock); |
179 | } | 179 | } |
180 | 180 | ||
diff --git a/arch/arm/kernel/kprobes.c b/arch/arm/kernel/kprobes.c index 3f9abe0e9af..f692efddd44 100644 --- a/arch/arm/kernel/kprobes.c +++ b/arch/arm/kernel/kprobes.c | |||
@@ -92,9 +92,7 @@ void __kprobes arch_disarm_kprobe(struct kprobe *p) | |||
92 | void __kprobes arch_remove_kprobe(struct kprobe *p) | 92 | void __kprobes arch_remove_kprobe(struct kprobe *p) |
93 | { | 93 | { |
94 | if (p->ainsn.insn) { | 94 | if (p->ainsn.insn) { |
95 | mutex_lock(&kprobe_mutex); | ||
96 | free_insn_slot(p->ainsn.insn, 0); | 95 | free_insn_slot(p->ainsn.insn, 0); |
97 | mutex_unlock(&kprobe_mutex); | ||
98 | p->ainsn.insn = NULL; | 96 | p->ainsn.insn = NULL; |
99 | } | 97 | } |
100 | } | 98 | } |
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c index 019237d2162..55fa7ff96a3 100644 --- a/arch/arm/kernel/smp.c +++ b/arch/arm/kernel/smp.c | |||
@@ -34,16 +34,6 @@ | |||
34 | #include <asm/ptrace.h> | 34 | #include <asm/ptrace.h> |
35 | 35 | ||
36 | /* | 36 | /* |
37 | * bitmask of present and online CPUs. | ||
38 | * The present bitmask indicates that the CPU is physically present. | ||
39 | * The online bitmask indicates that the CPU is up and running. | ||
40 | */ | ||
41 | cpumask_t cpu_possible_map; | ||
42 | EXPORT_SYMBOL(cpu_possible_map); | ||
43 | cpumask_t cpu_online_map; | ||
44 | EXPORT_SYMBOL(cpu_online_map); | ||
45 | |||
46 | /* | ||
47 | * as from 2.5, kernels no longer have an init_tasks structure | 37 | * as from 2.5, kernels no longer have an init_tasks structure |
48 | * so we need some other way of telling a new secondary core | 38 | * so we need some other way of telling a new secondary core |
49 | * where to place its SVC stack | 39 | * where to place its SVC stack |
diff --git a/arch/arm/mach-aaec2000/core.c b/arch/arm/mach-aaec2000/core.c index 50e13965dfe..b5c5fc6ba3a 100644 --- a/arch/arm/mach-aaec2000/core.c +++ b/arch/arm/mach-aaec2000/core.c | |||
@@ -212,7 +212,7 @@ static struct clcd_board clcd_plat_data = { | |||
212 | 212 | ||
213 | static struct amba_device clcd_device = { | 213 | static struct amba_device clcd_device = { |
214 | .dev = { | 214 | .dev = { |
215 | .bus_id = "mb:16", | 215 | .init_name = "mb:16", |
216 | .coherent_dma_mask = ~0, | 216 | .coherent_dma_mask = ~0, |
217 | .platform_data = &clcd_plat_data, | 217 | .platform_data = &clcd_plat_data, |
218 | }, | 218 | }, |
diff --git a/arch/arm/mach-at91/at91rm9200_time.c b/arch/arm/mach-at91/at91rm9200_time.c index d140eae53de..1ff1bda0a89 100644 --- a/arch/arm/mach-at91/at91rm9200_time.c +++ b/arch/arm/mach-at91/at91rm9200_time.c | |||
@@ -178,7 +178,6 @@ static struct clock_event_device clkevt = { | |||
178 | .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, | 178 | .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, |
179 | .shift = 32, | 179 | .shift = 32, |
180 | .rating = 150, | 180 | .rating = 150, |
181 | .cpumask = CPU_MASK_CPU0, | ||
182 | .set_next_event = clkevt32k_next_event, | 181 | .set_next_event = clkevt32k_next_event, |
183 | .set_mode = clkevt32k_mode, | 182 | .set_mode = clkevt32k_mode, |
184 | }; | 183 | }; |
@@ -206,7 +205,7 @@ void __init at91rm9200_timer_init(void) | |||
206 | clkevt.mult = div_sc(AT91_SLOW_CLOCK, NSEC_PER_SEC, clkevt.shift); | 205 | clkevt.mult = div_sc(AT91_SLOW_CLOCK, NSEC_PER_SEC, clkevt.shift); |
207 | clkevt.max_delta_ns = clockevent_delta2ns(AT91_ST_ALMV, &clkevt); | 206 | clkevt.max_delta_ns = clockevent_delta2ns(AT91_ST_ALMV, &clkevt); |
208 | clkevt.min_delta_ns = clockevent_delta2ns(2, &clkevt) + 1; | 207 | clkevt.min_delta_ns = clockevent_delta2ns(2, &clkevt) + 1; |
209 | clkevt.cpumask = cpumask_of_cpu(0); | 208 | clkevt.cpumask = cpumask_of(0); |
210 | clockevents_register_device(&clkevt); | 209 | clockevents_register_device(&clkevt); |
211 | 210 | ||
212 | /* register clocksource */ | 211 | /* register clocksource */ |
diff --git a/arch/arm/mach-at91/at91sam926x_time.c b/arch/arm/mach-at91/at91sam926x_time.c index 122fd77ed58..b63e1d5f1ba 100644 --- a/arch/arm/mach-at91/at91sam926x_time.c +++ b/arch/arm/mach-at91/at91sam926x_time.c | |||
@@ -91,7 +91,6 @@ static struct clock_event_device pit_clkevt = { | |||
91 | .features = CLOCK_EVT_FEAT_PERIODIC, | 91 | .features = CLOCK_EVT_FEAT_PERIODIC, |
92 | .shift = 32, | 92 | .shift = 32, |
93 | .rating = 100, | 93 | .rating = 100, |
94 | .cpumask = CPU_MASK_CPU0, | ||
95 | .set_mode = pit_clkevt_mode, | 94 | .set_mode = pit_clkevt_mode, |
96 | }; | 95 | }; |
97 | 96 | ||
@@ -173,6 +172,7 @@ static void __init at91sam926x_pit_init(void) | |||
173 | 172 | ||
174 | /* Set up and register clockevents */ | 173 | /* Set up and register clockevents */ |
175 | pit_clkevt.mult = div_sc(pit_rate, NSEC_PER_SEC, pit_clkevt.shift); | 174 | pit_clkevt.mult = div_sc(pit_rate, NSEC_PER_SEC, pit_clkevt.shift); |
175 | pit_clkevt.cpumask = cpumask_of(0); | ||
176 | clockevents_register_device(&pit_clkevt); | 176 | clockevents_register_device(&pit_clkevt); |
177 | } | 177 | } |
178 | 178 | ||
diff --git a/arch/arm/mach-davinci/time.c b/arch/arm/mach-davinci/time.c index 3b9a296b5c4..f8bcd29d17a 100644 --- a/arch/arm/mach-davinci/time.c +++ b/arch/arm/mach-davinci/time.c | |||
@@ -322,7 +322,7 @@ static void __init davinci_timer_init(void) | |||
322 | clockevent_davinci.min_delta_ns = | 322 | clockevent_davinci.min_delta_ns = |
323 | clockevent_delta2ns(1, &clockevent_davinci); | 323 | clockevent_delta2ns(1, &clockevent_davinci); |
324 | 324 | ||
325 | clockevent_davinci.cpumask = cpumask_of_cpu(0); | 325 | clockevent_davinci.cpumask = cpumask_of(0); |
326 | clockevents_register_device(&clockevent_davinci); | 326 | clockevents_register_device(&clockevent_davinci); |
327 | } | 327 | } |
328 | 328 | ||
diff --git a/arch/arm/mach-ep93xx/core.c b/arch/arm/mach-ep93xx/core.c index 4781f323703..6d9152de607 100644 --- a/arch/arm/mach-ep93xx/core.c +++ b/arch/arm/mach-ep93xx/core.c | |||
@@ -409,7 +409,7 @@ static struct amba_pl010_data ep93xx_uart_data = { | |||
409 | 409 | ||
410 | static struct amba_device uart1_device = { | 410 | static struct amba_device uart1_device = { |
411 | .dev = { | 411 | .dev = { |
412 | .bus_id = "apb:uart1", | 412 | .init_name = "apb:uart1", |
413 | .platform_data = &ep93xx_uart_data, | 413 | .platform_data = &ep93xx_uart_data, |
414 | }, | 414 | }, |
415 | .res = { | 415 | .res = { |
@@ -423,7 +423,7 @@ static struct amba_device uart1_device = { | |||
423 | 423 | ||
424 | static struct amba_device uart2_device = { | 424 | static struct amba_device uart2_device = { |
425 | .dev = { | 425 | .dev = { |
426 | .bus_id = "apb:uart2", | 426 | .init_name = "apb:uart2", |
427 | .platform_data = &ep93xx_uart_data, | 427 | .platform_data = &ep93xx_uart_data, |
428 | }, | 428 | }, |
429 | .res = { | 429 | .res = { |
@@ -437,7 +437,7 @@ static struct amba_device uart2_device = { | |||
437 | 437 | ||
438 | static struct amba_device uart3_device = { | 438 | static struct amba_device uart3_device = { |
439 | .dev = { | 439 | .dev = { |
440 | .bus_id = "apb:uart3", | 440 | .init_name = "apb:uart3", |
441 | .platform_data = &ep93xx_uart_data, | 441 | .platform_data = &ep93xx_uart_data, |
442 | }, | 442 | }, |
443 | .res = { | 443 | .res = { |
diff --git a/arch/arm/mach-imx/time.c b/arch/arm/mach-imx/time.c index a11765f5f23..aff0ebcfa84 100644 --- a/arch/arm/mach-imx/time.c +++ b/arch/arm/mach-imx/time.c | |||
@@ -184,7 +184,7 @@ static int __init imx_clockevent_init(unsigned long rate) | |||
184 | clockevent_imx.min_delta_ns = | 184 | clockevent_imx.min_delta_ns = |
185 | clockevent_delta2ns(0xf, &clockevent_imx); | 185 | clockevent_delta2ns(0xf, &clockevent_imx); |
186 | 186 | ||
187 | clockevent_imx.cpumask = cpumask_of_cpu(0); | 187 | clockevent_imx.cpumask = cpumask_of(0); |
188 | 188 | ||
189 | clockevents_register_device(&clockevent_imx); | 189 | clockevents_register_device(&clockevent_imx); |
190 | 190 | ||
diff --git a/arch/arm/mach-integrator/core.c b/arch/arm/mach-integrator/core.c index c89c949b4d4..6f887291307 100644 --- a/arch/arm/mach-integrator/core.c +++ b/arch/arm/mach-integrator/core.c | |||
@@ -37,7 +37,7 @@ static struct amba_pl010_data integrator_uart_data; | |||
37 | 37 | ||
38 | static struct amba_device rtc_device = { | 38 | static struct amba_device rtc_device = { |
39 | .dev = { | 39 | .dev = { |
40 | .bus_id = "mb:15", | 40 | .init_name = "mb:15", |
41 | }, | 41 | }, |
42 | .res = { | 42 | .res = { |
43 | .start = INTEGRATOR_RTC_BASE, | 43 | .start = INTEGRATOR_RTC_BASE, |
@@ -50,7 +50,7 @@ static struct amba_device rtc_device = { | |||
50 | 50 | ||
51 | static struct amba_device uart0_device = { | 51 | static struct amba_device uart0_device = { |
52 | .dev = { | 52 | .dev = { |
53 | .bus_id = "mb:16", | 53 | .init_name = "mb:16", |
54 | .platform_data = &integrator_uart_data, | 54 | .platform_data = &integrator_uart_data, |
55 | }, | 55 | }, |
56 | .res = { | 56 | .res = { |
@@ -64,7 +64,7 @@ static struct amba_device uart0_device = { | |||
64 | 64 | ||
65 | static struct amba_device uart1_device = { | 65 | static struct amba_device uart1_device = { |
66 | .dev = { | 66 | .dev = { |
67 | .bus_id = "mb:17", | 67 | .init_name = "mb:17", |
68 | .platform_data = &integrator_uart_data, | 68 | .platform_data = &integrator_uart_data, |
69 | }, | 69 | }, |
70 | .res = { | 70 | .res = { |
@@ -78,7 +78,7 @@ static struct amba_device uart1_device = { | |||
78 | 78 | ||
79 | static struct amba_device kmi0_device = { | 79 | static struct amba_device kmi0_device = { |
80 | .dev = { | 80 | .dev = { |
81 | .bus_id = "mb:18", | 81 | .init_name = "mb:18", |
82 | }, | 82 | }, |
83 | .res = { | 83 | .res = { |
84 | .start = KMI0_BASE, | 84 | .start = KMI0_BASE, |
@@ -91,7 +91,7 @@ static struct amba_device kmi0_device = { | |||
91 | 91 | ||
92 | static struct amba_device kmi1_device = { | 92 | static struct amba_device kmi1_device = { |
93 | .dev = { | 93 | .dev = { |
94 | .bus_id = "mb:19", | 94 | .init_name = "mb:19", |
95 | }, | 95 | }, |
96 | .res = { | 96 | .res = { |
97 | .start = KMI1_BASE, | 97 | .start = KMI1_BASE, |
diff --git a/arch/arm/mach-integrator/integrator_cp.c b/arch/arm/mach-integrator/integrator_cp.c index 427c2d8dc12..4ac04055c2e 100644 --- a/arch/arm/mach-integrator/integrator_cp.c +++ b/arch/arm/mach-integrator/integrator_cp.c | |||
@@ -407,7 +407,7 @@ static struct mmc_platform_data mmc_data = { | |||
407 | 407 | ||
408 | static struct amba_device mmc_device = { | 408 | static struct amba_device mmc_device = { |
409 | .dev = { | 409 | .dev = { |
410 | .bus_id = "mb:1c", | 410 | .init_name = "mb:1c", |
411 | .platform_data = &mmc_data, | 411 | .platform_data = &mmc_data, |
412 | }, | 412 | }, |
413 | .res = { | 413 | .res = { |
@@ -421,7 +421,7 @@ static struct amba_device mmc_device = { | |||
421 | 421 | ||
422 | static struct amba_device aaci_device = { | 422 | static struct amba_device aaci_device = { |
423 | .dev = { | 423 | .dev = { |
424 | .bus_id = "mb:1d", | 424 | .init_name = "mb:1d", |
425 | }, | 425 | }, |
426 | .res = { | 426 | .res = { |
427 | .start = INTCP_PA_AACI_BASE, | 427 | .start = INTCP_PA_AACI_BASE, |
@@ -532,7 +532,7 @@ static struct clcd_board clcd_data = { | |||
532 | 532 | ||
533 | static struct amba_device clcd_device = { | 533 | static struct amba_device clcd_device = { |
534 | .dev = { | 534 | .dev = { |
535 | .bus_id = "mb:c0", | 535 | .init_name = "mb:c0", |
536 | .coherent_dma_mask = ~0, | 536 | .coherent_dma_mask = ~0, |
537 | .platform_data = &clcd_data, | 537 | .platform_data = &clcd_data, |
538 | }, | 538 | }, |
diff --git a/arch/arm/mach-integrator/pci.c b/arch/arm/mach-integrator/pci.c index af7d3ff013e..2fdb95433f0 100644 --- a/arch/arm/mach-integrator/pci.c +++ b/arch/arm/mach-integrator/pci.c | |||
@@ -63,13 +63,7 @@ | |||
63 | * | 63 | * |
64 | * Where A = pin 1, B = pin 2 and so on and pin=0 = default = A. | 64 | * Where A = pin 1, B = pin 2 and so on and pin=0 = default = A. |
65 | * Thus, each swizzle is ((pin-1) + (device#-4)) % 4 | 65 | * Thus, each swizzle is ((pin-1) + (device#-4)) % 4 |
66 | * | ||
67 | * The following code swizzles for exactly one bridge. | ||
68 | */ | 66 | */ |
69 | static inline int bridge_swizzle(int pin, unsigned int slot) | ||
70 | { | ||
71 | return (pin + slot) & 3; | ||
72 | } | ||
73 | 67 | ||
74 | /* | 68 | /* |
75 | * This routine handles multiple bridges. | 69 | * This routine handles multiple bridges. |
@@ -81,15 +75,14 @@ static u8 __init integrator_swizzle(struct pci_dev *dev, u8 *pinp) | |||
81 | if (pin == 0) | 75 | if (pin == 0) |
82 | pin = 1; | 76 | pin = 1; |
83 | 77 | ||
84 | pin -= 1; | ||
85 | while (dev->bus->self) { | 78 | while (dev->bus->self) { |
86 | pin = bridge_swizzle(pin, PCI_SLOT(dev->devfn)); | 79 | pin = pci_swizzle_interrupt_pin(dev, pin); |
87 | /* | 80 | /* |
88 | * move up the chain of bridges, swizzling as we go. | 81 | * move up the chain of bridges, swizzling as we go. |
89 | */ | 82 | */ |
90 | dev = dev->bus->self; | 83 | dev = dev->bus->self; |
91 | } | 84 | } |
92 | *pinp = pin + 1; | 85 | *pinp = pin; |
93 | 86 | ||
94 | return PCI_SLOT(dev->devfn); | 87 | return PCI_SLOT(dev->devfn); |
95 | } | 88 | } |
diff --git a/arch/arm/mach-ixp4xx/common.c b/arch/arm/mach-ixp4xx/common.c index 7766f469456..f4656d2ac8a 100644 --- a/arch/arm/mach-ixp4xx/common.c +++ b/arch/arm/mach-ixp4xx/common.c | |||
@@ -487,7 +487,7 @@ static int __init ixp4xx_clockevent_init(void) | |||
487 | clockevent_delta2ns(0xfffffffe, &clockevent_ixp4xx); | 487 | clockevent_delta2ns(0xfffffffe, &clockevent_ixp4xx); |
488 | clockevent_ixp4xx.min_delta_ns = | 488 | clockevent_ixp4xx.min_delta_ns = |
489 | clockevent_delta2ns(0xf, &clockevent_ixp4xx); | 489 | clockevent_delta2ns(0xf, &clockevent_ixp4xx); |
490 | clockevent_ixp4xx.cpumask = cpumask_of_cpu(0); | 490 | clockevent_ixp4xx.cpumask = cpumask_of(0); |
491 | 491 | ||
492 | clockevents_register_device(&clockevent_ixp4xx); | 492 | clockevents_register_device(&clockevent_ixp4xx); |
493 | return 0; | 493 | return 0; |
diff --git a/arch/arm/mach-lh7a40x/clcd.c b/arch/arm/mach-lh7a40x/clcd.c index a2a543258fc..c472b9e8b37 100644 --- a/arch/arm/mach-lh7a40x/clcd.c +++ b/arch/arm/mach-lh7a40x/clcd.c | |||
@@ -207,7 +207,7 @@ static struct clcd_board clcd_platform_data = { | |||
207 | static struct amba_device name##_device = { \ | 207 | static struct amba_device name##_device = { \ |
208 | .dev = { \ | 208 | .dev = { \ |
209 | .coherent_dma_mask = ~0, \ | 209 | .coherent_dma_mask = ~0, \ |
210 | .bus_id = busid, \ | 210 | .init_name = busid, \ |
211 | .platform_data = plat, \ | 211 | .platform_data = plat, \ |
212 | }, \ | 212 | }, \ |
213 | .res = { \ | 213 | .res = { \ |
diff --git a/arch/arm/mach-msm/timer.c b/arch/arm/mach-msm/timer.c index 345a14cb73c..444d9c0f5ca 100644 --- a/arch/arm/mach-msm/timer.c +++ b/arch/arm/mach-msm/timer.c | |||
@@ -182,7 +182,7 @@ static void __init msm_timer_init(void) | |||
182 | clockevent_delta2ns(0xf0000000 >> clock->shift, ce); | 182 | clockevent_delta2ns(0xf0000000 >> clock->shift, ce); |
183 | /* 4 gets rounded down to 3 */ | 183 | /* 4 gets rounded down to 3 */ |
184 | ce->min_delta_ns = clockevent_delta2ns(4, ce); | 184 | ce->min_delta_ns = clockevent_delta2ns(4, ce); |
185 | ce->cpumask = cpumask_of_cpu(0); | 185 | ce->cpumask = cpumask_of(0); |
186 | 186 | ||
187 | cs->mult = clocksource_hz2mult(clock->freq, cs->shift); | 187 | cs->mult = clocksource_hz2mult(clock->freq, cs->shift); |
188 | res = clocksource_register(cs); | 188 | res = clocksource_register(cs); |
diff --git a/arch/arm/mach-netx/fb.c b/arch/arm/mach-netx/fb.c index 8f1f992f002..ea8fa8898fe 100644 --- a/arch/arm/mach-netx/fb.c +++ b/arch/arm/mach-netx/fb.c | |||
@@ -91,7 +91,7 @@ void clk_put(struct clk *clk) | |||
91 | 91 | ||
92 | static struct amba_device fb_device = { | 92 | static struct amba_device fb_device = { |
93 | .dev = { | 93 | .dev = { |
94 | .bus_id = "fb", | 94 | .init_name = "fb", |
95 | .coherent_dma_mask = ~0, | 95 | .coherent_dma_mask = ~0, |
96 | }, | 96 | }, |
97 | .res = { | 97 | .res = { |
diff --git a/arch/arm/mach-ns9xxx/time-ns9360.c b/arch/arm/mach-ns9xxx/time-ns9360.c index a63424d083d..41df6972176 100644 --- a/arch/arm/mach-ns9xxx/time-ns9360.c +++ b/arch/arm/mach-ns9xxx/time-ns9360.c | |||
@@ -173,7 +173,7 @@ static void __init ns9360_timer_init(void) | |||
173 | ns9360_clockevent_device.min_delta_ns = | 173 | ns9360_clockevent_device.min_delta_ns = |
174 | clockevent_delta2ns(1, &ns9360_clockevent_device); | 174 | clockevent_delta2ns(1, &ns9360_clockevent_device); |
175 | 175 | ||
176 | ns9360_clockevent_device.cpumask = cpumask_of_cpu(0); | 176 | ns9360_clockevent_device.cpumask = cpumask_of(0); |
177 | clockevents_register_device(&ns9360_clockevent_device); | 177 | clockevents_register_device(&ns9360_clockevent_device); |
178 | 178 | ||
179 | setup_irq(IRQ_NS9360_TIMER0 + TIMER_CLOCKEVENT, | 179 | setup_irq(IRQ_NS9360_TIMER0 + TIMER_CLOCKEVENT, |
diff --git a/arch/arm/mach-omap1/time.c b/arch/arm/mach-omap1/time.c index 2cf7e32bd29..495a32c287b 100644 --- a/arch/arm/mach-omap1/time.c +++ b/arch/arm/mach-omap1/time.c | |||
@@ -173,7 +173,7 @@ static __init void omap_init_mpu_timer(unsigned long rate) | |||
173 | clockevent_mpu_timer1.min_delta_ns = | 173 | clockevent_mpu_timer1.min_delta_ns = |
174 | clockevent_delta2ns(1, &clockevent_mpu_timer1); | 174 | clockevent_delta2ns(1, &clockevent_mpu_timer1); |
175 | 175 | ||
176 | clockevent_mpu_timer1.cpumask = cpumask_of_cpu(0); | 176 | clockevent_mpu_timer1.cpumask = cpumask_of(0); |
177 | clockevents_register_device(&clockevent_mpu_timer1); | 177 | clockevents_register_device(&clockevent_mpu_timer1); |
178 | } | 178 | } |
179 | 179 | ||
diff --git a/arch/arm/mach-omap1/timer32k.c b/arch/arm/mach-omap1/timer32k.c index 705367ece17..fd3f7396e16 100644 --- a/arch/arm/mach-omap1/timer32k.c +++ b/arch/arm/mach-omap1/timer32k.c | |||
@@ -187,7 +187,7 @@ static __init void omap_init_32k_timer(void) | |||
187 | clockevent_32k_timer.min_delta_ns = | 187 | clockevent_32k_timer.min_delta_ns = |
188 | clockevent_delta2ns(1, &clockevent_32k_timer); | 188 | clockevent_delta2ns(1, &clockevent_32k_timer); |
189 | 189 | ||
190 | clockevent_32k_timer.cpumask = cpumask_of_cpu(0); | 190 | clockevent_32k_timer.cpumask = cpumask_of(0); |
191 | clockevents_register_device(&clockevent_32k_timer); | 191 | clockevents_register_device(&clockevent_32k_timer); |
192 | } | 192 | } |
193 | 193 | ||
diff --git a/arch/arm/mach-omap2/clock24xx.h b/arch/arm/mach-omap2/clock24xx.h index ff6cd14d254..ad6d98d177c 100644 --- a/arch/arm/mach-omap2/clock24xx.h +++ b/arch/arm/mach-omap2/clock24xx.h | |||
@@ -2321,7 +2321,7 @@ static struct clk i2c2_fck = { | |||
2321 | }; | 2321 | }; |
2322 | 2322 | ||
2323 | static struct clk i2chs2_fck = { | 2323 | static struct clk i2chs2_fck = { |
2324 | .name = "i2chs_fck", | 2324 | .name = "i2c_fck", |
2325 | .id = 2, | 2325 | .id = 2, |
2326 | .parent = &func_96m_ck, | 2326 | .parent = &func_96m_ck, |
2327 | .flags = CLOCK_IN_OMAP243X, | 2327 | .flags = CLOCK_IN_OMAP243X, |
@@ -2354,7 +2354,7 @@ static struct clk i2c1_fck = { | |||
2354 | }; | 2354 | }; |
2355 | 2355 | ||
2356 | static struct clk i2chs1_fck = { | 2356 | static struct clk i2chs1_fck = { |
2357 | .name = "i2chs_fck", | 2357 | .name = "i2c_fck", |
2358 | .id = 1, | 2358 | .id = 1, |
2359 | .parent = &func_96m_ck, | 2359 | .parent = &func_96m_ck, |
2360 | .flags = CLOCK_IN_OMAP243X, | 2360 | .flags = CLOCK_IN_OMAP243X, |
diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c index 589393bedad..ae6036300f6 100644 --- a/arch/arm/mach-omap2/timer-gp.c +++ b/arch/arm/mach-omap2/timer-gp.c | |||
@@ -120,7 +120,7 @@ static void __init omap2_gp_clockevent_init(void) | |||
120 | clockevent_gpt.min_delta_ns = | 120 | clockevent_gpt.min_delta_ns = |
121 | clockevent_delta2ns(1, &clockevent_gpt); | 121 | clockevent_delta2ns(1, &clockevent_gpt); |
122 | 122 | ||
123 | clockevent_gpt.cpumask = cpumask_of_cpu(0); | 123 | clockevent_gpt.cpumask = cpumask_of(0); |
124 | clockevents_register_device(&clockevent_gpt); | 124 | clockevents_register_device(&clockevent_gpt); |
125 | } | 125 | } |
126 | 126 | ||
diff --git a/arch/arm/mach-pxa/include/mach/pxa930_rotary.h b/arch/arm/mach-pxa/include/mach/pxa930_rotary.h new file mode 100644 index 00000000000..053587caffd --- /dev/null +++ b/arch/arm/mach-pxa/include/mach/pxa930_rotary.h | |||
@@ -0,0 +1,20 @@ | |||
1 | #ifndef __ASM_ARCH_PXA930_ROTARY_H | ||
2 | #define __ASM_ARCH_PXA930_ROTARY_H | ||
3 | |||
4 | /* NOTE: | ||
5 | * | ||
6 | * rotary can be either interpreted as a ralative input event (e.g. | ||
7 | * REL_WHEEL or REL_HWHEEL) or a specific key event (e.g. UP/DOWN | ||
8 | * or LEFT/RIGHT), depending on if up_key & down_key are assigned | ||
9 | * or rel_code is assigned a non-zero value. When all are non-zero, | ||
10 | * up_key and down_key will be preferred. | ||
11 | */ | ||
12 | struct pxa930_rotary_platform_data { | ||
13 | int up_key; | ||
14 | int down_key; | ||
15 | int rel_code; | ||
16 | }; | ||
17 | |||
18 | void __init pxa930_set_rotarykey_info(struct pxa930_rotary_platform_data *info); | ||
19 | |||
20 | #endif /* __ASM_ARCH_PXA930_ROTARY_H */ | ||
diff --git a/arch/arm/mach-pxa/include/mach/pxa930_trkball.h b/arch/arm/mach-pxa/include/mach/pxa930_trkball.h new file mode 100644 index 00000000000..5e0789bc472 --- /dev/null +++ b/arch/arm/mach-pxa/include/mach/pxa930_trkball.h | |||
@@ -0,0 +1,10 @@ | |||
1 | #ifndef __ASM_ARCH_PXA930_TRKBALL_H | ||
2 | #define __ASM_ARCH_PXA930_TRKBALL_H | ||
3 | |||
4 | struct pxa930_trkball_platform_data { | ||
5 | int x_filter; | ||
6 | int y_filter; | ||
7 | }; | ||
8 | |||
9 | #endif /* __ASM_ARCH_PXA930_TRKBALL_H */ | ||
10 | |||
diff --git a/arch/arm/mach-pxa/time.c b/arch/arm/mach-pxa/time.c index 00162415851..95656a72268 100644 --- a/arch/arm/mach-pxa/time.c +++ b/arch/arm/mach-pxa/time.c | |||
@@ -122,7 +122,6 @@ static struct clock_event_device ckevt_pxa_osmr0 = { | |||
122 | .features = CLOCK_EVT_FEAT_ONESHOT, | 122 | .features = CLOCK_EVT_FEAT_ONESHOT, |
123 | .shift = 32, | 123 | .shift = 32, |
124 | .rating = 200, | 124 | .rating = 200, |
125 | .cpumask = CPU_MASK_CPU0, | ||
126 | .set_next_event = pxa_osmr0_set_next_event, | 125 | .set_next_event = pxa_osmr0_set_next_event, |
127 | .set_mode = pxa_osmr0_set_mode, | 126 | .set_mode = pxa_osmr0_set_mode, |
128 | }; | 127 | }; |
@@ -163,6 +162,7 @@ static void __init pxa_timer_init(void) | |||
163 | clockevent_delta2ns(0x7fffffff, &ckevt_pxa_osmr0); | 162 | clockevent_delta2ns(0x7fffffff, &ckevt_pxa_osmr0); |
164 | ckevt_pxa_osmr0.min_delta_ns = | 163 | ckevt_pxa_osmr0.min_delta_ns = |
165 | clockevent_delta2ns(MIN_OSCR_DELTA * 2, &ckevt_pxa_osmr0) + 1; | 164 | clockevent_delta2ns(MIN_OSCR_DELTA * 2, &ckevt_pxa_osmr0) + 1; |
165 | ckevt_pxa_osmr0.cpumask = cpumask_of(0); | ||
166 | 166 | ||
167 | cksrc_pxa_oscr0.mult = | 167 | cksrc_pxa_oscr0.mult = |
168 | clocksource_hz2mult(clock_tick_rate, cksrc_pxa_oscr0.shift); | 168 | clocksource_hz2mult(clock_tick_rate, cksrc_pxa_oscr0.shift); |
diff --git a/arch/arm/mach-realview/core.c b/arch/arm/mach-realview/core.c index 5f1d55963ce..bd2aa4f1614 100644 --- a/arch/arm/mach-realview/core.c +++ b/arch/arm/mach-realview/core.c | |||
@@ -624,7 +624,7 @@ static struct clock_event_device timer0_clockevent = { | |||
624 | .set_mode = timer_set_mode, | 624 | .set_mode = timer_set_mode, |
625 | .set_next_event = timer_set_next_event, | 625 | .set_next_event = timer_set_next_event, |
626 | .rating = 300, | 626 | .rating = 300, |
627 | .cpumask = CPU_MASK_ALL, | 627 | .cpumask = cpu_all_mask, |
628 | }; | 628 | }; |
629 | 629 | ||
630 | static void __init realview_clockevents_init(unsigned int timer_irq) | 630 | static void __init realview_clockevents_init(unsigned int timer_irq) |
diff --git a/arch/arm/mach-realview/core.h b/arch/arm/mach-realview/core.h index 63be2abdc19..44269b162d4 100644 --- a/arch/arm/mach-realview/core.h +++ b/arch/arm/mach-realview/core.h | |||
@@ -31,7 +31,7 @@ | |||
31 | static struct amba_device name##_device = { \ | 31 | static struct amba_device name##_device = { \ |
32 | .dev = { \ | 32 | .dev = { \ |
33 | .coherent_dma_mask = ~0, \ | 33 | .coherent_dma_mask = ~0, \ |
34 | .bus_id = busid, \ | 34 | .init_name = busid, \ |
35 | .platform_data = plat, \ | 35 | .platform_data = plat, \ |
36 | }, \ | 36 | }, \ |
37 | .res = { \ | 37 | .res = { \ |
diff --git a/arch/arm/mach-realview/localtimer.c b/arch/arm/mach-realview/localtimer.c index 9019ef2e561..67d6d9cc68b 100644 --- a/arch/arm/mach-realview/localtimer.c +++ b/arch/arm/mach-realview/localtimer.c | |||
@@ -154,7 +154,7 @@ void __cpuinit local_timer_setup(void) | |||
154 | clk->set_mode = local_timer_set_mode; | 154 | clk->set_mode = local_timer_set_mode; |
155 | clk->set_next_event = local_timer_set_next_event; | 155 | clk->set_next_event = local_timer_set_next_event; |
156 | clk->irq = IRQ_LOCALTIMER; | 156 | clk->irq = IRQ_LOCALTIMER; |
157 | clk->cpumask = cpumask_of_cpu(cpu); | 157 | clk->cpumask = cpumask_of(cpu); |
158 | clk->shift = 20; | 158 | clk->shift = 20; |
159 | clk->mult = div_sc(mpcore_timer_rate, NSEC_PER_SEC, clk->shift); | 159 | clk->mult = div_sc(mpcore_timer_rate, NSEC_PER_SEC, clk->shift); |
160 | clk->max_delta_ns = clockevent_delta2ns(0xffffffff, clk); | 160 | clk->max_delta_ns = clockevent_delta2ns(0xffffffff, clk); |
@@ -193,7 +193,7 @@ void __cpuinit local_timer_setup(void) | |||
193 | clk->rating = 200; | 193 | clk->rating = 200; |
194 | clk->set_mode = dummy_timer_set_mode; | 194 | clk->set_mode = dummy_timer_set_mode; |
195 | clk->broadcast = smp_timer_broadcast; | 195 | clk->broadcast = smp_timer_broadcast; |
196 | clk->cpumask = cpumask_of_cpu(cpu); | 196 | clk->cpumask = cpumask_of(cpu); |
197 | 197 | ||
198 | clockevents_register_device(clk); | 198 | clockevents_register_device(clk); |
199 | } | 199 | } |
diff --git a/arch/arm/mach-s3c2410/include/mach/spi.h b/arch/arm/mach-s3c2410/include/mach/spi.h index 774f3adfe8a..1d300fb112b 100644 --- a/arch/arm/mach-s3c2410/include/mach/spi.h +++ b/arch/arm/mach-s3c2410/include/mach/spi.h | |||
@@ -14,7 +14,7 @@ | |||
14 | #define __ASM_ARCH_SPI_H __FILE__ | 14 | #define __ASM_ARCH_SPI_H __FILE__ |
15 | 15 | ||
16 | struct s3c2410_spi_info { | 16 | struct s3c2410_spi_info { |
17 | unsigned long pin_cs; /* simple gpio cs */ | 17 | int pin_cs; /* simple gpio cs */ |
18 | unsigned int num_cs; /* total chipselects */ | 18 | unsigned int num_cs; /* total chipselects */ |
19 | int bus_num; /* bus number to use. */ | 19 | int bus_num; /* bus number to use. */ |
20 | 20 | ||
diff --git a/arch/arm/mach-sa1100/time.c b/arch/arm/mach-sa1100/time.c index 8c5e727f3b7..711c0295c66 100644 --- a/arch/arm/mach-sa1100/time.c +++ b/arch/arm/mach-sa1100/time.c | |||
@@ -73,7 +73,6 @@ static struct clock_event_device ckevt_sa1100_osmr0 = { | |||
73 | .features = CLOCK_EVT_FEAT_ONESHOT, | 73 | .features = CLOCK_EVT_FEAT_ONESHOT, |
74 | .shift = 32, | 74 | .shift = 32, |
75 | .rating = 200, | 75 | .rating = 200, |
76 | .cpumask = CPU_MASK_CPU0, | ||
77 | .set_next_event = sa1100_osmr0_set_next_event, | 76 | .set_next_event = sa1100_osmr0_set_next_event, |
78 | .set_mode = sa1100_osmr0_set_mode, | 77 | .set_mode = sa1100_osmr0_set_mode, |
79 | }; | 78 | }; |
@@ -110,6 +109,7 @@ static void __init sa1100_timer_init(void) | |||
110 | clockevent_delta2ns(0x7fffffff, &ckevt_sa1100_osmr0); | 109 | clockevent_delta2ns(0x7fffffff, &ckevt_sa1100_osmr0); |
111 | ckevt_sa1100_osmr0.min_delta_ns = | 110 | ckevt_sa1100_osmr0.min_delta_ns = |
112 | clockevent_delta2ns(MIN_OSCR_DELTA * 2, &ckevt_sa1100_osmr0) + 1; | 111 | clockevent_delta2ns(MIN_OSCR_DELTA * 2, &ckevt_sa1100_osmr0) + 1; |
112 | ckevt_sa1100_osmr0.cpumask = cpumask_of(0); | ||
113 | 113 | ||
114 | cksrc_sa1100_oscr.mult = | 114 | cksrc_sa1100_oscr.mult = |
115 | clocksource_hz2mult(CLOCK_TICK_RATE, cksrc_sa1100_oscr.shift); | 115 | clocksource_hz2mult(CLOCK_TICK_RATE, cksrc_sa1100_oscr.shift); |
diff --git a/arch/arm/mach-versatile/core.c b/arch/arm/mach-versatile/core.c index df25aa13850..1c43494f5c4 100644 --- a/arch/arm/mach-versatile/core.c +++ b/arch/arm/mach-versatile/core.c | |||
@@ -1005,7 +1005,7 @@ static void __init versatile_timer_init(void) | |||
1005 | timer0_clockevent.min_delta_ns = | 1005 | timer0_clockevent.min_delta_ns = |
1006 | clockevent_delta2ns(0xf, &timer0_clockevent); | 1006 | clockevent_delta2ns(0xf, &timer0_clockevent); |
1007 | 1007 | ||
1008 | timer0_clockevent.cpumask = cpumask_of_cpu(0); | 1008 | timer0_clockevent.cpumask = cpumask_of(0); |
1009 | clockevents_register_device(&timer0_clockevent); | 1009 | clockevents_register_device(&timer0_clockevent); |
1010 | } | 1010 | } |
1011 | 1011 | ||
diff --git a/arch/arm/mach-versatile/core.h b/arch/arm/mach-versatile/core.h index afcaa858eb1..9d39886a835 100644 --- a/arch/arm/mach-versatile/core.h +++ b/arch/arm/mach-versatile/core.h | |||
@@ -34,7 +34,7 @@ extern unsigned int mmc_status(struct device *dev); | |||
34 | static struct amba_device name##_device = { \ | 34 | static struct amba_device name##_device = { \ |
35 | .dev = { \ | 35 | .dev = { \ |
36 | .coherent_dma_mask = ~0, \ | 36 | .coherent_dma_mask = ~0, \ |
37 | .bus_id = busid, \ | 37 | .init_name = busid, \ |
38 | .platform_data = plat, \ | 38 | .platform_data = plat, \ |
39 | }, \ | 39 | }, \ |
40 | .res = { \ | 40 | .res = { \ |
diff --git a/arch/arm/oprofile/op_model_mpcore.c b/arch/arm/oprofile/op_model_mpcore.c index 4de366e8b4c..6d6bd589924 100644 --- a/arch/arm/oprofile/op_model_mpcore.c +++ b/arch/arm/oprofile/op_model_mpcore.c | |||
@@ -260,10 +260,10 @@ static void em_stop(void) | |||
260 | static void em_route_irq(int irq, unsigned int cpu) | 260 | static void em_route_irq(int irq, unsigned int cpu) |
261 | { | 261 | { |
262 | struct irq_desc *desc = irq_desc + irq; | 262 | struct irq_desc *desc = irq_desc + irq; |
263 | cpumask_t mask = cpumask_of_cpu(cpu); | 263 | const struct cpumask *mask = cpumask_of(cpu); |
264 | 264 | ||
265 | spin_lock_irq(&desc->lock); | 265 | spin_lock_irq(&desc->lock); |
266 | desc->affinity = mask; | 266 | desc->affinity = *mask; |
267 | desc->chip->set_affinity(irq, mask); | 267 | desc->chip->set_affinity(irq, mask); |
268 | spin_unlock_irq(&desc->lock); | 268 | spin_unlock_irq(&desc->lock); |
269 | } | 269 | } |
diff --git a/arch/arm/plat-mxc/include/mach/usb.h b/arch/arm/plat-mxc/include/mach/usb.h new file mode 100644 index 00000000000..2dacb3086f1 --- /dev/null +++ b/arch/arm/plat-mxc/include/mach/usb.h | |||
@@ -0,0 +1,23 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2008 Darius Augulis <augulis.darius@gmail.com> | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License as published by | ||
6 | * the Free Software Foundation; either version 2 of the License, or | ||
7 | * (at your option) any later version. | ||
8 | * | ||
9 | * This program is distributed in the hope that it will be useful, | ||
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
12 | * GNU General Public License for more details. | ||
13 | */ | ||
14 | |||
15 | #ifndef __ASM_ARCH_MXC_USB | ||
16 | #define __ASM_ARCH_MXC_USB | ||
17 | |||
18 | struct imxusb_platform_data { | ||
19 | int (*init)(struct device *); | ||
20 | int (*exit)(struct device *); | ||
21 | }; | ||
22 | |||
23 | #endif /* __ASM_ARCH_MXC_USB */ | ||
diff --git a/arch/arm/plat-mxc/time.c b/arch/arm/plat-mxc/time.c index fd28f5194f7..758a1293bcf 100644 --- a/arch/arm/plat-mxc/time.c +++ b/arch/arm/plat-mxc/time.c | |||
@@ -190,7 +190,7 @@ static int __init mxc_clockevent_init(void) | |||
190 | clockevent_mxc.min_delta_ns = | 190 | clockevent_mxc.min_delta_ns = |
191 | clockevent_delta2ns(0xff, &clockevent_mxc); | 191 | clockevent_delta2ns(0xff, &clockevent_mxc); |
192 | 192 | ||
193 | clockevent_mxc.cpumask = cpumask_of_cpu(0); | 193 | clockevent_mxc.cpumask = cpumask_of(0); |
194 | 194 | ||
195 | clockevents_register_device(&clockevent_mxc); | 195 | clockevents_register_device(&clockevent_mxc); |
196 | 196 | ||
diff --git a/arch/arm/plat-omap/include/mach/memory.h b/arch/arm/plat-omap/include/mach/memory.h index 211c9f6619e..d6b5ca6c7da 100644 --- a/arch/arm/plat-omap/include/mach/memory.h +++ b/arch/arm/plat-omap/include/mach/memory.h | |||
@@ -59,7 +59,7 @@ | |||
59 | 59 | ||
60 | #define virt_to_lbus(x) ((x) - PAGE_OFFSET + OMAP1510_LB_OFFSET) | 60 | #define virt_to_lbus(x) ((x) - PAGE_OFFSET + OMAP1510_LB_OFFSET) |
61 | #define lbus_to_virt(x) ((x) - OMAP1510_LB_OFFSET + PAGE_OFFSET) | 61 | #define lbus_to_virt(x) ((x) - OMAP1510_LB_OFFSET + PAGE_OFFSET) |
62 | #define is_lbus_device(dev) (cpu_is_omap15xx() && dev && (strncmp(dev->bus_id, "ohci", 4) == 0)) | 62 | #define is_lbus_device(dev) (cpu_is_omap15xx() && dev && (strncmp(dev_name(dev), "ohci", 4) == 0)) |
63 | 63 | ||
64 | #define __arch_page_to_dma(dev, page) ({is_lbus_device(dev) ? \ | 64 | #define __arch_page_to_dma(dev, page) ({is_lbus_device(dev) ? \ |
65 | (dma_addr_t)virt_to_lbus(page_address(page)) : \ | 65 | (dma_addr_t)virt_to_lbus(page_address(page)) : \ |
diff --git a/arch/arm/plat-omap/usb.c b/arch/arm/plat-omap/usb.c index 67ca1e216df..add0485703b 100644 --- a/arch/arm/plat-omap/usb.c +++ b/arch/arm/plat-omap/usb.c | |||
@@ -77,38 +77,6 @@ | |||
77 | 77 | ||
78 | /*-------------------------------------------------------------------------*/ | 78 | /*-------------------------------------------------------------------------*/ |
79 | 79 | ||
80 | #if defined(CONFIG_ARCH_OMAP_OTG) || defined(CONFIG_USB_MUSB_OTG) | ||
81 | |||
82 | static struct otg_transceiver *xceiv; | ||
83 | |||
84 | /** | ||
85 | * otg_get_transceiver - find the (single) OTG transceiver driver | ||
86 | * | ||
87 | * Returns the transceiver driver, after getting a refcount to it; or | ||
88 | * null if there is no such transceiver. The caller is responsible for | ||
89 | * releasing that count. | ||
90 | */ | ||
91 | struct otg_transceiver *otg_get_transceiver(void) | ||
92 | { | ||
93 | if (xceiv) | ||
94 | get_device(xceiv->dev); | ||
95 | return xceiv; | ||
96 | } | ||
97 | EXPORT_SYMBOL(otg_get_transceiver); | ||
98 | |||
99 | int otg_set_transceiver(struct otg_transceiver *x) | ||
100 | { | ||
101 | if (xceiv && x) | ||
102 | return -EBUSY; | ||
103 | xceiv = x; | ||
104 | return 0; | ||
105 | } | ||
106 | EXPORT_SYMBOL(otg_set_transceiver); | ||
107 | |||
108 | #endif | ||
109 | |||
110 | /*-------------------------------------------------------------------------*/ | ||
111 | |||
112 | #if defined(CONFIG_ARCH_OMAP_OTG) || defined(CONFIG_ARCH_OMAP15XX) | 80 | #if defined(CONFIG_ARCH_OMAP_OTG) || defined(CONFIG_ARCH_OMAP15XX) |
113 | 81 | ||
114 | static void omap2_usb_devconf_clear(u8 port, u32 mask) | 82 | static void omap2_usb_devconf_clear(u8 port, u32 mask) |
diff --git a/arch/arm/plat-orion/time.c b/arch/arm/plat-orion/time.c index 544d6b327f3..6fa2923e6dc 100644 --- a/arch/arm/plat-orion/time.c +++ b/arch/arm/plat-orion/time.c | |||
@@ -149,7 +149,6 @@ static struct clock_event_device orion_clkevt = { | |||
149 | .features = CLOCK_EVT_FEAT_ONESHOT | CLOCK_EVT_FEAT_PERIODIC, | 149 | .features = CLOCK_EVT_FEAT_ONESHOT | CLOCK_EVT_FEAT_PERIODIC, |
150 | .shift = 32, | 150 | .shift = 32, |
151 | .rating = 300, | 151 | .rating = 300, |
152 | .cpumask = CPU_MASK_CPU0, | ||
153 | .set_next_event = orion_clkevt_next_event, | 152 | .set_next_event = orion_clkevt_next_event, |
154 | .set_mode = orion_clkevt_mode, | 153 | .set_mode = orion_clkevt_mode, |
155 | }; | 154 | }; |
@@ -199,5 +198,6 @@ void __init orion_time_init(unsigned int irq, unsigned int tclk) | |||
199 | orion_clkevt.mult = div_sc(tclk, NSEC_PER_SEC, orion_clkevt.shift); | 198 | orion_clkevt.mult = div_sc(tclk, NSEC_PER_SEC, orion_clkevt.shift); |
200 | orion_clkevt.max_delta_ns = clockevent_delta2ns(0xfffffffe, &orion_clkevt); | 199 | orion_clkevt.max_delta_ns = clockevent_delta2ns(0xfffffffe, &orion_clkevt); |
201 | orion_clkevt.min_delta_ns = clockevent_delta2ns(1, &orion_clkevt); | 200 | orion_clkevt.min_delta_ns = clockevent_delta2ns(1, &orion_clkevt); |
201 | orion_clkevt.cpumask = cpumask_of(0); | ||
202 | clockevents_register_device(&orion_clkevt); | 202 | clockevents_register_device(&orion_clkevt); |
203 | } | 203 | } |