diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-03-25 18:54:16 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-03-25 18:54:16 -0400 |
commit | 374da9da22ebaad0524c77905b5e89ae4619bef3 (patch) | |
tree | 78f8ebbbc2e730b8e510e3a68b5b73755196fb68 /arch/arm/mach-sa1100 | |
parent | fbae0f8912dc12b284433c05417ea76311205bbf (diff) | |
parent | 81e6ca3eb74d6bdbab181dd2db378f49f76f0d97 (diff) |
Merge branch 'sa1111' into sa11x0
Conflicts:
arch/arm/common/sa1111.c
arch/arm/mach-sa1100/neponset.c
Fixed:
arch/arm/mach-sa1100/assabet.c
for the neponset changes
Diffstat (limited to 'arch/arm/mach-sa1100')
-rw-r--r-- | arch/arm/mach-sa1100/assabet.c | 15 | ||||
-rw-r--r-- | arch/arm/mach-sa1100/badge4.c | 21 | ||||
-rw-r--r-- | arch/arm/mach-sa1100/jornada720.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-sa1100/neponset.c | 15 |
4 files changed, 19 insertions, 38 deletions
diff --git a/arch/arm/mach-sa1100/assabet.c b/arch/arm/mach-sa1100/assabet.c index f2030bc22cde..e2d411a8d4ce 100644 --- a/arch/arm/mach-sa1100/assabet.c +++ b/arch/arm/mach-sa1100/assabet.c | |||
@@ -425,21 +425,8 @@ static void __init assabet_map_io(void) | |||
425 | */ | 425 | */ |
426 | Ser1SDCR0 |= SDCR0_SUS; | 426 | Ser1SDCR0 |= SDCR0_SUS; |
427 | 427 | ||
428 | if (machine_has_neponset()) { | 428 | if (!machine_has_neponset()) |
429 | #ifdef CONFIG_ASSABET_NEPONSET | ||
430 | extern void neponset_map_io(void); | ||
431 | |||
432 | /* | ||
433 | * We map Neponset registers even if it isn't present since | ||
434 | * many drivers will try to probe their stuff (and fail). | ||
435 | * This is still more friendly than a kernel paging request | ||
436 | * crash. | ||
437 | */ | ||
438 | neponset_map_io(); | ||
439 | #endif | ||
440 | } else { | ||
441 | sa1100_register_uart_fns(&assabet_port_fns); | 429 | sa1100_register_uart_fns(&assabet_port_fns); |
442 | } | ||
443 | 430 | ||
444 | /* | 431 | /* |
445 | * When Neponset is attached, the first UART should be | 432 | * When Neponset is attached, the first UART should be |
diff --git a/arch/arm/mach-sa1100/badge4.c b/arch/arm/mach-sa1100/badge4.c index ce2dbdf4ba1a..5839c9d8bb92 100644 --- a/arch/arm/mach-sa1100/badge4.c +++ b/arch/arm/mach-sa1100/badge4.c | |||
@@ -43,8 +43,24 @@ static struct resource sa1111_resources[] = { | |||
43 | [1] = DEFINE_RES_IRQ(BADGE4_IRQ_GPIO_SA1111), | 43 | [1] = DEFINE_RES_IRQ(BADGE4_IRQ_GPIO_SA1111), |
44 | }; | 44 | }; |
45 | 45 | ||
46 | static int badge4_sa1111_enable(void *data, unsigned devid) | ||
47 | { | ||
48 | if (devid == SA1111_DEVID_USB) | ||
49 | badge4_set_5V(BADGE4_5V_USB, 1); | ||
50 | return 0; | ||
51 | } | ||
52 | |||
53 | static void badge4_sa1111_disable(void *data, unsigned devid) | ||
54 | { | ||
55 | if (devid == SA1111_DEVID_USB) | ||
56 | badge4_set_5V(BADGE4_5V_USB, 0); | ||
57 | } | ||
58 | |||
46 | static struct sa1111_platform_data sa1111_info = { | 59 | static struct sa1111_platform_data sa1111_info = { |
47 | .irq_base = IRQ_BOARD_END, | 60 | .irq_base = IRQ_BOARD_END, |
61 | .disable_devs = SA1111_DEVID_PS2_MSE, | ||
62 | .enable = badge4_sa1111_enable, | ||
63 | .disable = badge4_sa1111_disable, | ||
48 | }; | 64 | }; |
49 | 65 | ||
50 | static u64 sa1111_dmamask = 0xffffffffUL; | 66 | static u64 sa1111_dmamask = 0xffffffffUL; |
@@ -258,11 +274,6 @@ static struct map_desc badge4_io_desc[] __initdata = { | |||
258 | .pfn = __phys_to_pfn(0x10000000), | 274 | .pfn = __phys_to_pfn(0x10000000), |
259 | .length = 0x00100000, | 275 | .length = 0x00100000, |
260 | .type = MT_DEVICE | 276 | .type = MT_DEVICE |
261 | }, { /* SA-1111 */ | ||
262 | .virtual = 0xf4000000, | ||
263 | .pfn = __phys_to_pfn(0x48000000), | ||
264 | .length = 0x00100000, | ||
265 | .type = MT_DEVICE | ||
266 | } | 277 | } |
267 | }; | 278 | }; |
268 | 279 | ||
diff --git a/arch/arm/mach-sa1100/jornada720.c b/arch/arm/mach-sa1100/jornada720.c index 8512cfcc0d9b..8be8130baf63 100644 --- a/arch/arm/mach-sa1100/jornada720.c +++ b/arch/arm/mach-sa1100/jornada720.c | |||
@@ -195,6 +195,7 @@ static struct resource sa1111_resources[] = { | |||
195 | 195 | ||
196 | static struct sa1111_platform_data sa1111_info = { | 196 | static struct sa1111_platform_data sa1111_info = { |
197 | .irq_base = IRQ_BOARD_END, | 197 | .irq_base = IRQ_BOARD_END, |
198 | .disable_devs = SA1111_DEVID_PS2_MSE, | ||
198 | }; | 199 | }; |
199 | 200 | ||
200 | static u64 sa1111_dmamask = 0xffffffffUL; | 201 | static u64 sa1111_dmamask = 0xffffffffUL; |
@@ -268,11 +269,6 @@ static struct map_desc jornada720_io_desc[] __initdata = { | |||
268 | .pfn = __phys_to_pfn(EPSONFBSTART), | 269 | .pfn = __phys_to_pfn(EPSONFBSTART), |
269 | .length = EPSONFBLEN, | 270 | .length = EPSONFBLEN, |
270 | .type = MT_DEVICE | 271 | .type = MT_DEVICE |
271 | }, { /* SA-1111 */ | ||
272 | .virtual = 0xf4000000, | ||
273 | .pfn = __phys_to_pfn(SA1111REGSTART), | ||
274 | .length = SA1111REGLEN, | ||
275 | .type = MT_DEVICE | ||
276 | } | 272 | } |
277 | }; | 273 | }; |
278 | 274 | ||
diff --git a/arch/arm/mach-sa1100/neponset.c b/arch/arm/mach-sa1100/neponset.c index 7ffa631eede4..3297aa22cd77 100644 --- a/arch/arm/mach-sa1100/neponset.c +++ b/arch/arm/mach-sa1100/neponset.c | |||
@@ -229,6 +229,7 @@ static struct irq_chip nochip = { | |||
229 | 229 | ||
230 | static struct sa1111_platform_data sa1111_info = { | 230 | static struct sa1111_platform_data sa1111_info = { |
231 | .irq_base = IRQ_BOARD_END, | 231 | .irq_base = IRQ_BOARD_END, |
232 | .disable_devs = SA1111_DEVID_PS2_MSE, | ||
232 | }; | 233 | }; |
233 | 234 | ||
234 | static int __devinit neponset_probe(struct platform_device *dev) | 235 | static int __devinit neponset_probe(struct platform_device *dev) |
@@ -432,17 +433,3 @@ static int __init neponset_init(void) | |||
432 | } | 433 | } |
433 | 434 | ||
434 | subsys_initcall(neponset_init); | 435 | subsys_initcall(neponset_init); |
435 | |||
436 | static struct map_desc neponset_io_desc[] __initdata = { | ||
437 | { /* SA-1111 */ | ||
438 | .virtual = 0xf4000000, | ||
439 | .pfn = __phys_to_pfn(0x40000000), | ||
440 | .length = SZ_1M, | ||
441 | .type = MT_DEVICE | ||
442 | } | ||
443 | }; | ||
444 | |||
445 | void __init neponset_map_io(void) | ||
446 | { | ||
447 | iotable_init(neponset_io_desc, ARRAY_SIZE(neponset_io_desc)); | ||
448 | } | ||