aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2007-05-12 11:12:12 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-05-12 11:12:12 -0400
commit158304ef09a28c7f2dd37d78f536a4e09ba084a1 (patch)
tree2e6d808fef46d70268e547ccfc5926a865e3d2ea
parent641e79129a56a4c50be1aed0fa713f440b46a440 (diff)
parent25f4a81ef51b7c279786f5b81fe6d89510f46d99 (diff)
Merge branch 'fixes' into devel
-rw-r--r--arch/arm/Kconfig1
-rw-r--r--arch/arm/kernel/armksyms.c1
-rw-r--r--arch/arm/kernel/stacktrace.c12
-rw-r--r--arch/arm/mach-at91/Makefile1
-rw-r--r--arch/arm/mach-at91/board-sam9261ek.c3
-rw-r--r--arch/arm/mach-ebsa110/io.c8
-rw-r--r--arch/arm/mach-omap1/board-h2.c2
-rw-r--r--arch/arm/mach-omap1/pm.c11
-rw-r--r--arch/arm/mach-omap2/mux.c33
-rw-r--r--arch/arm/plat-omap/dma.c4
-rw-r--r--arch/arm/plat-omap/mux.c19
-rw-r--r--include/asm-arm/arch-at91/hardware.h17
-rw-r--r--include/asm-arm/arch-at91/io.h18
-rw-r--r--include/asm-arm/arch-at91/irqs.h1
-rw-r--r--include/asm-arm/arch-at91/uncompress.h2
-rw-r--r--include/asm-arm/arch-iop13xx/io.h2
-rw-r--r--include/asm-arm/arch-iop32x/io.h2
-rw-r--r--include/asm-arm/arch-iop33x/io.h2
-rw-r--r--include/asm-arm/arch-omap/mux.h31
19 files changed, 115 insertions, 55 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 35c5326311b3..e55bbd32dcac 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -357,7 +357,6 @@ config ARCH_SA1100
357config ARCH_S3C2410 357config ARCH_S3C2410
358 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443" 358 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443"
359 select GENERIC_GPIO 359 select GENERIC_GPIO
360 select GENERIC_TIME
361 help 360 help
362 Samsung S3C2410X CPU based systems, such as the Simtec Electronics 361 Samsung S3C2410X CPU based systems, such as the Simtec Electronics
363 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 362 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
diff --git a/arch/arm/kernel/armksyms.c b/arch/arm/kernel/armksyms.c
index 4779f474f911..9179e8220314 100644
--- a/arch/arm/kernel/armksyms.c
+++ b/arch/arm/kernel/armksyms.c
@@ -76,6 +76,7 @@ EXPORT_SYMBOL(__const_udelay);
76 76
77 /* networking */ 77 /* networking */
78EXPORT_SYMBOL(csum_partial); 78EXPORT_SYMBOL(csum_partial);
79EXPORT_SYMBOL(csum_partial_copy_from_user);
79EXPORT_SYMBOL(csum_partial_copy_nocheck); 80EXPORT_SYMBOL(csum_partial_copy_nocheck);
80EXPORT_SYMBOL(__csum_ipv6_magic); 81EXPORT_SYMBOL(__csum_ipv6_magic);
81 82
diff --git a/arch/arm/kernel/stacktrace.c b/arch/arm/kernel/stacktrace.c
index 77ef35efaa8d..398d0c0511eb 100644
--- a/arch/arm/kernel/stacktrace.c
+++ b/arch/arm/kernel/stacktrace.c
@@ -52,21 +52,15 @@ static int save_trace(struct stackframe *frame, void *d)
52 return trace->nr_entries >= trace->max_entries; 52 return trace->nr_entries >= trace->max_entries;
53} 53}
54 54
55void save_stack_trace(struct stack_trace *trace, struct task_struct *task) 55void save_stack_trace(struct stack_trace *trace)
56{ 56{
57 struct stack_trace_data data; 57 struct stack_trace_data data;
58 unsigned long fp, base; 58 unsigned long fp, base;
59 59
60 data.trace = trace; 60 data.trace = trace;
61 data.skip = trace->skip; 61 data.skip = trace->skip;
62 62 base = (unsigned long)task_stack_page(current);
63 if (task) { 63 asm("mov %0, fp" : "=r" (fp));
64 base = (unsigned long)task_stack_page(task);
65 fp = 0; /* FIXME */
66 } else {
67 base = (unsigned long)task_stack_page(current);
68 asm("mov %0, fp" : "=r" (fp));
69 }
70 64
71 walk_stackframe(fp, base, base + THREAD_SIZE, save_trace, &data); 65 walk_stackframe(fp, base, base + THREAD_SIZE, save_trace, &data);
72} 66}
diff --git a/arch/arm/mach-at91/Makefile b/arch/arm/mach-at91/Makefile
index 56b0d06c764b..a4d80eb056ee 100644
--- a/arch/arm/mach-at91/Makefile
+++ b/arch/arm/mach-at91/Makefile
@@ -43,6 +43,7 @@ obj-$(CONFIG_MACH_AT91SAM9RLEK) += board-sam9rlek.o
43# LEDs support 43# LEDs support
44led-$(CONFIG_ARCH_AT91RM9200DK) += leds.o 44led-$(CONFIG_ARCH_AT91RM9200DK) += leds.o
45led-$(CONFIG_MACH_AT91RM9200EK) += leds.o 45led-$(CONFIG_MACH_AT91RM9200EK) += leds.o
46led-$(CONFIG_MACH_AT91SAM9261EK)+= leds.o
46led-$(CONFIG_MACH_CSB337) += leds.o 47led-$(CONFIG_MACH_CSB337) += leds.o
47led-$(CONFIG_MACH_CSB637) += leds.o 48led-$(CONFIG_MACH_CSB637) += leds.o
48led-$(CONFIG_MACH_KB9200) += leds.o 49led-$(CONFIG_MACH_KB9200) += leds.o
diff --git a/arch/arm/mach-at91/board-sam9261ek.c b/arch/arm/mach-at91/board-sam9261ek.c
index bcf71536cc6d..1f0c8a400b3a 100644
--- a/arch/arm/mach-at91/board-sam9261ek.c
+++ b/arch/arm/mach-at91/board-sam9261ek.c
@@ -60,6 +60,9 @@ static void __init ek_map_io(void)
60 /* Initialize processor: 18.432 MHz crystal */ 60 /* Initialize processor: 18.432 MHz crystal */
61 at91sam9261_initialize(18432000); 61 at91sam9261_initialize(18432000);
62 62
63 /* Setup the LEDs */
64 at91_init_leds(AT91_PIN_PA13, AT91_PIN_PA14);
65
63 /* Setup the serial ports and console */ 66 /* Setup the serial ports and console */
64 at91_init_serial(&ek_uart_config); 67 at91_init_serial(&ek_uart_config);
65} 68}
diff --git a/arch/arm/mach-ebsa110/io.c b/arch/arm/mach-ebsa110/io.c
index bbf0d332407e..6b2380e153ef 100644
--- a/arch/arm/mach-ebsa110/io.c
+++ b/arch/arm/mach-ebsa110/io.c
@@ -102,7 +102,7 @@ EXPORT_SYMBOL(__readb);
102EXPORT_SYMBOL(__readw); 102EXPORT_SYMBOL(__readw);
103EXPORT_SYMBOL(__readl); 103EXPORT_SYMBOL(__readl);
104 104
105void readsw(void __iomem *addr, void *data, int len) 105void readsw(const void __iomem *addr, void *data, int len)
106{ 106{
107 void __iomem *a = __isamem_convert_addr(addr); 107 void __iomem *a = __isamem_convert_addr(addr);
108 108
@@ -112,7 +112,7 @@ void readsw(void __iomem *addr, void *data, int len)
112} 112}
113EXPORT_SYMBOL(readsw); 113EXPORT_SYMBOL(readsw);
114 114
115void readsl(void __iomem *addr, void *data, int len) 115void readsl(const void __iomem *addr, void *data, int len)
116{ 116{
117 void __iomem *a = __isamem_convert_addr(addr); 117 void __iomem *a = __isamem_convert_addr(addr);
118 118
@@ -157,7 +157,7 @@ EXPORT_SYMBOL(__writeb);
157EXPORT_SYMBOL(__writew); 157EXPORT_SYMBOL(__writew);
158EXPORT_SYMBOL(__writel); 158EXPORT_SYMBOL(__writel);
159 159
160void writesw(void __iomem *addr, void *data, int len) 160void writesw(void __iomem *addr, const void *data, int len)
161{ 161{
162 void __iomem *a = __isamem_convert_addr(addr); 162 void __iomem *a = __isamem_convert_addr(addr);
163 163
@@ -167,7 +167,7 @@ void writesw(void __iomem *addr, void *data, int len)
167} 167}
168EXPORT_SYMBOL(writesw); 168EXPORT_SYMBOL(writesw);
169 169
170void writesl(void __iomem *addr, void *data, int len) 170void writesl(void __iomem *addr, const void *data, int len)
171{ 171{
172 void __iomem *a = __isamem_convert_addr(addr); 172 void __iomem *a = __isamem_convert_addr(addr);
173 173
diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c
index ad519390dd58..48c8c9195dc3 100644
--- a/arch/arm/mach-omap1/board-h2.c
+++ b/arch/arm/mach-omap1/board-h2.c
@@ -326,7 +326,7 @@ static struct omap_lcd_config h2_lcd_config __initdata = {
326 .ctrl_name = "internal", 326 .ctrl_name = "internal",
327}; 327};
328 328
329static struct omap_board_config_kernel h2_config[] = { 329static struct omap_board_config_kernel h2_config[] __initdata = {
330 { OMAP_TAG_USB, &h2_usb_config }, 330 { OMAP_TAG_USB, &h2_usb_config },
331 { OMAP_TAG_MMC, &h2_mmc_config }, 331 { OMAP_TAG_MMC, &h2_mmc_config },
332 { OMAP_TAG_UART, &h2_uart_config }, 332 { OMAP_TAG_UART, &h2_uart_config },
diff --git a/arch/arm/mach-omap1/pm.c b/arch/arm/mach-omap1/pm.c
index 6f4ea4bda5e0..8caee68aa090 100644
--- a/arch/arm/mach-omap1/pm.c
+++ b/arch/arm/mach-omap1/pm.c
@@ -1,4 +1,3 @@
1//kernel/linux-omap-fsample/arch/arm/mach-omap1/pm.c#3 - integrate change 4545 (text)
2/* 1/*
3 * linux/arch/arm/mach-omap1/pm.c 2 * linux/arch/arm/mach-omap1/pm.c
4 * 3 *
@@ -377,7 +376,7 @@ void omap_pm_suspend(void)
377 * Jump to assembly code. The processor will stay there 376 * Jump to assembly code. The processor will stay there
378 * until wake up. 377 * until wake up.
379 */ 378 */
380 omap_sram_suspend(arg0, arg1); 379 omap_sram_suspend(arg0, arg1);
381 380
382 /* 381 /*
383 * If we are here, processor is woken up! 382 * If we are here, processor is woken up!
@@ -631,10 +630,6 @@ static int omap_pm_prepare(suspend_state_t state)
631 case PM_SUSPEND_STANDBY: 630 case PM_SUSPEND_STANDBY:
632 case PM_SUSPEND_MEM: 631 case PM_SUSPEND_MEM:
633 break; 632 break;
634
635 case PM_SUSPEND_DISK:
636 return -ENOTSUPP;
637
638 default: 633 default:
639 return -EINVAL; 634 return -EINVAL;
640 } 635 }
@@ -657,10 +652,6 @@ static int omap_pm_enter(suspend_state_t state)
657 case PM_SUSPEND_MEM: 652 case PM_SUSPEND_MEM:
658 omap_pm_suspend(); 653 omap_pm_suspend();
659 break; 654 break;
660
661 case PM_SUSPEND_DISK:
662 return -ENOTSUPP;
663
664 default: 655 default:
665 return -EINVAL; 656 return -EINVAL;
666 } 657 }
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index f538d0fdb13c..0439906d5da7 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -43,7 +43,7 @@ struct pin_config __initdata_or_module omap24xx_pins[] = {
43/* 24xx I2C */ 43/* 24xx I2C */
44MUX_CFG_24XX("M19_24XX_I2C1_SCL", 0x111, 0, 0, 0, 1) 44MUX_CFG_24XX("M19_24XX_I2C1_SCL", 0x111, 0, 0, 0, 1)
45MUX_CFG_24XX("L15_24XX_I2C1_SDA", 0x112, 0, 0, 0, 1) 45MUX_CFG_24XX("L15_24XX_I2C1_SDA", 0x112, 0, 0, 0, 1)
46MUX_CFG_24XX("J15_24XX_I2C2_SCL", 0x113, 0, 0, 0, 1) 46MUX_CFG_24XX("J15_24XX_I2C2_SCL", 0x113, 0, 0, 1, 1)
47MUX_CFG_24XX("H19_24XX_I2C2_SDA", 0x114, 0, 0, 0, 1) 47MUX_CFG_24XX("H19_24XX_I2C2_SDA", 0x114, 0, 0, 0, 1)
48 48
49/* Menelaus interrupt */ 49/* Menelaus interrupt */
@@ -52,7 +52,9 @@ MUX_CFG_24XX("W19_24XX_SYS_NIRQ", 0x12c, 0, 1, 1, 1)
52/* 24xx clocks */ 52/* 24xx clocks */
53MUX_CFG_24XX("W14_24XX_SYS_CLKOUT", 0x137, 0, 1, 1, 1) 53MUX_CFG_24XX("W14_24XX_SYS_CLKOUT", 0x137, 0, 1, 1, 1)
54 54
55/* 24xx GPMC wait pin monitoring */ 55/* 24xx GPMC chipselects, wait pin monitoring */
56MUX_CFG_24XX("E2_GPMC_NCS2", 0x08e, 0, 1, 1, 1)
57MUX_CFG_24XX("L2_GPMC_NCS7", 0x093, 0, 1, 1, 1)
56MUX_CFG_24XX("L3_GPMC_WAIT0", 0x09a, 0, 1, 1, 1) 58MUX_CFG_24XX("L3_GPMC_WAIT0", 0x09a, 0, 1, 1, 1)
57MUX_CFG_24XX("N7_GPMC_WAIT1", 0x09b, 0, 1, 1, 1) 59MUX_CFG_24XX("N7_GPMC_WAIT1", 0x09b, 0, 1, 1, 1)
58MUX_CFG_24XX("M1_GPMC_WAIT2", 0x09c, 0, 1, 1, 1) 60MUX_CFG_24XX("M1_GPMC_WAIT2", 0x09c, 0, 1, 1, 1)
@@ -66,6 +68,7 @@ MUX_CFG_24XX("V15_24XX_MCBSP2_DX", 0x127, 1, 1, 0, 1)
66 68
67/* 24xx GPIO */ 69/* 24xx GPIO */
68MUX_CFG_24XX("M21_242X_GPIO11", 0x0c9, 3, 1, 1, 1) 70MUX_CFG_24XX("M21_242X_GPIO11", 0x0c9, 3, 1, 1, 1)
71MUX_CFG_24XX("P21_242X_GPIO12", 0x0ca, 3, 0, 0, 1)
69MUX_CFG_24XX("AA10_242X_GPIO13", 0x0e5, 3, 0, 0, 1) 72MUX_CFG_24XX("AA10_242X_GPIO13", 0x0e5, 3, 0, 0, 1)
70MUX_CFG_24XX("AA6_242X_GPIO14", 0x0e6, 3, 0, 0, 1) 73MUX_CFG_24XX("AA6_242X_GPIO14", 0x0e6, 3, 0, 0, 1)
71MUX_CFG_24XX("AA4_242X_GPIO15", 0x0e7, 3, 0, 0, 1) 74MUX_CFG_24XX("AA4_242X_GPIO15", 0x0e7, 3, 0, 0, 1)
@@ -75,7 +78,9 @@ MUX_CFG_24XX("AA8_242X_GPIO58", 0x0ea, 3, 0, 0, 1)
75MUX_CFG_24XX("Y20_24XX_GPIO60", 0x12c, 3, 0, 0, 1) 78MUX_CFG_24XX("Y20_24XX_GPIO60", 0x12c, 3, 0, 0, 1)
76MUX_CFG_24XX("W4__24XX_GPIO74", 0x0f2, 3, 0, 0, 1) 79MUX_CFG_24XX("W4__24XX_GPIO74", 0x0f2, 3, 0, 0, 1)
77MUX_CFG_24XX("M15_24XX_GPIO92", 0x10a, 3, 0, 0, 1) 80MUX_CFG_24XX("M15_24XX_GPIO92", 0x10a, 3, 0, 0, 1)
81MUX_CFG_24XX("J15_24XX_GPIO99", 0x113, 3, 1, 1, 1)
78MUX_CFG_24XX("V14_24XX_GPIO117", 0x128, 3, 1, 0, 1) 82MUX_CFG_24XX("V14_24XX_GPIO117", 0x128, 3, 1, 0, 1)
83MUX_CFG_24XX("P14_24XX_GPIO125", 0x140, 3, 1, 1, 1)
79 84
80/* 242x DBG GPIO */ 85/* 242x DBG GPIO */
81MUX_CFG_24XX("V4_242X_GPIO49", 0xd3, 3, 0, 0, 1) 86MUX_CFG_24XX("V4_242X_GPIO49", 0xd3, 3, 0, 0, 1)
@@ -118,6 +123,30 @@ MUX_CFG_24XX("E18_24XX_MMC_DAT_DIR3", 0x0fc, 0, 0, 0, 1)
118MUX_CFG_24XX("G18_24XX_MMC_CMD_DIR", 0x0fd, 0, 0, 0, 1) 123MUX_CFG_24XX("G18_24XX_MMC_CMD_DIR", 0x0fd, 0, 0, 0, 1)
119MUX_CFG_24XX("H15_24XX_MMC_CLKI", 0x0fe, 0, 0, 0, 1) 124MUX_CFG_24XX("H15_24XX_MMC_CLKI", 0x0fe, 0, 0, 0, 1)
120 125
126/* Full speed USB */
127MUX_CFG_24XX("J20_24XX_USB0_PUEN", 0x11d, 0, 0, 0, 1)
128MUX_CFG_24XX("J19_24XX_USB0_VP", 0x11e, 0, 0, 0, 1)
129MUX_CFG_24XX("K20_24XX_USB0_VM", 0x11f, 0, 0, 0, 1)
130MUX_CFG_24XX("J18_24XX_USB0_RCV", 0x120, 0, 0, 0, 1)
131MUX_CFG_24XX("K19_24XX_USB0_TXEN", 0x121, 0, 0, 0, 1)
132MUX_CFG_24XX("J14_24XX_USB0_SE0", 0x122, 0, 0, 0, 1)
133MUX_CFG_24XX("K18_24XX_USB0_DAT", 0x123, 0, 0, 0, 1)
134
135MUX_CFG_24XX("N14_24XX_USB1_SE0", 0x0ed, 2, 0, 0, 1)
136MUX_CFG_24XX("W12_24XX_USB1_SE0", 0x0dd, 3, 0, 0, 1)
137MUX_CFG_24XX("P15_24XX_USB1_DAT", 0x0ee, 2, 0, 0, 1)
138MUX_CFG_24XX("R13_24XX_USB1_DAT", 0x0e0, 3, 0, 0, 1)
139MUX_CFG_24XX("W20_24XX_USB1_TXEN", 0x0ec, 2, 0, 0, 1)
140MUX_CFG_24XX("P13_24XX_USB1_TXEN", 0x0df, 3, 0, 0, 1)
141MUX_CFG_24XX("V19_24XX_USB1_RCV", 0x0eb, 2, 0, 0, 1)
142MUX_CFG_24XX("V12_24XX_USB1_RCV", 0x0de, 3, 0, 0, 1)
143
144MUX_CFG_24XX("AA10_24XX_USB2_SE0", 0x0e5, 2, 0, 0, 1)
145MUX_CFG_24XX("Y11_24XX_USB2_DAT", 0x0e8, 2, 0, 0, 1)
146MUX_CFG_24XX("AA12_24XX_USB2_TXEN", 0x0e9, 2, 0, 0, 1)
147MUX_CFG_24XX("AA6_24XX_USB2_RCV", 0x0e6, 2, 0, 0, 1)
148MUX_CFG_24XX("AA4_24XX_USB2_TLLSE0", 0x0e7, 2, 0, 0, 1)
149
121/* Keypad GPIO*/ 150/* Keypad GPIO*/
122MUX_CFG_24XX("T19_24XX_KBR0", 0x106, 3, 1, 1, 1) 151MUX_CFG_24XX("T19_24XX_KBR0", 0x106, 3, 1, 1, 1)
123MUX_CFG_24XX("R19_24XX_KBR1", 0x107, 3, 1, 1, 1) 152MUX_CFG_24XX("R19_24XX_KBR1", 0x107, 3, 1, 1, 1)
diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c
index 2d86b106ff3e..55a4d3be16b6 100644
--- a/arch/arm/plat-omap/dma.c
+++ b/arch/arm/plat-omap/dma.c
@@ -747,7 +747,7 @@ int omap_set_dma_callback(int lch,
747 */ 747 */
748dma_addr_t omap_get_dma_src_pos(int lch) 748dma_addr_t omap_get_dma_src_pos(int lch)
749{ 749{
750 dma_addr_t offset; 750 dma_addr_t offset = 0;
751 751
752 if (cpu_class_is_omap1()) 752 if (cpu_class_is_omap1())
753 offset = (dma_addr_t) (OMAP1_DMA_CSSA_L_REG(lch) | 753 offset = (dma_addr_t) (OMAP1_DMA_CSSA_L_REG(lch) |
@@ -769,7 +769,7 @@ dma_addr_t omap_get_dma_src_pos(int lch)
769 */ 769 */
770dma_addr_t omap_get_dma_dst_pos(int lch) 770dma_addr_t omap_get_dma_dst_pos(int lch)
771{ 771{
772 dma_addr_t offset; 772 dma_addr_t offset = 0;
773 773
774 if (cpu_class_is_omap1()) 774 if (cpu_class_is_omap1())
775 offset = (dma_addr_t) (OMAP1_DMA_CDSA_L_REG(lch) | 775 offset = (dma_addr_t) (OMAP1_DMA_CDSA_L_REG(lch) |
diff --git a/arch/arm/plat-omap/mux.c b/arch/arm/plat-omap/mux.c
index 6c798d288688..75211f20ccb3 100644
--- a/arch/arm/plat-omap/mux.c
+++ b/arch/arm/plat-omap/mux.c
@@ -83,10 +83,21 @@ int __init_or_module omap_cfg_reg(const unsigned long index)
83 reg |= OMAP24XX_PULL_ENA; 83 reg |= OMAP24XX_PULL_ENA;
84 if(cfg->pu_pd_val) 84 if(cfg->pu_pd_val)
85 reg |= OMAP24XX_PULL_UP; 85 reg |= OMAP24XX_PULL_UP;
86#ifdef CONFIG_OMAP_MUX_DEBUG 86#if defined(CONFIG_OMAP_MUX_DEBUG) || defined(CONFIG_OMAP_MUX_WARNINGS)
87 printk("Muxing %s (0x%08x): 0x%02x -> 0x%02x\n", 87 {
88 cfg->name, OMAP24XX_L4_BASE + cfg->mux_reg, 88 u8 orig = omap_readb(OMAP24XX_L4_BASE + cfg->mux_reg);
89 omap_readb(OMAP24XX_L4_BASE + cfg->mux_reg), reg); 89 u8 debug = 0;
90
91#ifdef CONFIG_OMAP_MUX_DEBUG
92 debug = cfg->debug;
93#endif
94 warn = (orig != reg);
95 if (debug || warn)
96 printk("MUX: setup %s (0x%08x): 0x%02x -> 0x%02x\n",
97 cfg->name,
98 OMAP24XX_L4_BASE + cfg->mux_reg,
99 orig, reg);
100 }
90#endif 101#endif
91 omap_writeb(reg, OMAP24XX_L4_BASE + cfg->mux_reg); 102 omap_writeb(reg, OMAP24XX_L4_BASE + cfg->mux_reg);
92 103
diff --git a/include/asm-arm/arch-at91/hardware.h b/include/asm-arm/arch-at91/hardware.h
index 0e51ad224eaa..46835e945aea 100644
--- a/include/asm-arm/arch-at91/hardware.h
+++ b/include/asm-arm/arch-at91/hardware.h
@@ -71,22 +71,5 @@
71/* Clocks */ 71/* Clocks */
72#define AT91_SLOW_CLOCK 32768 /* slow clock */ 72#define AT91_SLOW_CLOCK 32768 /* slow clock */
73 73
74#ifndef __ASSEMBLY__
75#include <asm/io.h>
76
77static inline unsigned int at91_sys_read(unsigned int reg_offset)
78{
79 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS;
80
81 return __raw_readl(addr + reg_offset);
82}
83
84static inline void at91_sys_write(unsigned int reg_offset, unsigned long value)
85{
86 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS;
87
88 __raw_writel(value, addr + reg_offset);
89}
90#endif
91 74
92#endif 75#endif
diff --git a/include/asm-arm/arch-at91/io.h b/include/asm-arm/arch-at91/io.h
index 401f327ec047..80073fd36b8e 100644
--- a/include/asm-arm/arch-at91/io.h
+++ b/include/asm-arm/arch-at91/io.h
@@ -29,4 +29,22 @@
29#define __mem_pci(a) (a) 29#define __mem_pci(a) (a)
30 30
31 31
32#ifndef __ASSEMBLY__
33
34static inline unsigned int at91_sys_read(unsigned int reg_offset)
35{
36 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS;
37
38 return __raw_readl(addr + reg_offset);
39}
40
41static inline void at91_sys_write(unsigned int reg_offset, unsigned long value)
42{
43 void __iomem *addr = (void __iomem *)AT91_VA_BASE_SYS;
44
45 __raw_writel(value, addr + reg_offset);
46}
47
48#endif
49
32#endif 50#endif
diff --git a/include/asm-arm/arch-at91/irqs.h b/include/asm-arm/arch-at91/irqs.h
index 1ffa3bb9a9c1..1127a3b5e928 100644
--- a/include/asm-arm/arch-at91/irqs.h
+++ b/include/asm-arm/arch-at91/irqs.h
@@ -21,6 +21,7 @@
21#ifndef __ASM_ARCH_IRQS_H 21#ifndef __ASM_ARCH_IRQS_H
22#define __ASM_ARCH_IRQS_H 22#define __ASM_ARCH_IRQS_H
23 23
24#include <asm/io.h>
24#include <asm/arch/at91_aic.h> 25#include <asm/arch/at91_aic.h>
25 26
26#define NR_AIC_IRQS 32 27#define NR_AIC_IRQS 32
diff --git a/include/asm-arm/arch-at91/uncompress.h b/include/asm-arm/arch-at91/uncompress.h
index a193d28304b6..30ac587b3b41 100644
--- a/include/asm-arm/arch-at91/uncompress.h
+++ b/include/asm-arm/arch-at91/uncompress.h
@@ -21,7 +21,7 @@
21#ifndef __ASM_ARCH_UNCOMPRESS_H 21#ifndef __ASM_ARCH_UNCOMPRESS_H
22#define __ASM_ARCH_UNCOMPRESS_H 22#define __ASM_ARCH_UNCOMPRESS_H
23 23
24#include <asm/hardware.h> 24#include <asm/io.h>
25#include <asm/arch/at91_dbgu.h> 25#include <asm/arch/at91_dbgu.h>
26 26
27/* 27/*
diff --git a/include/asm-arm/arch-iop13xx/io.h b/include/asm-arm/arch-iop13xx/io.h
index 7dfff4ad82b3..a6e0f9e6ddcf 100644
--- a/include/asm-arm/arch-iop13xx/io.h
+++ b/include/asm-arm/arch-iop13xx/io.h
@@ -27,7 +27,7 @@
27 27
28extern void __iomem * __iop13xx_io(unsigned long io_addr); 28extern void __iomem * __iop13xx_io(unsigned long io_addr);
29extern void __iomem *__iop13xx_ioremap(unsigned long cookie, size_t size, 29extern void __iomem *__iop13xx_ioremap(unsigned long cookie, size_t size,
30 unsigned long flags); 30 unsigned int mtype);
31extern void __iop13xx_iounmap(void __iomem *addr); 31extern void __iop13xx_iounmap(void __iomem *addr);
32 32
33extern u32 iop13xx_atue_mem_base; 33extern u32 iop13xx_atue_mem_base;
diff --git a/include/asm-arm/arch-iop32x/io.h b/include/asm-arm/arch-iop32x/io.h
index 994f16af5057..958af751a484 100644
--- a/include/asm-arm/arch-iop32x/io.h
+++ b/include/asm-arm/arch-iop32x/io.h
@@ -14,7 +14,7 @@
14#include <asm/hardware.h> 14#include <asm/hardware.h>
15 15
16extern void __iomem *__iop3xx_ioremap(unsigned long cookie, size_t size, 16extern void __iomem *__iop3xx_ioremap(unsigned long cookie, size_t size,
17 unsigned long flags); 17 unsigned int mtype);
18extern void __iop3xx_iounmap(void __iomem *addr); 18extern void __iop3xx_iounmap(void __iomem *addr);
19 19
20#define IO_SPACE_LIMIT 0xffffffff 20#define IO_SPACE_LIMIT 0xffffffff
diff --git a/include/asm-arm/arch-iop33x/io.h b/include/asm-arm/arch-iop33x/io.h
index 993f7589b29f..fec9c53e2b10 100644
--- a/include/asm-arm/arch-iop33x/io.h
+++ b/include/asm-arm/arch-iop33x/io.h
@@ -14,7 +14,7 @@
14#include <asm/hardware.h> 14#include <asm/hardware.h>
15 15
16extern void __iomem *__iop3xx_ioremap(unsigned long cookie, size_t size, 16extern void __iomem *__iop3xx_ioremap(unsigned long cookie, size_t size,
17 unsigned long flags); 17 unsigned int mtype);
18extern void __iop3xx_iounmap(void __iomem *addr); 18extern void __iop3xx_iounmap(void __iomem *addr);
19 19
20#define IO_SPACE_LIMIT 0xffffffff 20#define IO_SPACE_LIMIT 0xffffffff
diff --git a/include/asm-arm/arch-omap/mux.h b/include/asm-arm/arch-omap/mux.h
index 828cc5c114e1..f1ec2edd4040 100644
--- a/include/asm-arm/arch-omap/mux.h
+++ b/include/asm-arm/arch-omap/mux.h
@@ -421,7 +421,9 @@ enum omap24xx_index {
421 /* 24xx clock */ 421 /* 24xx clock */
422 W14_24XX_SYS_CLKOUT, 422 W14_24XX_SYS_CLKOUT,
423 423
424 /* 24xx GPMC wait pin monitoring */ 424 /* 24xx GPMC chipselects, wait pin monitoring */
425 E2_GPMC_NCS2,
426 L2_GPMC_NCS7,
425 L3_GPMC_WAIT0, 427 L3_GPMC_WAIT0,
426 N7_GPMC_WAIT1, 428 N7_GPMC_WAIT1,
427 M1_GPMC_WAIT2, 429 M1_GPMC_WAIT2,
@@ -435,6 +437,7 @@ enum omap24xx_index {
435 437
436 /* 24xx GPIO */ 438 /* 24xx GPIO */
437 M21_242X_GPIO11, 439 M21_242X_GPIO11,
440 P21_242X_GPIO12,
438 AA10_242X_GPIO13, 441 AA10_242X_GPIO13,
439 AA6_242X_GPIO14, 442 AA6_242X_GPIO14,
440 AA4_242X_GPIO15, 443 AA4_242X_GPIO15,
@@ -444,7 +447,9 @@ enum omap24xx_index {
444 Y20_24XX_GPIO60, 447 Y20_24XX_GPIO60,
445 W4__24XX_GPIO74, 448 W4__24XX_GPIO74,
446 M15_24XX_GPIO92, 449 M15_24XX_GPIO92,
450 J15_24XX_GPIO99,
447 V14_24XX_GPIO117, 451 V14_24XX_GPIO117,
452 P14_24XX_GPIO125,
448 453
449 /* 242x DBG GPIO */ 454 /* 242x DBG GPIO */
450 V4_242X_GPIO49, 455 V4_242X_GPIO49,
@@ -486,6 +491,30 @@ enum omap24xx_index {
486 G18_24XX_MMC_CMD_DIR, 491 G18_24XX_MMC_CMD_DIR,
487 H15_24XX_MMC_CLKI, 492 H15_24XX_MMC_CLKI,
488 493
494 /* Full speed USB */
495 J20_24XX_USB0_PUEN,
496 J19_24XX_USB0_VP,
497 K20_24XX_USB0_VM,
498 J18_24XX_USB0_RCV,
499 K19_24XX_USB0_TXEN,
500 J14_24XX_USB0_SE0,
501 K18_24XX_USB0_DAT,
502
503 N14_24XX_USB1_SE0,
504 W12_24XX_USB1_SE0,
505 P15_24XX_USB1_DAT,
506 R13_24XX_USB1_DAT,
507 W20_24XX_USB1_TXEN,
508 P13_24XX_USB1_TXEN,
509 V19_24XX_USB1_RCV,
510 V12_24XX_USB1_RCV,
511
512 AA10_24XX_USB2_SE0,
513 Y11_24XX_USB2_DAT,
514 AA12_24XX_USB2_TXEN,
515 AA6_24XX_USB2_RCV,
516 AA4_24XX_USB2_TLLSE0,
517
489 /* Keypad GPIO*/ 518 /* Keypad GPIO*/
490 T19_24XX_KBR0, 519 T19_24XX_KBR0,
491 R19_24XX_KBR1, 520 R19_24XX_KBR1,