diff options
Diffstat (limited to 'arch/arm/mach-at91rm9200')
-rw-r--r-- | arch/arm/mach-at91rm9200/Kconfig | 82 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/Makefile | 13 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/at91rm9200.c (renamed from arch/arm/mach-at91rm9200/common.c) | 3 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/at91rm9200_time.c (renamed from arch/arm/mach-at91rm9200/time.c) | 7 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/board-csb337.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/board-csb637.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/board-dk.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/board-ek.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/devices.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/gpio.c | 11 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/irq.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-at91rm9200/leds.c | 1 |
12 files changed, 84 insertions, 39 deletions
diff --git a/arch/arm/mach-at91rm9200/Kconfig b/arch/arm/mach-at91rm9200/Kconfig index 70d402f76ce5..2f85e8693b1b 100644 --- a/arch/arm/mach-at91rm9200/Kconfig +++ b/arch/arm/mach-at91rm9200/Kconfig | |||
@@ -1,6 +1,21 @@ | |||
1 | if ARCH_AT91RM9200 | 1 | if ARCH_AT91 |
2 | |||
3 | menu "Atmel AT91 System-on-Chip" | ||
4 | |||
5 | comment "Atmel AT91 Processors" | ||
6 | |||
7 | config ARCH_AT91RM9200 | ||
8 | bool "AT91RM9200" | ||
2 | 9 | ||
3 | menu "AT91RM9200 Implementations" | 10 | config ARCH_AT91SAM9260 |
11 | bool "AT91SAM9260" | ||
12 | |||
13 | config ARCH_AT91SAM9261 | ||
14 | bool "AT91SAM9261" | ||
15 | |||
16 | # ---------------------------------------------------------- | ||
17 | |||
18 | if ARCH_AT91RM9200 | ||
4 | 19 | ||
5 | comment "AT91RM9200 Board Type" | 20 | comment "AT91RM9200 Board Type" |
6 | 21 | ||
@@ -8,58 +23,87 @@ config MACH_ONEARM | |||
8 | bool "Ajeco 1ARM Single Board Computer" | 23 | bool "Ajeco 1ARM Single Board Computer" |
9 | depends on ARCH_AT91RM9200 | 24 | depends on ARCH_AT91RM9200 |
10 | help | 25 | help |
11 | Select this if you are using Ajeco's 1ARM Single Board Computer | 26 | Select this if you are using Ajeco's 1ARM Single Board Computer. |
27 | <http://www.ajeco.fi/products.htm> | ||
12 | 28 | ||
13 | config ARCH_AT91RM9200DK | 29 | config ARCH_AT91RM9200DK |
14 | bool "Atmel AT91RM9200-DK Development board" | 30 | bool "Atmel AT91RM9200-DK Development board" |
15 | depends on ARCH_AT91RM9200 | 31 | depends on ARCH_AT91RM9200 |
16 | help | 32 | help |
17 | Select this if you are using Atmel's AT91RM9200-DK Development board | 33 | Select this if you are using Atmel's AT91RM9200-DK Development board. |
34 | (Discontinued) | ||
35 | |||
18 | 36 | ||
19 | config MACH_AT91RM9200EK | 37 | config MACH_AT91RM9200EK |
20 | bool "Atmel AT91RM9200-EK Evaluation Kit" | 38 | bool "Atmel AT91RM9200-EK Evaluation Kit" |
21 | depends on ARCH_AT91RM9200 | 39 | depends on ARCH_AT91RM9200 |
22 | help | 40 | help |
23 | Select this if you are using Atmel's AT91RM9200-EK Evaluation Kit | 41 | Select this if you are using Atmel's AT91RM9200-EK Evaluation Kit. |
42 | <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3507> | ||
24 | 43 | ||
25 | config MACH_CSB337 | 44 | config MACH_CSB337 |
26 | bool "Cogent CSB337 board" | 45 | bool "Cogent CSB337" |
27 | depends on ARCH_AT91RM9200 | 46 | depends on ARCH_AT91RM9200 |
28 | help | 47 | help |
29 | Select this if you are using Cogent's CSB337 board | 48 | Select this if you are using Cogent's CSB337 board. |
49 | <http://www.cogcomp.com/csb_csb337.htm> | ||
30 | 50 | ||
31 | config MACH_CSB637 | 51 | config MACH_CSB637 |
32 | bool "Cogent CSB637 board" | 52 | bool "Cogent CSB637" |
33 | depends on ARCH_AT91RM9200 | 53 | depends on ARCH_AT91RM9200 |
34 | help | 54 | help |
35 | Select this if you are using Cogent's CSB637 board | 55 | Select this if you are using Cogent's CSB637 board. |
56 | <http://www.cogcomp.com/csb_csb637.htm> | ||
36 | 57 | ||
37 | config MACH_CARMEVA | 58 | config MACH_CARMEVA |
38 | bool "Conitec's ARM&EVA" | 59 | bool "Conitec ARM&EVA" |
39 | depends on ARCH_AT91RM9200 | 60 | depends on ARCH_AT91RM9200 |
40 | help | 61 | help |
41 | Select this if you are using Conitec's AT91RM9200-MCU-Module | 62 | Select this if you are using Conitec's AT91RM9200-MCU-Module. |
63 | <http://www.conitec.net/english/linuxboard.htm> | ||
42 | 64 | ||
43 | config MACH_KB9200 | 65 | config MACH_ATEB9200 |
44 | bool "KwikByte's KB920x" | 66 | bool "Embest ATEB9200" |
45 | depends on ARCH_AT91RM9200 | 67 | depends on ARCH_AT91RM9200 |
46 | help | 68 | help |
47 | Select this if you are using KwikByte's KB920x board | 69 | Select this if you are using Embest's ATEB9200 board. |
70 | <http://www.embedinfo.com/english/product/ATEB9200.asp> | ||
48 | 71 | ||
49 | config MACH_ATEB9200 | 72 | config MACH_KB9200 |
50 | bool "Embest's ATEB9200" | 73 | bool "KwikByte KB920x" |
51 | depends on ARCH_AT91RM9200 | 74 | depends on ARCH_AT91RM9200 |
52 | help | 75 | help |
53 | Select this if you are using Embest's ATEB9200 board | 76 | Select this if you are using KwikByte's KB920x board. |
77 | <http://kwikbyte.com/KB9202_description_new.htm> | ||
54 | 78 | ||
55 | config MACH_KAFA | 79 | config MACH_KAFA |
56 | bool "Sperry-Sun KAFA board" | 80 | bool "Sperry-Sun KAFA board" |
57 | depends on ARCH_AT91RM9200 | 81 | depends on ARCH_AT91RM9200 |
58 | help | 82 | help |
59 | Select this if you are using Sperry-Sun's KAFA board | 83 | Select this if you are using Sperry-Sun's KAFA board. |
84 | |||
85 | endif | ||
86 | |||
87 | # ---------------------------------------------------------- | ||
88 | |||
89 | if ARCH_AT91SAM9260 | ||
90 | |||
91 | comment "AT91SAM9260 Board Type" | ||
92 | |||
93 | endif | ||
94 | |||
95 | # ---------------------------------------------------------- | ||
96 | |||
97 | if ARCH_AT91SAM9261 | ||
98 | |||
99 | comment "AT91SAM9261 Board Type" | ||
100 | |||
101 | endif | ||
102 | |||
60 | 103 | ||
104 | # ---------------------------------------------------------- | ||
61 | 105 | ||
62 | comment "AT91RM9200 Feature Selections" | 106 | comment "AT91 Feature Selections" |
63 | 107 | ||
64 | config AT91_PROGRAMMABLE_CLOCKS | 108 | config AT91_PROGRAMMABLE_CLOCKS |
65 | bool "Programmable Clocks" | 109 | bool "Programmable Clocks" |
diff --git a/arch/arm/mach-at91rm9200/Makefile b/arch/arm/mach-at91rm9200/Makefile index 82db957322df..c174805c24e5 100644 --- a/arch/arm/mach-at91rm9200/Makefile +++ b/arch/arm/mach-at91rm9200/Makefile | |||
@@ -2,14 +2,19 @@ | |||
2 | # Makefile for the linux kernel. | 2 | # Makefile for the linux kernel. |
3 | # | 3 | # |
4 | 4 | ||
5 | obj-y := clock.o irq.o time.o gpio.o common.o devices.o | 5 | obj-y := clock.o irq.o gpio.o devices.o |
6 | obj-m := | 6 | obj-m := |
7 | obj-n := | 7 | obj-n := |
8 | obj- := | 8 | obj- := |
9 | 9 | ||
10 | obj-$(CONFIG_PM) += pm.o | 10 | obj-$(CONFIG_PM) += pm.o |
11 | 11 | ||
12 | # Board-specific support | 12 | # CPU-specific support |
13 | obj-$(CONFIG_ARCH_AT91RM9200) += at91rm9200.o at91rm9200_time.o | ||
14 | obj-$(CONFIG_ARCH_AT91SAM9260) += | ||
15 | obj-$(CONFIG_ARCH_AT91SAM9261) += | ||
16 | |||
17 | # AT91RM9200 Board-specific support | ||
13 | obj-$(CONFIG_MACH_ONEARM) += board-1arm.o | 18 | obj-$(CONFIG_MACH_ONEARM) += board-1arm.o |
14 | obj-$(CONFIG_ARCH_AT91RM9200DK) += board-dk.o | 19 | obj-$(CONFIG_ARCH_AT91RM9200DK) += board-dk.o |
15 | obj-$(CONFIG_MACH_AT91RM9200EK) += board-ek.o | 20 | obj-$(CONFIG_MACH_AT91RM9200EK) += board-ek.o |
@@ -20,6 +25,10 @@ obj-$(CONFIG_MACH_KB9200) += board-kb9202.o | |||
20 | obj-$(CONFIG_MACH_ATEB9200) += board-eb9200.o | 25 | obj-$(CONFIG_MACH_ATEB9200) += board-eb9200.o |
21 | obj-$(CONFIG_MACH_KAFA) += board-kafa.o | 26 | obj-$(CONFIG_MACH_KAFA) += board-kafa.o |
22 | 27 | ||
28 | # AT91SAM9260 board-specific support | ||
29 | |||
30 | # AT91SAM9261 board-specific support | ||
31 | |||
23 | # LEDs support | 32 | # LEDs support |
24 | led-$(CONFIG_ARCH_AT91RM9200DK) += leds.o | 33 | led-$(CONFIG_ARCH_AT91RM9200DK) += leds.o |
25 | led-$(CONFIG_MACH_AT91RM9200EK) += leds.o | 34 | led-$(CONFIG_MACH_AT91RM9200EK) += leds.o |
diff --git a/arch/arm/mach-at91rm9200/common.c b/arch/arm/mach-at91rm9200/at91rm9200.c index e836f8537a1d..7e1d072bdd80 100644 --- a/arch/arm/mach-at91rm9200/common.c +++ b/arch/arm/mach-at91rm9200/at91rm9200.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * arch/arm/mach-at91rm9200/common.c | 2 | * arch/arm/mach-at91rm9200/at91rm9200.c |
3 | * | 3 | * |
4 | * Copyright (C) 2005 SAN People | 4 | * Copyright (C) 2005 SAN People |
5 | * | 5 | * |
@@ -10,7 +10,6 @@ | |||
10 | * | 10 | * |
11 | */ | 11 | */ |
12 | 12 | ||
13 | #include <linux/config.h> | ||
14 | #include <linux/module.h> | 13 | #include <linux/module.h> |
15 | 14 | ||
16 | #include <asm/mach/arch.h> | 15 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-at91rm9200/time.c b/arch/arm/mach-at91rm9200/at91rm9200_time.c index fc2d7d5e4637..a92a8622c78a 100644 --- a/arch/arm/mach-at91rm9200/time.c +++ b/arch/arm/mach-at91rm9200/at91rm9200_time.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * linux/arch/arm/mach-at91rm9200/time.c | 2 | * linux/arch/arm/mach-at91rm9200/at91rm9200_time.c |
3 | * | 3 | * |
4 | * Copyright (C) 2003 SAN People | 4 | * Copyright (C) 2003 SAN People |
5 | * Copyright (C) 2003 ATMEL | 5 | * Copyright (C) 2003 ATMEL |
@@ -19,16 +19,15 @@ | |||
19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 19 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include <linux/config.h> | ||
23 | #include <linux/init.h> | 22 | #include <linux/init.h> |
24 | #include <linux/interrupt.h> | 23 | #include <linux/interrupt.h> |
24 | #include <linux/irq.h> | ||
25 | #include <linux/kernel.h> | 25 | #include <linux/kernel.h> |
26 | #include <linux/sched.h> | 26 | #include <linux/sched.h> |
27 | #include <linux/time.h> | 27 | #include <linux/time.h> |
28 | 28 | ||
29 | #include <asm/hardware.h> | 29 | #include <asm/hardware.h> |
30 | #include <asm/io.h> | 30 | #include <asm/io.h> |
31 | #include <asm/irq.h> | ||
32 | #include <asm/mach/time.h> | 31 | #include <asm/mach/time.h> |
33 | 32 | ||
34 | static unsigned long last_crtr; | 33 | static unsigned long last_crtr; |
@@ -86,7 +85,7 @@ static irqreturn_t at91rm9200_timer_interrupt(int irq, void *dev_id, struct pt_r | |||
86 | 85 | ||
87 | static struct irqaction at91rm9200_timer_irq = { | 86 | static struct irqaction at91rm9200_timer_irq = { |
88 | .name = "at91_tick", | 87 | .name = "at91_tick", |
89 | .flags = SA_SHIRQ | SA_INTERRUPT | SA_TIMER, | 88 | .flags = IRQF_SHARED | IRQF_DISABLED | IRQF_TIMER, |
90 | .handler = at91rm9200_timer_interrupt | 89 | .handler = at91rm9200_timer_interrupt |
91 | }; | 90 | }; |
92 | 91 | ||
diff --git a/arch/arm/mach-at91rm9200/board-csb337.c b/arch/arm/mach-at91rm9200/board-csb337.c index e94645d77f7a..794d3fbb449b 100644 --- a/arch/arm/mach-at91rm9200/board-csb337.c +++ b/arch/arm/mach-at91rm9200/board-csb337.c | |||
@@ -18,7 +18,6 @@ | |||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
19 | */ | 19 | */ |
20 | 20 | ||
21 | #include <linux/config.h> | ||
22 | #include <linux/types.h> | 21 | #include <linux/types.h> |
23 | #include <linux/init.h> | 22 | #include <linux/init.h> |
24 | #include <linux/mm.h> | 23 | #include <linux/mm.h> |
diff --git a/arch/arm/mach-at91rm9200/board-csb637.c b/arch/arm/mach-at91rm9200/board-csb637.c index 67d5f7786cdb..c8b6f334246a 100644 --- a/arch/arm/mach-at91rm9200/board-csb637.c +++ b/arch/arm/mach-at91rm9200/board-csb637.c | |||
@@ -18,7 +18,6 @@ | |||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
19 | */ | 19 | */ |
20 | 20 | ||
21 | #include <linux/config.h> | ||
22 | #include <linux/types.h> | 21 | #include <linux/types.h> |
23 | #include <linux/init.h> | 22 | #include <linux/init.h> |
24 | #include <linux/mm.h> | 23 | #include <linux/mm.h> |
diff --git a/arch/arm/mach-at91rm9200/board-dk.c b/arch/arm/mach-at91rm9200/board-dk.c index 48d7390fa584..65873037e02a 100644 --- a/arch/arm/mach-at91rm9200/board-dk.c +++ b/arch/arm/mach-at91rm9200/board-dk.c | |||
@@ -21,7 +21,6 @@ | |||
21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/config.h> | ||
25 | #include <linux/types.h> | 24 | #include <linux/types.h> |
26 | #include <linux/init.h> | 25 | #include <linux/init.h> |
27 | #include <linux/mm.h> | 26 | #include <linux/mm.h> |
diff --git a/arch/arm/mach-at91rm9200/board-ek.c b/arch/arm/mach-at91rm9200/board-ek.c index 72202ed830ad..868192351dda 100644 --- a/arch/arm/mach-at91rm9200/board-ek.c +++ b/arch/arm/mach-at91rm9200/board-ek.c | |||
@@ -21,7 +21,6 @@ | |||
21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
22 | */ | 22 | */ |
23 | 23 | ||
24 | #include <linux/config.h> | ||
25 | #include <linux/types.h> | 24 | #include <linux/types.h> |
26 | #include <linux/init.h> | 25 | #include <linux/init.h> |
27 | #include <linux/mm.h> | 26 | #include <linux/mm.h> |
diff --git a/arch/arm/mach-at91rm9200/devices.c b/arch/arm/mach-at91rm9200/devices.c index 1cf85d231baa..4352acb88178 100644 --- a/arch/arm/mach-at91rm9200/devices.c +++ b/arch/arm/mach-at91rm9200/devices.c | |||
@@ -13,7 +13,6 @@ | |||
13 | #include <asm/mach/arch.h> | 13 | #include <asm/mach/arch.h> |
14 | #include <asm/mach/map.h> | 14 | #include <asm/mach/map.h> |
15 | 15 | ||
16 | #include <linux/config.h> | ||
17 | #include <linux/platform_device.h> | 16 | #include <linux/platform_device.h> |
18 | 17 | ||
19 | #include <asm/hardware.h> | 18 | #include <asm/hardware.h> |
diff --git a/arch/arm/mach-at91rm9200/gpio.c b/arch/arm/mach-at91rm9200/gpio.c index 83c34747087b..5783c282ae7b 100644 --- a/arch/arm/mach-at91rm9200/gpio.c +++ b/arch/arm/mach-at91rm9200/gpio.c | |||
@@ -10,12 +10,13 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include <linux/errno.h> | 12 | #include <linux/errno.h> |
13 | #include <linux/interrupt.h> | ||
14 | #include <linux/irq.h> | ||
13 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
14 | #include <linux/list.h> | 16 | #include <linux/list.h> |
15 | #include <linux/module.h> | 17 | #include <linux/module.h> |
16 | 18 | ||
17 | #include <asm/io.h> | 19 | #include <asm/io.h> |
18 | #include <asm/mach/irq.h> | ||
19 | #include <asm/hardware.h> | 20 | #include <asm/hardware.h> |
20 | #include <asm/arch/gpio.h> | 21 | #include <asm/arch/gpio.h> |
21 | 22 | ||
@@ -340,7 +341,7 @@ static void gpio_irq_handler(unsigned irq, struct irqdesc *desc, struct pt_regs | |||
340 | void __iomem *pio; | 341 | void __iomem *pio; |
341 | u32 isr; | 342 | u32 isr; |
342 | 343 | ||
343 | pio = desc->base; | 344 | pio = get_irq_chip_data(irq); |
344 | 345 | ||
345 | /* temporarily mask (level sensitive) parent IRQ */ | 346 | /* temporarily mask (level sensitive) parent IRQ */ |
346 | desc->chip->ack(irq); | 347 | desc->chip->ack(irq); |
@@ -350,12 +351,12 @@ static void gpio_irq_handler(unsigned irq, struct irqdesc *desc, struct pt_regs | |||
350 | if (!isr) | 351 | if (!isr) |
351 | break; | 352 | break; |
352 | 353 | ||
353 | pin = (unsigned) desc->data; | 354 | pin = (unsigned) get_irq_data(irq); |
354 | gpio = &irq_desc[pin]; | 355 | gpio = &irq_desc[pin]; |
355 | 356 | ||
356 | while (isr) { | 357 | while (isr) { |
357 | if (isr & 1) { | 358 | if (isr & 1) { |
358 | if (unlikely(gpio->disable_depth)) { | 359 | if (unlikely(gpio->depth)) { |
359 | /* | 360 | /* |
360 | * The core ARM interrupt handler lazily disables IRQs so | 361 | * The core ARM interrupt handler lazily disables IRQs so |
361 | * another IRQ must be generated before it actually gets | 362 | * another IRQ must be generated before it actually gets |
@@ -364,7 +365,7 @@ static void gpio_irq_handler(unsigned irq, struct irqdesc *desc, struct pt_regs | |||
364 | gpio_irq_mask(pin); | 365 | gpio_irq_mask(pin); |
365 | } | 366 | } |
366 | else | 367 | else |
367 | gpio->handle(pin, gpio, regs); | 368 | desc_handle_irq(pin, gpio, regs); |
368 | } | 369 | } |
369 | pin++; | 370 | pin++; |
370 | gpio++; | 371 | gpio++; |
diff --git a/arch/arm/mach-at91rm9200/irq.c b/arch/arm/mach-at91rm9200/irq.c index 70f4d7ac1533..dcd560dbcfb7 100644 --- a/arch/arm/mach-at91rm9200/irq.c +++ b/arch/arm/mach-at91rm9200/irq.c | |||
@@ -20,7 +20,6 @@ | |||
20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
21 | */ | 21 | */ |
22 | 22 | ||
23 | #include <linux/config.h> | ||
24 | #include <linux/init.h> | 23 | #include <linux/init.h> |
25 | #include <linux/module.h> | 24 | #include <linux/module.h> |
26 | #include <linux/mm.h> | 25 | #include <linux/mm.h> |
diff --git a/arch/arm/mach-at91rm9200/leds.c b/arch/arm/mach-at91rm9200/leds.c index 28150e8905ba..1a333730466e 100644 --- a/arch/arm/mach-at91rm9200/leds.c +++ b/arch/arm/mach-at91rm9200/leds.c | |||
@@ -9,7 +9,6 @@ | |||
9 | * 2 of the License, or (at your option) any later version. | 9 | * 2 of the License, or (at your option) any later version. |
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include <linux/config.h> | ||
13 | #include <linux/kernel.h> | 12 | #include <linux/kernel.h> |
14 | #include <linux/module.h> | 13 | #include <linux/module.h> |
15 | #include <linux/init.h> | 14 | #include <linux/init.h> |