aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Victor <andrew@sanpeople.com>2006-06-20 14:30:20 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-06-20 14:30:20 -0400
commit5c3fddced9f62f4b175ce400bb96b23f47626e50 (patch)
tree52bad626b8b5111eb727f4a5fcc586f60c88c426
parent907d6deb625cd7ff5fea3ef4b20dfb6c1c19c3ee (diff)
[ARM] 3607/1: AT91RM9200 misc fixes
Patch from Andrew Victor This final patch includes some general fixes. 1. Link in pm.o if CONFIG_PM is enabled. [Should have been included in patch 3605/1]. 2. Use __raw_readl()/__raw_writel() when accessing System Peripheral registers. 3. Removed some unnecessary includes Signed-off-by: Andrew Victor <andrew@sanpeople.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/mach-at91rm9200/Makefile7
-rw-r--r--include/asm-arm/arch-at91rm9200/hardware.h4
-rw-r--r--include/asm-arm/arch-at91rm9200/io.h1
-rw-r--r--include/asm-arm/arch-at91rm9200/irqs.h2
4 files changed, 9 insertions, 5 deletions
diff --git a/arch/arm/mach-at91rm9200/Makefile b/arch/arm/mach-at91rm9200/Makefile
index c8f544b789c0..81ebc6684ad2 100644
--- a/arch/arm/mach-at91rm9200/Makefile
+++ b/arch/arm/mach-at91rm9200/Makefile
@@ -7,6 +7,8 @@ obj-m :=
7obj-n := 7obj-n :=
8obj- := 8obj- :=
9 9
10obj-$(CONFIG_PM) += pm.o
11
10# Board-specific support 12# Board-specific support
11obj-$(CONFIG_ARCH_AT91RM9200DK) += board-dk.o 13obj-$(CONFIG_ARCH_AT91RM9200DK) += board-dk.o
12obj-$(CONFIG_MACH_AT91RM9200EK) += board-ek.o 14obj-$(CONFIG_MACH_AT91RM9200EK) += board-ek.o
@@ -28,3 +30,8 @@ obj-$(CONFIG_LEDS) += $(led-y)
28 30
29# VGA support 31# VGA support
30#obj-$(CONFIG_FB_S1D13XXX) += ics1523.o 32#obj-$(CONFIG_FB_S1D13XXX) += ics1523.o
33
34
35ifeq ($(CONFIG_PM_DEBUG),y)
36CFLAGS_pm.o += -DDEBUG
37endif
diff --git a/include/asm-arm/arch-at91rm9200/hardware.h b/include/asm-arm/arch-at91rm9200/hardware.h
index 87f40df57140..235d39d91107 100644
--- a/include/asm-arm/arch-at91rm9200/hardware.h
+++ b/include/asm-arm/arch-at91rm9200/hardware.h
@@ -84,14 +84,14 @@ static inline unsigned int at91_sys_read(unsigned int reg_offset)
84{ 84{
85 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS; 85 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS;
86 86
87 return readl(addr + reg_offset); 87 return __raw_readl(addr + reg_offset);
88} 88}
89 89
90static inline void at91_sys_write(unsigned int reg_offset, unsigned long value) 90static inline void at91_sys_write(unsigned int reg_offset, unsigned long value)
91{ 91{
92 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS; 92 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS;
93 93
94 writel(value, addr + reg_offset); 94 __raw_writel(value, addr + reg_offset);
95} 95}
96#endif 96#endif
97 97
diff --git a/include/asm-arm/arch-at91rm9200/io.h b/include/asm-arm/arch-at91rm9200/io.h
index 23e670d85c9d..88fd1bebcef3 100644
--- a/include/asm-arm/arch-at91rm9200/io.h
+++ b/include/asm-arm/arch-at91rm9200/io.h
@@ -21,7 +21,6 @@
21#ifndef __ASM_ARCH_IO_H 21#ifndef __ASM_ARCH_IO_H
22#define __ASM_ARCH_IO_H 22#define __ASM_ARCH_IO_H
23 23
24#include <asm/arch/at91rm9200.h>
25#include <asm/io.h> 24#include <asm/io.h>
26 25
27#define IO_SPACE_LIMIT 0xFFFFFFFF 26#define IO_SPACE_LIMIT 0xFFFFFFFF
diff --git a/include/asm-arm/arch-at91rm9200/irqs.h b/include/asm-arm/arch-at91rm9200/irqs.h
index 27b0497f1b36..2dc93b174a8f 100644
--- a/include/asm-arm/arch-at91rm9200/irqs.h
+++ b/include/asm-arm/arch-at91rm9200/irqs.h
@@ -37,8 +37,6 @@
37 * symbols in gpio.h for ones handled indirectly as GPIOs. 37 * symbols in gpio.h for ones handled indirectly as GPIOs.
38 * We make provision for 4 banks of GPIO. 38 * We make provision for 4 banks of GPIO.
39 */ 39 */
40#include <asm/arch/gpio.h>
41
42#define NR_IRQS (NR_AIC_IRQS + (4 * 32)) 40#define NR_IRQS (NR_AIC_IRQS + (4 * 32))
43 41
44 42