diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-22 20:32:09 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-22 20:32:09 -0500 |
commit | 591eb85ecd7e6eb8596c6129ae074e16636b99f4 (patch) | |
tree | 535fb7e9bc29113ff62fd70b0dcd8ad197ab51e2 /include | |
parent | 4658f79bec0b51222e769e328c2923f39f3bda77 (diff) | |
parent | 3a2916aa289504d694072a98876d23ca31d6401e (diff) |
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: (45 commits)
[ARM] 3389/1: typo and grammar fix
[ARM] 3386/1: AT91RM9200 Clock update
[ARM] 3384/1: AT91RM9200: Timer
[ARM] 3382/1: ixp2000: unify defconfigs
[ARM] 3381/1: ixp2000: fix slowport write timing control register fields
[ARM] 3380/1: ixp2000: simplify ixdp2x00_master_npu() check
[ARM] 3379/1: ixp2000: use generic 8250 debug macros
[ARM] 3378/1: ixp2000: fix gpio interrupt handling
[ARM] Quieten spurious IRQ detection
[ARM] Use kcalloc to allocate counter_config array rather than kmalloc
[ARM] Oprofile: dynamically allocate counter_config
[ARM] Oprofile: Convert semaphore to mutex
[ARM] 3376/2: S3C2410 - update defconfig
[ARM] 3375/1: S3C2440 - fix osiris machine build
[ARM] 3374/1: ep93xx: gpio interrupt support
[ARM] 3361/1: S3C24XX - add USB bus clock source
[ARM] 3360/1: S3C2440 - add set rate methods and camera clock
[ARM] 3359/1: S3C24XX - add support for clk_set_rate
[ARM] Convert kmalloc+memset to kzalloc
[ARM] 3373/1: move uengine loader to arch/arm/common
...
Diffstat (limited to 'include')
71 files changed, 816 insertions, 525 deletions
diff --git a/include/asm-arm/arch-aaec2000/param.h b/include/asm-arm/arch-aaec2000/param.h deleted file mode 100644 index 139936c2faf2..000000000000 --- a/include/asm-arm/arch-aaec2000/param.h +++ /dev/null | |||
@@ -1,15 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-aaec2000/param.h | ||
3 | * | ||
4 | * Copyright (c) 2005 Nicolas Bellido Y Ortega | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | |||
11 | #ifndef __ASM_ARCH_PARAM_H | ||
12 | #define __ASM_ARCH_PARAM_H | ||
13 | |||
14 | #endif /* __ASM_ARCH_PARAM_H */ | ||
15 | |||
diff --git a/include/asm-arm/arch-at91rm9200/param.h b/include/asm-arm/arch-at91rm9200/param.h deleted file mode 100644 index 9480f8446852..000000000000 --- a/include/asm-arm/arch-at91rm9200/param.h +++ /dev/null | |||
@@ -1,28 +0,0 @@ | |||
1 | /* | ||
2 | * include/asm-arm/arch-at91rm9200/param.h | ||
3 | * | ||
4 | * Copyright (C) 2003 SAN People | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | |||
21 | #ifndef __ASM_ARCH_PARAM_H | ||
22 | #define __ASM_ARCH_PARAM_H | ||
23 | |||
24 | /* | ||
25 | * We use default params | ||
26 | */ | ||
27 | |||
28 | #endif | ||
diff --git a/include/asm-arm/arch-cl7500/debug-macro.S b/include/asm-arm/arch-cl7500/debug-macro.S index a5d489d7955a..9a2b67d24098 100644 --- a/include/asm-arm/arch-cl7500/debug-macro.S +++ b/include/asm-arm/arch-cl7500/debug-macro.S | |||
@@ -17,15 +17,5 @@ | |||
17 | orr \rx, \rx, #0x00000be0 | 17 | orr \rx, \rx, #0x00000be0 |
18 | .endm | 18 | .endm |
19 | 19 | ||
20 | .macro senduart,rd,rx | 20 | #define UART_SHIFT 2 |
21 | strb \rd, [\rx] | 21 | #include <asm/hardware/debug-8250.S> |
22 | .endm | ||
23 | |||
24 | .macro busyuart,rd,rx | ||
25 | .endm | ||
26 | |||
27 | .macro waituart,rd,rx | ||
28 | 1001: ldrb \rd, [\rx, #0x14] | ||
29 | tst \rd, #0x20 | ||
30 | beq 1001b | ||
31 | .endm | ||
diff --git a/include/asm-arm/arch-cl7500/param.h b/include/asm-arm/arch-cl7500/param.h deleted file mode 100644 index 974bf69fbb1a..000000000000 --- a/include/asm-arm/arch-cl7500/param.h +++ /dev/null | |||
@@ -1,5 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-cl7500/param.h | ||
3 | * | ||
4 | * Copyright (C) 1999 Nexus Electronics Ltd | ||
5 | */ | ||
diff --git a/include/asm-arm/arch-clps711x/param.h b/include/asm-arm/arch-clps711x/param.h deleted file mode 100644 index 86f6bd29623d..000000000000 --- a/include/asm-arm/arch-clps711x/param.h +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-clps711x/param.h | ||
3 | * | ||
4 | * Copyright (C) 2000 Deep Blue Solutions Ltd. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
diff --git a/include/asm-arm/arch-ebsa110/debug-macro.S b/include/asm-arm/arch-ebsa110/debug-macro.S index dcd03a40c502..f61cadabe0ec 100644 --- a/include/asm-arm/arch-ebsa110/debug-macro.S +++ b/include/asm-arm/arch-ebsa110/debug-macro.S | |||
@@ -16,19 +16,6 @@ | |||
16 | orr \rx, \rx, #0x00000be0 | 16 | orr \rx, \rx, #0x00000be0 |
17 | .endm | 17 | .endm |
18 | 18 | ||
19 | .macro senduart,rd,rx | 19 | #define UART_SHIFT 2 |
20 | strb \rd, [\rx] | 20 | #define FLOW_CONTROL |
21 | .endm | 21 | #include <asm/hardware/debug-8250.h> |
22 | |||
23 | .macro busyuart,rd,rx | ||
24 | 1002: ldrb \rd, [\rx, #0x14] | ||
25 | and \rd, \rd, #0x60 | ||
26 | teq \rd, #0x60 | ||
27 | bne 1002b | ||
28 | .endm | ||
29 | |||
30 | .macro waituart,rd,rx | ||
31 | 1001: ldrb \rd, [\rx, #0x18] | ||
32 | tst \rd, #0x10 | ||
33 | beq 1001b | ||
34 | .endm | ||
diff --git a/include/asm-arm/arch-ebsa110/param.h b/include/asm-arm/arch-ebsa110/param.h deleted file mode 100644 index be19b08d1c75..000000000000 --- a/include/asm-arm/arch-ebsa110/param.h +++ /dev/null | |||
@@ -1,4 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ebsa110/param.h | ||
3 | */ | ||
4 | #define HZ 200 | ||
diff --git a/include/asm-arm/arch-ebsa285/debug-macro.S b/include/asm-arm/arch-ebsa285/debug-macro.S index 97d15fc629af..b48cec4a0c45 100644 --- a/include/asm-arm/arch-ebsa285/debug-macro.S +++ b/include/asm-arm/arch-ebsa285/debug-macro.S | |||
@@ -23,22 +23,10 @@ | |||
23 | orr \rx, \rx, #0x000003f8 | 23 | orr \rx, \rx, #0x000003f8 |
24 | .endm | 24 | .endm |
25 | 25 | ||
26 | .macro senduart,rd,rx | 26 | #define UART_SHIFT 0 |
27 | strb \rd, [\rx] | 27 | #define FLOW_CONTROL |
28 | .endm | 28 | #include <asm/hardware/debug-8250.S> |
29 | 29 | ||
30 | .macro busyuart,rd,rx | ||
31 | 1002: ldrb \rd, [\rx, #0x5] | ||
32 | and \rd, \rd, #0x60 | ||
33 | teq \rd, #0x60 | ||
34 | bne 1002b | ||
35 | .endm | ||
36 | |||
37 | .macro waituart,rd,rx | ||
38 | 1001: ldrb \rd, [\rx, #0x6] | ||
39 | tst \rd, #0x10 | ||
40 | beq 1001b | ||
41 | .endm | ||
42 | #else | 30 | #else |
43 | /* For EBSA285 debugging */ | 31 | /* For EBSA285 debugging */ |
44 | .equ dc21285_high, ARMCSR_BASE & 0xff000000 | 32 | .equ dc21285_high, ARMCSR_BASE & 0xff000000 |
diff --git a/include/asm-arm/arch-ebsa285/param.h b/include/asm-arm/arch-ebsa285/param.h deleted file mode 100644 index 3827103b27a0..000000000000 --- a/include/asm-arm/arch-ebsa285/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ebsa285/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-ep93xx/debug-macro.S b/include/asm-arm/arch-ep93xx/debug-macro.S new file mode 100644 index 000000000000..397565a0c671 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/debug-macro.S | |||
@@ -0,0 +1,22 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/debug-macro.S | ||
3 | * Debugging macro include header | ||
4 | * | ||
5 | * Copyright (C) 2006 Lennert Buytenhek <buytenh@wantstofly.org> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or (at | ||
10 | * your option) any later version. | ||
11 | */ | ||
12 | #include <asm/arch/ep93xx-regs.h> | ||
13 | |||
14 | .macro addruart,rx | ||
15 | mrc p15, 0, \rx, c1, c0 | ||
16 | tst \rx, #1 @ MMU enabled? | ||
17 | ldreq \rx, =EP93XX_APB_PHYS_BASE @ Physical base | ||
18 | ldrne \rx, =EP93XX_APB_VIRT_BASE @ virtual base | ||
19 | orr \rx, \rx, #0x000c0000 | ||
20 | .endm | ||
21 | |||
22 | #include <asm/hardware/debug-pl01x.S> | ||
diff --git a/include/asm-arm/arch-ep93xx/dma.h b/include/asm-arm/arch-ep93xx/dma.h new file mode 100644 index 000000000000..898b3ab7fd46 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/dma.h | |||
@@ -0,0 +1,3 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/dma.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-ep93xx/entry-macro.S b/include/asm-arm/arch-ep93xx/entry-macro.S new file mode 100644 index 000000000000..84140a28dfcf --- /dev/null +++ b/include/asm-arm/arch-ep93xx/entry-macro.S | |||
@@ -0,0 +1,53 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/entry-macro.S | ||
3 | * IRQ demultiplexing for EP93xx | ||
4 | * | ||
5 | * Copyright (C) 2006 Lennert Buytenhek <buytenh@wantstofly.org> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or (at | ||
10 | * your option) any later version. | ||
11 | */ | ||
12 | #include <asm/arch/ep93xx-regs.h> | ||
13 | |||
14 | .macro disable_fiq | ||
15 | .endm | ||
16 | |||
17 | .macro get_irqnr_and_base, irqnr, irqstat, base, tmp | ||
18 | ldr \base, =(EP93XX_AHB_VIRT_BASE) | ||
19 | orr \base, \base, #0x000b0000 | ||
20 | mov \irqnr, #0 | ||
21 | ldr \irqstat, [\base] @ lower 32 interrupts | ||
22 | cmp \irqstat, #0 | ||
23 | bne 1001f | ||
24 | |||
25 | eor \base, \base, #0x00070000 | ||
26 | ldr \irqstat, [\base] @ upper 32 interrupts | ||
27 | cmp \irqstat, #0 | ||
28 | beq 1002f | ||
29 | mov \irqnr, #0x20 | ||
30 | |||
31 | 1001: | ||
32 | movs \tmp, \irqstat, lsl #16 | ||
33 | movne \irqstat, \tmp | ||
34 | addeq \irqnr, \irqnr, #16 | ||
35 | |||
36 | movs \tmp, \irqstat, lsl #8 | ||
37 | movne \irqstat, \tmp | ||
38 | addeq \irqnr, \irqnr, #8 | ||
39 | |||
40 | movs \tmp, \irqstat, lsl #4 | ||
41 | movne \irqstat, \tmp | ||
42 | addeq \irqnr, \irqnr, #4 | ||
43 | |||
44 | movs \tmp, \irqstat, lsl #2 | ||
45 | movne \irqstat, \tmp | ||
46 | addeq \irqnr, \irqnr, #2 | ||
47 | |||
48 | movs \tmp, \irqstat, lsl #1 | ||
49 | addeq \irqnr, \irqnr, #1 | ||
50 | orrs \base, \base, #1 | ||
51 | |||
52 | 1002: | ||
53 | .endm | ||
diff --git a/include/asm-arm/arch-ep93xx/ep93xx-regs.h b/include/asm-arm/arch-ep93xx/ep93xx-regs.h new file mode 100644 index 000000000000..71cea0b5841b --- /dev/null +++ b/include/asm-arm/arch-ep93xx/ep93xx-regs.h | |||
@@ -0,0 +1,125 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/ep93xx-regs.h | ||
3 | */ | ||
4 | |||
5 | #ifndef __ASM_ARCH_EP93XX_REGS_H | ||
6 | #define __ASM_ARCH_EP93XX_REGS_H | ||
7 | |||
8 | /* | ||
9 | * EP93xx linux memory map: | ||
10 | * | ||
11 | * virt phys size | ||
12 | * fe800000 5M per-platform mappings | ||
13 | * fed00000 80800000 2M APB | ||
14 | * fef00000 80000000 1M AHB | ||
15 | */ | ||
16 | |||
17 | #define EP93XX_AHB_PHYS_BASE 0x80000000 | ||
18 | #define EP93XX_AHB_VIRT_BASE 0xfef00000 | ||
19 | #define EP93XX_AHB_SIZE 0x00100000 | ||
20 | |||
21 | #define EP93XX_APB_PHYS_BASE 0x80800000 | ||
22 | #define EP93XX_APB_VIRT_BASE 0xfed00000 | ||
23 | #define EP93XX_APB_SIZE 0x00200000 | ||
24 | |||
25 | |||
26 | /* AHB peripherals */ | ||
27 | #define EP93XX_DMA_BASE (EP93XX_AHB_VIRT_BASE + 0x00000000) | ||
28 | |||
29 | #define EP93XX_ETHERNET_BASE (EP93XX_AHB_VIRT_BASE + 0x00010000) | ||
30 | |||
31 | #define EP93XX_USB_BASE (EP93XX_AHB_VIRT_BASE + 0x00020000) | ||
32 | #define EP93XX_USB_PHYS_BASE (EP93XX_AHB_PHYS_BASE + 0x00020000) | ||
33 | |||
34 | #define EP93XX_RASTER_BASE (EP93XX_AHB_VIRT_BASE + 0x00030000) | ||
35 | |||
36 | #define EP93XX_GRAPHICS_ACCEL_BASE (EP93XX_AHB_VIRT_BASE + 0x00040000) | ||
37 | |||
38 | #define EP93XX_SDRAM_CONTROLLER_BASE (EP93XX_AHB_VIRT_BASE + 0x00060000) | ||
39 | |||
40 | #define EP93XX_PCMCIA_CONTROLLER_BASE (EP93XX_AHB_VIRT_BASE + 0x00080000) | ||
41 | |||
42 | #define EP93XX_BOOT_ROM_BASE (EP93XX_AHB_VIRT_BASE + 0x00090000) | ||
43 | |||
44 | #define EP93XX_IDE_BASE (EP93XX_AHB_VIRT_BASE + 0x000a0000) | ||
45 | |||
46 | #define EP93XX_VIC1_BASE (EP93XX_AHB_VIRT_BASE + 0x000b0000) | ||
47 | |||
48 | #define EP93XX_VIC2_BASE (EP93XX_AHB_VIRT_BASE + 0x000c0000) | ||
49 | |||
50 | |||
51 | /* APB peripherals */ | ||
52 | #define EP93XX_TIMER_BASE (EP93XX_APB_VIRT_BASE + 0x00010000) | ||
53 | #define EP93XX_TIMER_REG(x) (EP93XX_TIMER_BASE + (x)) | ||
54 | #define EP93XX_TIMER1_LOAD EP93XX_TIMER_REG(0x00) | ||
55 | #define EP93XX_TIMER1_VALUE EP93XX_TIMER_REG(0x04) | ||
56 | #define EP93XX_TIMER1_CONTROL EP93XX_TIMER_REG(0x08) | ||
57 | #define EP93XX_TIMER1_CLEAR EP93XX_TIMER_REG(0x0c) | ||
58 | #define EP93XX_TIMER2_LOAD EP93XX_TIMER_REG(0x20) | ||
59 | #define EP93XX_TIMER2_VALUE EP93XX_TIMER_REG(0x24) | ||
60 | #define EP93XX_TIMER2_CONTROL EP93XX_TIMER_REG(0x28) | ||
61 | #define EP93XX_TIMER2_CLEAR EP93XX_TIMER_REG(0x2c) | ||
62 | #define EP93XX_TIMER4_VALUE_LOW EP93XX_TIMER_REG(0x60) | ||
63 | #define EP93XX_TIMER4_VALUE_HIGH EP93XX_TIMER_REG(0x64) | ||
64 | #define EP93XX_TIMER3_LOAD EP93XX_TIMER_REG(0x80) | ||
65 | #define EP93XX_TIMER3_VALUE EP93XX_TIMER_REG(0x84) | ||
66 | #define EP93XX_TIMER3_CONTROL EP93XX_TIMER_REG(0x88) | ||
67 | #define EP93XX_TIMER3_CLEAR EP93XX_TIMER_REG(0x8c) | ||
68 | |||
69 | #define EP93XX_I2S_BASE (EP93XX_APB_VIRT_BASE + 0x00020000) | ||
70 | |||
71 | #define EP93XX_SECURITY_BASE (EP93XX_APB_VIRT_BASE + 0x00030000) | ||
72 | |||
73 | #define EP93XX_GPIO_BASE (EP93XX_APB_VIRT_BASE + 0x00040000) | ||
74 | #define EP93XX_GPIO_REG(x) (EP93XX_GPIO_BASE + (x)) | ||
75 | #define EP93XX_GPIO_A_INT_TYPE1 EP93XX_GPIO_REG(0x90) | ||
76 | #define EP93XX_GPIO_A_INT_TYPE2 EP93XX_GPIO_REG(0x94) | ||
77 | #define EP93XX_GPIO_A_INT_ACK EP93XX_GPIO_REG(0x98) | ||
78 | #define EP93XX_GPIO_A_INT_ENABLE EP93XX_GPIO_REG(0x9c) | ||
79 | #define EP93XX_GPIO_A_INT_STATUS EP93XX_GPIO_REG(0xa0) | ||
80 | #define EP93XX_GPIO_B_INT_TYPE1 EP93XX_GPIO_REG(0xac) | ||
81 | #define EP93XX_GPIO_B_INT_TYPE2 EP93XX_GPIO_REG(0xb0) | ||
82 | #define EP93XX_GPIO_B_INT_ACK EP93XX_GPIO_REG(0xb4) | ||
83 | #define EP93XX_GPIO_B_INT_ENABLE EP93XX_GPIO_REG(0xb8) | ||
84 | #define EP93XX_GPIO_B_INT_STATUS EP93XX_GPIO_REG(0xbc) | ||
85 | |||
86 | #define EP93XX_AAC_BASE (EP93XX_APB_VIRT_BASE + 0x00080000) | ||
87 | |||
88 | #define EP93XX_SPI_BASE (EP93XX_APB_VIRT_BASE + 0x000a0000) | ||
89 | |||
90 | #define EP93XX_IRDA_BASE (EP93XX_APB_VIRT_BASE + 0x000b0000) | ||
91 | |||
92 | #define EP93XX_UART1_BASE (EP93XX_APB_VIRT_BASE + 0x000c0000) | ||
93 | #define EP93XX_UART1_PHYS_BASE (EP93XX_APB_PHYS_BASE + 0x000c0000) | ||
94 | |||
95 | #define EP93XX_UART2_BASE (EP93XX_APB_VIRT_BASE + 0x000d0000) | ||
96 | #define EP93XX_UART2_PHYS_BASE (EP93XX_APB_PHYS_BASE + 0x000d0000) | ||
97 | |||
98 | #define EP93XX_UART3_BASE (EP93XX_APB_VIRT_BASE + 0x000e0000) | ||
99 | #define EP93XX_UART3_PHYS_BASE (EP93XX_APB_PHYS_BASE + 0x000e0000) | ||
100 | |||
101 | #define EP93XX_KEY_MATRIX_BASE (EP93XX_APB_VIRT_BASE + 0x000f0000) | ||
102 | |||
103 | #define EP93XX_ADC_BASE (EP93XX_APB_VIRT_BASE + 0x00100000) | ||
104 | #define EP93XX_TOUCHSCREEN_BASE (EP93XX_APB_VIRT_BASE + 0x00100000) | ||
105 | |||
106 | #define EP93XX_PWM_BASE (EP93XX_APB_VIRT_BASE + 0x00110000) | ||
107 | |||
108 | #define EP93XX_RTC_BASE (EP93XX_APB_VIRT_BASE + 0x00120000) | ||
109 | |||
110 | #define EP93XX_SYSCON_BASE (EP93XX_APB_VIRT_BASE + 0x00130000) | ||
111 | #define EP93XX_SYSCON_REG(x) (EP93XX_SYSCON_BASE + (x)) | ||
112 | #define EP93XX_SYSCON_POWER_STATE EP93XX_SYSCON_REG(0x00) | ||
113 | #define EP93XX_SYSCON_CLOCK_CONTROL EP93XX_SYSCON_REG(0x04) | ||
114 | #define EP93XX_SYSCON_CLOCK_UARTBAUD 0x20000000 | ||
115 | #define EP93XX_SYSCON_CLOCK_USH_EN 0x10000000 | ||
116 | #define EP93XX_SYSCON_HALT EP93XX_SYSCON_REG(0x08) | ||
117 | #define EP93XX_SYSCON_STANDBY EP93XX_SYSCON_REG(0x0c) | ||
118 | #define EP93XX_SYSCON_DEVICE_CONFIG EP93XX_SYSCON_REG(0x80) | ||
119 | #define EP93XX_SYSCON_DEVICE_CONFIG_CRUNCH_ENABLE 0x00800000 | ||
120 | #define EP93XX_SYSCON_SWLOCK EP93XX_SYSCON_REG(0xc0) | ||
121 | |||
122 | #define EP93XX_WATCHDOG_BASE (EP93XX_APB_VIRT_BASE + 0x00140000) | ||
123 | |||
124 | |||
125 | #endif | ||
diff --git a/include/asm-arm/arch-ep93xx/gesbc9312.h b/include/asm-arm/arch-ep93xx/gesbc9312.h new file mode 100644 index 000000000000..4d0b3023bff7 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/gesbc9312.h | |||
@@ -0,0 +1,3 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/gesbc9312.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-ep93xx/gpio.h b/include/asm-arm/arch-ep93xx/gpio.h new file mode 100644 index 000000000000..1ee14a14cba0 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/gpio.h | |||
@@ -0,0 +1,107 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/gpio.h | ||
3 | */ | ||
4 | |||
5 | #ifndef __ASM_ARCH_GPIO_H | ||
6 | #define __ASM_ARCH_GPIO_H | ||
7 | |||
8 | #define GPIO_IN 0 | ||
9 | #define GPIO_OUT 1 | ||
10 | |||
11 | #define EP93XX_GPIO_LOW 0 | ||
12 | #define EP93XX_GPIO_HIGH 1 | ||
13 | |||
14 | extern void gpio_line_config(int line, int direction); | ||
15 | extern int gpio_line_get(int line); | ||
16 | extern void gpio_line_set(int line, int value); | ||
17 | |||
18 | /* GPIO port A. */ | ||
19 | #define EP93XX_GPIO_LINE_A(x) ((x) + 0) | ||
20 | #define EP93XX_GPIO_LINE_EGPIO0 EP93XX_GPIO_LINE_A(0) | ||
21 | #define EP93XX_GPIO_LINE_EGPIO1 EP93XX_GPIO_LINE_A(1) | ||
22 | #define EP93XX_GPIO_LINE_EGPIO2 EP93XX_GPIO_LINE_A(2) | ||
23 | #define EP93XX_GPIO_LINE_EGPIO3 EP93XX_GPIO_LINE_A(3) | ||
24 | #define EP93XX_GPIO_LINE_EGPIO4 EP93XX_GPIO_LINE_A(4) | ||
25 | #define EP93XX_GPIO_LINE_EGPIO5 EP93XX_GPIO_LINE_A(5) | ||
26 | #define EP93XX_GPIO_LINE_EGPIO6 EP93XX_GPIO_LINE_A(6) | ||
27 | #define EP93XX_GPIO_LINE_EGPIO7 EP93XX_GPIO_LINE_A(7) | ||
28 | |||
29 | /* GPIO port B. */ | ||
30 | #define EP93XX_GPIO_LINE_B(x) ((x) + 8) | ||
31 | #define EP93XX_GPIO_LINE_EGPIO8 EP93XX_GPIO_LINE_B(0) | ||
32 | #define EP93XX_GPIO_LINE_EGPIO9 EP93XX_GPIO_LINE_B(1) | ||
33 | #define EP93XX_GPIO_LINE_EGPIO10 EP93XX_GPIO_LINE_B(2) | ||
34 | #define EP93XX_GPIO_LINE_EGPIO11 EP93XX_GPIO_LINE_B(3) | ||
35 | #define EP93XX_GPIO_LINE_EGPIO12 EP93XX_GPIO_LINE_B(4) | ||
36 | #define EP93XX_GPIO_LINE_EGPIO13 EP93XX_GPIO_LINE_B(5) | ||
37 | #define EP93XX_GPIO_LINE_EGPIO14 EP93XX_GPIO_LINE_B(6) | ||
38 | #define EP93XX_GPIO_LINE_EGPIO15 EP93XX_GPIO_LINE_B(7) | ||
39 | |||
40 | /* GPIO port C. */ | ||
41 | #define EP93XX_GPIO_LINE_C(x) ((x) + 16) | ||
42 | #define EP93XX_GPIO_LINE_ROW0 EP93XX_GPIO_LINE_C(0) | ||
43 | #define EP93XX_GPIO_LINE_ROW1 EP93XX_GPIO_LINE_C(1) | ||
44 | #define EP93XX_GPIO_LINE_ROW2 EP93XX_GPIO_LINE_C(2) | ||
45 | #define EP93XX_GPIO_LINE_ROW3 EP93XX_GPIO_LINE_C(3) | ||
46 | #define EP93XX_GPIO_LINE_ROW4 EP93XX_GPIO_LINE_C(4) | ||
47 | #define EP93XX_GPIO_LINE_ROW5 EP93XX_GPIO_LINE_C(5) | ||
48 | #define EP93XX_GPIO_LINE_ROW6 EP93XX_GPIO_LINE_C(6) | ||
49 | #define EP93XX_GPIO_LINE_ROW7 EP93XX_GPIO_LINE_C(7) | ||
50 | |||
51 | /* GPIO port D. */ | ||
52 | #define EP93XX_GPIO_LINE_D(x) ((x) + 24) | ||
53 | #define EP93XX_GPIO_LINE_COL0 EP93XX_GPIO_LINE_D(0) | ||
54 | #define EP93XX_GPIO_LINE_COL1 EP93XX_GPIO_LINE_D(1) | ||
55 | #define EP93XX_GPIO_LINE_COL2 EP93XX_GPIO_LINE_D(2) | ||
56 | #define EP93XX_GPIO_LINE_COL3 EP93XX_GPIO_LINE_D(3) | ||
57 | #define EP93XX_GPIO_LINE_COL4 EP93XX_GPIO_LINE_D(4) | ||
58 | #define EP93XX_GPIO_LINE_COL5 EP93XX_GPIO_LINE_D(5) | ||
59 | #define EP93XX_GPIO_LINE_COL6 EP93XX_GPIO_LINE_D(6) | ||
60 | #define EP93XX_GPIO_LINE_COL7 EP93XX_GPIO_LINE_D(7) | ||
61 | |||
62 | /* GPIO port E. */ | ||
63 | #define EP93XX_GPIO_LINE_E(x) ((x) + 32) | ||
64 | #define EP93XX_GPIO_LINE_GRLED EP93XX_GPIO_LINE_E(0) | ||
65 | #define EP93XX_GPIO_LINE_RDLED EP93XX_GPIO_LINE_E(1) | ||
66 | #define EP93XX_GPIO_LINE_DIORn EP93XX_GPIO_LINE_E(2) | ||
67 | #define EP93XX_GPIO_LINE_IDECS1n EP93XX_GPIO_LINE_E(3) | ||
68 | #define EP93XX_GPIO_LINE_IDECS2n EP93XX_GPIO_LINE_E(4) | ||
69 | #define EP93XX_GPIO_LINE_IDEDA0 EP93XX_GPIO_LINE_E(5) | ||
70 | #define EP93XX_GPIO_LINE_IDEDA1 EP93XX_GPIO_LINE_E(6) | ||
71 | #define EP93XX_GPIO_LINE_IDEDA2 EP93XX_GPIO_LINE_E(7) | ||
72 | |||
73 | /* GPIO port F. */ | ||
74 | #define EP93XX_GPIO_LINE_F(x) ((x) + 40) | ||
75 | #define EP93XX_GPIO_LINE_WP EP93XX_GPIO_LINE_F(0) | ||
76 | #define EP93XX_GPIO_LINE_MCCD1 EP93XX_GPIO_LINE_F(1) | ||
77 | #define EP93XX_GPIO_LINE_MCCD2 EP93XX_GPIO_LINE_F(2) | ||
78 | #define EP93XX_GPIO_LINE_MCBVD1 EP93XX_GPIO_LINE_F(3) | ||
79 | #define EP93XX_GPIO_LINE_MCBVD2 EP93XX_GPIO_LINE_F(4) | ||
80 | #define EP93XX_GPIO_LINE_VS1 EP93XX_GPIO_LINE_F(5) | ||
81 | #define EP93XX_GPIO_LINE_READY EP93XX_GPIO_LINE_F(6) | ||
82 | #define EP93XX_GPIO_LINE_VS2 EP93XX_GPIO_LINE_F(7) | ||
83 | |||
84 | /* GPIO port G. */ | ||
85 | #define EP93XX_GPIO_LINE_G(x) ((x) + 48) | ||
86 | #define EP93XX_GPIO_LINE_EECLK EP93XX_GPIO_LINE_G(0) | ||
87 | #define EP93XX_GPIO_LINE_EEDAT EP93XX_GPIO_LINE_G(1) | ||
88 | #define EP93XX_GPIO_LINE_SLA0 EP93XX_GPIO_LINE_G(2) | ||
89 | #define EP93XX_GPIO_LINE_SLA1 EP93XX_GPIO_LINE_G(3) | ||
90 | #define EP93XX_GPIO_LINE_DD12 EP93XX_GPIO_LINE_G(4) | ||
91 | #define EP93XX_GPIO_LINE_DD13 EP93XX_GPIO_LINE_G(5) | ||
92 | #define EP93XX_GPIO_LINE_DD14 EP93XX_GPIO_LINE_G(6) | ||
93 | #define EP93XX_GPIO_LINE_DD15 EP93XX_GPIO_LINE_G(7) | ||
94 | |||
95 | /* GPIO port H. */ | ||
96 | #define EP93XX_GPIO_LINE_H(x) ((x) + 56) | ||
97 | #define EP93XX_GPIO_LINE_DD0 EP93XX_GPIO_LINE_H(0) | ||
98 | #define EP93XX_GPIO_LINE_DD1 EP93XX_GPIO_LINE_H(1) | ||
99 | #define EP93XX_GPIO_LINE_DD2 EP93XX_GPIO_LINE_H(2) | ||
100 | #define EP93XX_GPIO_LINE_DD3 EP93XX_GPIO_LINE_H(3) | ||
101 | #define EP93XX_GPIO_LINE_DD4 EP93XX_GPIO_LINE_H(4) | ||
102 | #define EP93XX_GPIO_LINE_DD5 EP93XX_GPIO_LINE_H(5) | ||
103 | #define EP93XX_GPIO_LINE_DD6 EP93XX_GPIO_LINE_H(6) | ||
104 | #define EP93XX_GPIO_LINE_DD7 EP93XX_GPIO_LINE_H(7) | ||
105 | |||
106 | |||
107 | #endif | ||
diff --git a/include/asm-arm/arch-ep93xx/hardware.h b/include/asm-arm/arch-ep93xx/hardware.h new file mode 100644 index 000000000000..9b69f454065d --- /dev/null +++ b/include/asm-arm/arch-ep93xx/hardware.h | |||
@@ -0,0 +1,12 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/hardware.h | ||
3 | */ | ||
4 | |||
5 | #include "ep93xx-regs.h" | ||
6 | |||
7 | #define pcibios_assign_all_busses() 0 | ||
8 | |||
9 | #include "platform.h" | ||
10 | |||
11 | #include "gesbc9312.h" | ||
12 | #include "ts72xx.h" | ||
diff --git a/include/asm-arm/arch-ep93xx/io.h b/include/asm-arm/arch-ep93xx/io.h new file mode 100644 index 000000000000..7b4d25e29060 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/io.h | |||
@@ -0,0 +1,8 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/io.h | ||
3 | */ | ||
4 | |||
5 | #define IO_SPACE_LIMIT 0xffffffff | ||
6 | |||
7 | #define __io(p) ((void __iomem *)(p)) | ||
8 | #define __mem_pci(p) (p) | ||
diff --git a/include/asm-arm/arch-ep93xx/irqs.h b/include/asm-arm/arch-ep93xx/irqs.h new file mode 100644 index 000000000000..9a42f5de9e57 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/irqs.h | |||
@@ -0,0 +1,80 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/irqs.h | ||
3 | */ | ||
4 | |||
5 | #ifndef __ASM_ARCH_IRQS_H | ||
6 | #define __ASM_ARCH_IRQS_H | ||
7 | |||
8 | #define IRQ_EP93XX_COMMRX 2 | ||
9 | #define IRQ_EP93XX_COMMTX 3 | ||
10 | #define IRQ_EP93XX_TIMER1 4 | ||
11 | #define IRQ_EP93XX_TIMER2 5 | ||
12 | #define IRQ_EP93XX_AACINTR 6 | ||
13 | #define IRQ_EP93XX_DMAM2P0 7 | ||
14 | #define IRQ_EP93XX_DMAM2P1 8 | ||
15 | #define IRQ_EP93XX_DMAM2P2 9 | ||
16 | #define IRQ_EP93XX_DMAM2P3 10 | ||
17 | #define IRQ_EP93XX_DMAM2P4 11 | ||
18 | #define IRQ_EP93XX_DMAM2P5 12 | ||
19 | #define IRQ_EP93XX_DMAM2P6 13 | ||
20 | #define IRQ_EP93XX_DMAM2P7 14 | ||
21 | #define IRQ_EP93XX_DMAM2P8 15 | ||
22 | #define IRQ_EP93XX_DMAM2P9 16 | ||
23 | #define IRQ_EP93XX_DMAM2M0 17 | ||
24 | #define IRQ_EP93XX_DMAM2M1 18 | ||
25 | #define IRQ_EP93XX_GPIO0MUX 20 | ||
26 | #define IRQ_EP93XX_GPIO1MUX 21 | ||
27 | #define IRQ_EP93XX_GPIO2MUX 22 | ||
28 | #define IRQ_EP93XX_GPIO3MUX 22 | ||
29 | #define IRQ_EP93XX_UART1RX 23 | ||
30 | #define IRQ_EP93XX_UART1TX 24 | ||
31 | #define IRQ_EP93XX_UART2RX 25 | ||
32 | #define IRQ_EP93XX_UART2TX 26 | ||
33 | #define IRQ_EP93XX_UART3RX 27 | ||
34 | #define IRQ_EP93XX_UART3TX 28 | ||
35 | #define IRQ_EP93XX_KEY 29 | ||
36 | #define IRQ_EP93XX_TOUCH 30 | ||
37 | #define EP93XX_VIC1_VALID_IRQ_MASK 0x7ffffffc | ||
38 | |||
39 | #define IRQ_EP93XX_EXT0 32 | ||
40 | #define IRQ_EP93XX_EXT1 33 | ||
41 | #define IRQ_EP93XX_EXT2 34 | ||
42 | #define IRQ_EP93XX_64HZ 35 | ||
43 | #define IRQ_EP93XX_WATCHDOG 36 | ||
44 | #define IRQ_EP93XX_RTC 37 | ||
45 | #define IRQ_EP93XX_IRDA 38 | ||
46 | #define IRQ_EP93XX_ETHERNET 39 | ||
47 | #define IRQ_EP93XX_EXT3 40 | ||
48 | #define IRQ_EP93XX_PROG 41 | ||
49 | #define IRQ_EP93XX_1HZ 42 | ||
50 | #define IRQ_EP93XX_VSYNC 43 | ||
51 | #define IRQ_EP93XX_VIDEO_FIFO 44 | ||
52 | #define IRQ_EP93XX_SSP1RX 45 | ||
53 | #define IRQ_EP93XX_SSP1TX 46 | ||
54 | #define IRQ_EP93XX_GPIO4MUX 47 | ||
55 | #define IRQ_EP93XX_GPIO5MUX 48 | ||
56 | #define IRQ_EP93XX_GPIO6MUX 49 | ||
57 | #define IRQ_EP93XX_GPIO7MUX 50 | ||
58 | #define IRQ_EP93XX_TIMER3 51 | ||
59 | #define IRQ_EP93XX_UART1 52 | ||
60 | #define IRQ_EP93XX_SSP 53 | ||
61 | #define IRQ_EP93XX_UART2 54 | ||
62 | #define IRQ_EP93XX_UART3 55 | ||
63 | #define IRQ_EP93XX_USB 56 | ||
64 | #define IRQ_EP93XX_ETHERNET_PME 57 | ||
65 | #define IRQ_EP93XX_DSP 58 | ||
66 | #define IRQ_EP93XX_GPIO_AB 59 | ||
67 | #define IRQ_EP93XX_SAI 60 | ||
68 | #define EP93XX_VIC2_VALID_IRQ_MASK 0x1fffffff | ||
69 | |||
70 | #define IRQ_EP93XX_GPIO(x) (64 + (x)) | ||
71 | |||
72 | #define NR_EP93XX_IRQS IRQ_EP93XX_GPIO(16) | ||
73 | |||
74 | #define EP93XX_BOARD_IRQ(x) (NR_EP93XX_IRQS + (x)) | ||
75 | #define EP93XX_BOARD_IRQS 32 | ||
76 | |||
77 | #define NR_IRQS (NR_EP93XX_IRQS + EP93XX_BOARD_IRQS) | ||
78 | |||
79 | |||
80 | #endif | ||
diff --git a/include/asm-arm/arch-ep93xx/memory.h b/include/asm-arm/arch-ep93xx/memory.h new file mode 100644 index 000000000000..4b1a5c7c8363 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/memory.h | |||
@@ -0,0 +1,14 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/memory.h | ||
3 | */ | ||
4 | |||
5 | #ifndef __ASM_ARCH_MEMORY_H | ||
6 | #define __ASM_ARCH_MEMORY_H | ||
7 | |||
8 | #define PHYS_OFFSET UL(0x00000000) | ||
9 | |||
10 | #define __bus_to_virt(x) __phys_to_virt(x) | ||
11 | #define __virt_to_bus(x) __virt_to_phys(x) | ||
12 | |||
13 | |||
14 | #endif | ||
diff --git a/include/asm-arm/arch-ep93xx/platform.h b/include/asm-arm/arch-ep93xx/platform.h new file mode 100644 index 000000000000..df9cbb6ef660 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/platform.h | |||
@@ -0,0 +1,14 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/platform.h | ||
3 | */ | ||
4 | |||
5 | #ifndef __ASSEMBLY__ | ||
6 | |||
7 | void ep93xx_map_io(void); | ||
8 | void ep93xx_init_irq(void); | ||
9 | void ep93xx_init_time(unsigned long); | ||
10 | void ep93xx_init_devices(void); | ||
11 | extern struct sys_timer ep93xx_timer; | ||
12 | |||
13 | |||
14 | #endif | ||
diff --git a/include/asm-arm/arch-ep93xx/system.h b/include/asm-arm/arch-ep93xx/system.h new file mode 100644 index 000000000000..79b718586746 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/system.h | |||
@@ -0,0 +1,26 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/system.h | ||
3 | */ | ||
4 | |||
5 | #include <asm/hardware.h> | ||
6 | |||
7 | static inline void arch_idle(void) | ||
8 | { | ||
9 | cpu_do_idle(); | ||
10 | } | ||
11 | |||
12 | static inline void arch_reset(char mode) | ||
13 | { | ||
14 | u32 devicecfg; | ||
15 | |||
16 | local_irq_disable(); | ||
17 | |||
18 | devicecfg = __raw_readl(EP93XX_SYSCON_DEVICE_CONFIG); | ||
19 | __raw_writel(0xaa, EP93XX_SYSCON_SWLOCK); | ||
20 | __raw_writel(devicecfg | 0x80000000, EP93XX_SYSCON_DEVICE_CONFIG); | ||
21 | __raw_writel(0xaa, EP93XX_SYSCON_SWLOCK); | ||
22 | __raw_writel(devicecfg & ~0x80000000, EP93XX_SYSCON_DEVICE_CONFIG); | ||
23 | |||
24 | while (1) | ||
25 | ; | ||
26 | } | ||
diff --git a/include/asm-arm/arch-ep93xx/timex.h b/include/asm-arm/arch-ep93xx/timex.h new file mode 100644 index 000000000000..4140bddc97e2 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/timex.h | |||
@@ -0,0 +1,5 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/timex.h | ||
3 | */ | ||
4 | |||
5 | #define CLOCK_TICK_RATE 983040 | ||
diff --git a/include/asm-arm/arch-ep93xx/ts72xx.h b/include/asm-arm/arch-ep93xx/ts72xx.h new file mode 100644 index 000000000000..412215e77f44 --- /dev/null +++ b/include/asm-arm/arch-ep93xx/ts72xx.h | |||
@@ -0,0 +1,90 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/ts72xx.h | ||
3 | */ | ||
4 | |||
5 | /* | ||
6 | * TS72xx memory map: | ||
7 | * | ||
8 | * virt phys size | ||
9 | * febff000 22000000 4K model number register | ||
10 | * febfe000 22400000 4K options register | ||
11 | * febfd000 22800000 4K options register #2 | ||
12 | * febfc000 [67]0000000 4K NAND data register | ||
13 | * febfb000 [67]0400000 4K NAND control register | ||
14 | * febfa000 [67]0800000 4K NAND busy register | ||
15 | */ | ||
16 | |||
17 | #define TS72XX_MODEL_PHYS_BASE 0x22000000 | ||
18 | #define TS72XX_MODEL_VIRT_BASE 0xfebff000 | ||
19 | #define TS72XX_MODEL_SIZE 0x00001000 | ||
20 | |||
21 | #define TS72XX_MODEL_TS7200 0x00 | ||
22 | #define TS72XX_MODEL_TS7250 0x01 | ||
23 | #define TS72XX_MODEL_TS7260 0x02 | ||
24 | |||
25 | |||
26 | #define TS72XX_OPTIONS_PHYS_BASE 0x22400000 | ||
27 | #define TS72XX_OPTIONS_VIRT_BASE 0xfebfe000 | ||
28 | #define TS72XX_OPTIONS_SIZE 0x00001000 | ||
29 | |||
30 | #define TS72XX_OPTIONS_COM2_RS485 0x02 | ||
31 | #define TS72XX_OPTIONS_MAX197 0x01 | ||
32 | |||
33 | |||
34 | #define TS72XX_OPTIONS2_PHYS_BASE 0x22800000 | ||
35 | #define TS72XX_OPTIONS2_VIRT_BASE 0xfebfd000 | ||
36 | #define TS72XX_OPTIONS2_SIZE 0x00001000 | ||
37 | |||
38 | #define TS72XX_OPTIONS2_TS9420 0x04 | ||
39 | #define TS72XX_OPTIONS2_TS9420_BOOT 0x02 | ||
40 | |||
41 | |||
42 | #define TS72XX_NOR_PHYS_BASE 0x60000000 | ||
43 | #define TS72XX_NOR2_PHYS_BASE 0x62000000 | ||
44 | |||
45 | #define TS72XX_NAND1_DATA_PHYS_BASE 0x60000000 | ||
46 | #define TS72XX_NAND2_DATA_PHYS_BASE 0x70000000 | ||
47 | #define TS72XX_NAND_DATA_VIRT_BASE 0xfebfc000 | ||
48 | #define TS72XX_NAND_DATA_SIZE 0x00001000 | ||
49 | |||
50 | #define TS72XX_NAND1_CONTROL_PHYS_BASE 0x60400000 | ||
51 | #define TS72XX_NAND2_CONTROL_PHYS_BASE 0x70400000 | ||
52 | #define TS72XX_NAND_CONTROL_VIRT_BASE 0xfebfb000 | ||
53 | #define TS72XX_NAND_CONTROL_SIZE 0x00001000 | ||
54 | |||
55 | #define TS72XX_NAND1_BUSY_PHYS_BASE 0x60800000 | ||
56 | #define TS72XX_NAND2_BUSY_PHYS_BASE 0x70800000 | ||
57 | #define TS72XX_NAND_BUSY_VIRT_BASE 0xfebfa000 | ||
58 | #define TS72XX_NAND_BUSY_SIZE 0x00001000 | ||
59 | |||
60 | |||
61 | #ifndef __ASSEMBLY__ | ||
62 | #include <asm/io.h> | ||
63 | |||
64 | static inline int board_is_ts7200(void) | ||
65 | { | ||
66 | return __raw_readb(TS72XX_MODEL_VIRT_BASE) == TS72XX_MODEL_TS7200; | ||
67 | } | ||
68 | |||
69 | static inline int board_is_ts7250(void) | ||
70 | { | ||
71 | return __raw_readb(TS72XX_MODEL_VIRT_BASE) == TS72XX_MODEL_TS7250; | ||
72 | } | ||
73 | |||
74 | static inline int board_is_ts7260(void) | ||
75 | { | ||
76 | return __raw_readb(TS72XX_MODEL_VIRT_BASE) == TS72XX_MODEL_TS7260; | ||
77 | } | ||
78 | |||
79 | static inline int is_max197_installed(void) | ||
80 | { | ||
81 | return !!(__raw_readb(TS72XX_OPTIONS_VIRT_BASE) & | ||
82 | TS72XX_OPTIONS_MAX197); | ||
83 | } | ||
84 | |||
85 | static inline int is_ts9420_installed(void) | ||
86 | { | ||
87 | return !!(__raw_readb(TS72XX_OPTIONS2_VIRT_BASE) & | ||
88 | TS72XX_OPTIONS2_TS9420); | ||
89 | } | ||
90 | #endif | ||
diff --git a/include/asm-arm/arch-ep93xx/uncompress.h b/include/asm-arm/arch-ep93xx/uncompress.h new file mode 100644 index 000000000000..4410d217077e --- /dev/null +++ b/include/asm-arm/arch-ep93xx/uncompress.h | |||
@@ -0,0 +1,53 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/uncompress.h | ||
3 | * | ||
4 | * Copyright (C) 2006 Lennert Buytenhek <buytenh@wantstofly.org> | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or (at | ||
9 | * your option) any later version. | ||
10 | */ | ||
11 | |||
12 | #include <asm/arch/ep93xx-regs.h> | ||
13 | |||
14 | static unsigned char __raw_readb(unsigned int ptr) | ||
15 | { | ||
16 | return *((volatile unsigned char *)ptr); | ||
17 | } | ||
18 | |||
19 | static void __raw_writeb(unsigned char value, unsigned int ptr) | ||
20 | { | ||
21 | *((volatile unsigned char *)ptr) = value; | ||
22 | } | ||
23 | |||
24 | |||
25 | #define PHYS_UART1_DATA 0x808c0000 | ||
26 | #define PHYS_UART1_FLAG 0x808c0018 | ||
27 | #define UART1_FLAG_TXFF 0x20 | ||
28 | |||
29 | static __inline__ void putc(char c) | ||
30 | { | ||
31 | int i; | ||
32 | |||
33 | for (i = 0; i < 1000; i++) { | ||
34 | /* Transmit fifo not full? */ | ||
35 | if (!(__raw_readb(PHYS_UART1_FLAG) & UART1_FLAG_TXFF)) | ||
36 | break; | ||
37 | } | ||
38 | |||
39 | __raw_writeb(c, PHYS_UART1_DATA); | ||
40 | } | ||
41 | |||
42 | static void putstr(const char *s) | ||
43 | { | ||
44 | while (*s) { | ||
45 | putc(*s); | ||
46 | if (*s == '\n') | ||
47 | putc('\r'); | ||
48 | s++; | ||
49 | } | ||
50 | } | ||
51 | |||
52 | #define arch_decomp_setup() | ||
53 | #define arch_decomp_wdog() | ||
diff --git a/include/asm-arm/arch-ep93xx/vmalloc.h b/include/asm-arm/arch-ep93xx/vmalloc.h new file mode 100644 index 000000000000..205ea6b1cf5e --- /dev/null +++ b/include/asm-arm/arch-ep93xx/vmalloc.h | |||
@@ -0,0 +1,5 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ep93xx/vmalloc.h | ||
3 | */ | ||
4 | |||
5 | #define VMALLOC_END 0xfe800000 | ||
diff --git a/include/asm-arm/arch-h720x/irq.h b/include/asm-arm/arch-h720x/irq.h deleted file mode 100644 index b3821e957aa4..000000000000 --- a/include/asm-arm/arch-h720x/irq.h +++ /dev/null | |||
@@ -1,14 +0,0 @@ | |||
1 | /* | ||
2 | * include/asm-arm/arch-h720x/irq.h | ||
3 | * | ||
4 | * Copyright (C) 2000-2002 Jungjun Kim | ||
5 | * (C) 2003 Robert Schwebel <r.schwebel@pengutronix.de> | ||
6 | * (C) 2003 Thomas Gleixner <tglx@linutronix.de> | ||
7 | */ | ||
8 | |||
9 | #ifndef __ASM_ARCH_IRQ_H | ||
10 | #define __ASM_ARCH_IRQ_H | ||
11 | |||
12 | extern void __init h720x_init_irq (void); | ||
13 | |||
14 | #endif /* __ASM_ARCH_IRQ_H */ | ||
diff --git a/include/asm-arm/arch-h720x/param.h b/include/asm-arm/arch-h720x/param.h deleted file mode 100644 index 2b80235f9847..000000000000 --- a/include/asm-arm/arch-h720x/param.h +++ /dev/null | |||
@@ -1,10 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-h720x/param.h | ||
3 | * | ||
4 | * Copyright (C) 2000 Jungjun Kim | ||
5 | */ | ||
6 | |||
7 | #ifndef __ASM_ARCH_PARAM_H | ||
8 | #define __ASM_ARCH_PARAM_H | ||
9 | |||
10 | #endif | ||
diff --git a/include/asm-arm/arch-imx/irq.h b/include/asm-arm/arch-imx/irq.h deleted file mode 100644 index 545e065d2325..000000000000 --- a/include/asm-arm/arch-imx/irq.h +++ /dev/null | |||
@@ -1,20 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-imxads/irq.h | ||
3 | * | ||
4 | * Copyright (C) 1999 ARM Limited | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
20 | #define fixup_irq(i) (i) | ||
diff --git a/include/asm-arm/arch-imx/param.h b/include/asm-arm/arch-imx/param.h deleted file mode 100644 index 7c724f03333e..000000000000 --- a/include/asm-arm/arch-imx/param.h +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-imx/param.h | ||
3 | * | ||
4 | * Copyright (C) 1999 ARM Limited | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
diff --git a/include/asm-arm/arch-integrator/debug-macro.S b/include/asm-arm/arch-integrator/debug-macro.S index 031d30941791..85b327c352df 100644 --- a/include/asm-arm/arch-integrator/debug-macro.S +++ b/include/asm-arm/arch-integrator/debug-macro.S | |||
@@ -11,8 +11,6 @@ | |||
11 | * | 11 | * |
12 | */ | 12 | */ |
13 | 13 | ||
14 | #include <linux/amba/serial.h> | ||
15 | |||
16 | .macro addruart,rx | 14 | .macro addruart,rx |
17 | mrc p15, 0, \rx, c1, c0 | 15 | mrc p15, 0, \rx, c1, c0 |
18 | tst \rx, #1 @ MMU enabled? | 16 | tst \rx, #1 @ MMU enabled? |
@@ -21,18 +19,4 @@ | |||
21 | addne \rx, \rx, #0x16000000 >> 4 | 19 | addne \rx, \rx, #0x16000000 >> 4 |
22 | .endm | 20 | .endm |
23 | 21 | ||
24 | .macro senduart,rd,rx | 22 | #include <asm/hardware/debug-pl01x.S> |
25 | strb \rd, [\rx, #UART01x_DR] | ||
26 | .endm | ||
27 | |||
28 | .macro waituart,rd,rx | ||
29 | 1001: ldr \rd, [\rx, #0x18] @ UARTFLG | ||
30 | tst \rd, #1 << 5 @ UARTFLGUTXFF - 1 when full | ||
31 | bne 1001b | ||
32 | .endm | ||
33 | |||
34 | .macro busyuart,rd,rx | ||
35 | 1001: ldr \rd, [\rx, #0x18] @ UARTFLG | ||
36 | tst \rd, #1 << 3 @ UARTFLGUBUSY - 1 when busy | ||
37 | bne 1001b | ||
38 | .endm | ||
diff --git a/include/asm-arm/arch-integrator/param.h b/include/asm-arm/arch-integrator/param.h deleted file mode 100644 index afa582ff3717..000000000000 --- a/include/asm-arm/arch-integrator/param.h +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-integrator/param.h | ||
3 | * | ||
4 | * Copyright (C) 1999 ARM Limited | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
diff --git a/include/asm-arm/arch-iop3xx/debug-macro.S b/include/asm-arm/arch-iop3xx/debug-macro.S index cc15f80ebd9a..ce007e531994 100644 --- a/include/asm-arm/arch-iop3xx/debug-macro.S +++ b/include/asm-arm/arch-iop3xx/debug-macro.S | |||
@@ -28,21 +28,8 @@ | |||
28 | #endif | 28 | #endif |
29 | .endm | 29 | .endm |
30 | 30 | ||
31 | .macro senduart,rd,rx | ||
32 | strb \rd, [\rx] | ||
33 | .endm | ||
34 | |||
35 | .macro busyuart,rd,rx | ||
36 | 1002: ldrb \rd, [\rx, #0x5] | ||
37 | and \rd, \rd, #0x60 | ||
38 | teq \rd, #0x60 | ||
39 | bne 1002b | ||
40 | .endm | ||
41 | |||
42 | .macro waituart,rd,rx | ||
43 | #if !defined(CONFIG_ARCH_IQ80321) || !defined(CONFIG_ARCH_IQ31244) || !defined(CONFIG_ARCH_IQ80331) | 31 | #if !defined(CONFIG_ARCH_IQ80321) || !defined(CONFIG_ARCH_IQ31244) || !defined(CONFIG_ARCH_IQ80331) |
44 | 1001: ldrb \rd, [\rx, #0x6] | 32 | #define FLOW_CONTROL |
45 | tst \rd, #0x10 | ||
46 | beq 1001b | ||
47 | #endif | 33 | #endif |
48 | .endm | 34 | #define UART_SHIFT 0 |
35 | #include <asm/hardware/debug-8250.S> | ||
diff --git a/include/asm-arm/arch-iop3xx/param.h b/include/asm-arm/arch-iop3xx/param.h deleted file mode 100644 index acf404e87358..000000000000 --- a/include/asm-arm/arch-iop3xx/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-iop3xx/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-ixp2000/debug-macro.S b/include/asm-arm/arch-ixp2000/debug-macro.S index 5631e0889861..bc8b39654793 100644 --- a/include/asm-arm/arch-ixp2000/debug-macro.S +++ b/include/asm-arm/arch-ixp2000/debug-macro.S | |||
@@ -23,18 +23,5 @@ | |||
23 | #endif | 23 | #endif |
24 | .endm | 24 | .endm |
25 | 25 | ||
26 | .macro senduart,rd,rx | 26 | #define UART_SHIFT 2 |
27 | strb \rd, [\rx] | 27 | #include <asm/hardware/debug-8250.S> |
28 | .endm | ||
29 | |||
30 | .macro busyuart,rd,rx | ||
31 | 1002: ldrb \rd, [\rx, #0x14] | ||
32 | tst \rd, #0x20 | ||
33 | beq 1002b | ||
34 | .endm | ||
35 | |||
36 | .macro waituart,rd,rx | ||
37 | nop | ||
38 | nop | ||
39 | nop | ||
40 | .endm | ||
diff --git a/include/asm-arm/arch-ixp2000/irq.h b/include/asm-arm/arch-ixp2000/irq.h deleted file mode 100644 index ba00b23f9828..000000000000 --- a/include/asm-arm/arch-ixp2000/irq.h +++ /dev/null | |||
@@ -1,13 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ixp2000/irq.h | ||
3 | * | ||
4 | * Copyright (C) 2002 Intel Corp. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | |||
11 | #define fixup_irq(irq) (irq) | ||
12 | |||
13 | |||
diff --git a/include/asm-arm/arch-ixp2000/ixdp2x00.h b/include/asm-arm/arch-ixp2000/ixdp2x00.h index 229381c64283..546e2e8e27b8 100644 --- a/include/asm-arm/arch-ixp2000/ixdp2x00.h +++ b/include/asm-arm/arch-ixp2000/ixdp2x00.h | |||
@@ -72,12 +72,11 @@ | |||
72 | 72 | ||
73 | #ifndef __ASSEMBLY__ | 73 | #ifndef __ASSEMBLY__ |
74 | /* | 74 | /* |
75 | * Master NPU will always have flash and be PCI master. | 75 | * The master NPU is always PCI master. |
76 | * Slave NPU may or may not have flash but will never be PCI master. | ||
77 | */ | 76 | */ |
78 | static inline unsigned int ixdp2x00_master_npu(void) | 77 | static inline unsigned int ixdp2x00_master_npu(void) |
79 | { | 78 | { |
80 | return ((ixp2000_has_flash()) && (ixp2000_is_pcimaster())); | 79 | return !!ixp2000_is_pcimaster(); |
81 | } | 80 | } |
82 | 81 | ||
83 | /* | 82 | /* |
diff --git a/include/asm-arm/arch-ixp2000/ixp2000-regs.h b/include/asm-arm/arch-ixp2000/ixp2000-regs.h index 2b57f91b4ebd..ccae4bec92c5 100644 --- a/include/asm-arm/arch-ixp2000/ixp2000-regs.h +++ b/include/asm-arm/arch-ixp2000/ixp2000-regs.h | |||
@@ -353,8 +353,8 @@ | |||
353 | * Masks and shifts for various fields in the WTC and RTC registers. | 353 | * Masks and shifts for various fields in the WTC and RTC registers. |
354 | */ | 354 | */ |
355 | #define SLOWPORT_WRTC_MASK_HD 0x0003 | 355 | #define SLOWPORT_WRTC_MASK_HD 0x0003 |
356 | #define SLOWPORT_WRTC_MASK_SU 0x003c | 356 | #define SLOWPORT_WRTC_MASK_PW 0x003c |
357 | #define SLOWPORT_WRTC_MASK_PW 0x03c0 | 357 | #define SLOWPORT_WRTC_MASK_SU 0x03c0 |
358 | 358 | ||
359 | #define SLOWPORT_WRTC_SHIFT_HD 0x00 | 359 | #define SLOWPORT_WRTC_SHIFT_HD 0x00 |
360 | #define SLOWPORT_WRTC_SHIFT_SU 0x02 | 360 | #define SLOWPORT_WRTC_SHIFT_SU 0x02 |
diff --git a/include/asm-arm/arch-ixp2000/param.h b/include/asm-arm/arch-ixp2000/param.h deleted file mode 100644 index 2646d9e5919d..000000000000 --- a/include/asm-arm/arch-ixp2000/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ixp2000/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-ixp2000/system.h b/include/asm-arm/arch-ixp2000/system.h index ddbbb34b5f95..3cc9a04f68cb 100644 --- a/include/asm-arm/arch-ixp2000/system.h +++ b/include/asm-arm/arch-ixp2000/system.h | |||
@@ -37,7 +37,7 @@ static inline void arch_reset(char mode) | |||
37 | * to cause a complete reset of the CPU and all external devices | 37 | * to cause a complete reset of the CPU and all external devices |
38 | * and move the flash bank register back to 0. | 38 | * and move the flash bank register back to 0. |
39 | */ | 39 | */ |
40 | if (machine_is_ixdp2801()) { | 40 | if (machine_is_ixdp2801() || machine_is_ixdp28x5()) { |
41 | unsigned long reset_reg = *IXDP2X01_CPLD_RESET_REG; | 41 | unsigned long reset_reg = *IXDP2X01_CPLD_RESET_REG; |
42 | 42 | ||
43 | reset_reg = 0x55AA0000 | (reset_reg & 0x0000FFFF); | 43 | reset_reg = 0x55AA0000 | (reset_reg & 0x0000FFFF); |
diff --git a/include/asm-arm/arch-ixp4xx/debug-macro.S b/include/asm-arm/arch-ixp4xx/debug-macro.S index 2e23651e217f..37bc8ef23e67 100644 --- a/include/asm-arm/arch-ixp4xx/debug-macro.S +++ b/include/asm-arm/arch-ixp4xx/debug-macro.S | |||
@@ -20,16 +20,5 @@ | |||
20 | @ byte writes used - Big Endian. | 20 | @ byte writes used - Big Endian. |
21 | .endm | 21 | .endm |
22 | 22 | ||
23 | .macro senduart,rd,rx | 23 | #define UART_SHIFT 2 |
24 | strb \rd, [\rx] | 24 | #include <asm/hardware/debug-8250.S> |
25 | .endm | ||
26 | |||
27 | .macro waituart,rd,rx | ||
28 | 1002: ldrb \rd, [\rx, #0x14] | ||
29 | and \rd, \rd, #0x60 @ check THRE and TEMT bits | ||
30 | teq \rd, #0x60 | ||
31 | bne 1002b | ||
32 | .endm | ||
33 | |||
34 | .macro busyuart,rd,rx | ||
35 | .endm | ||
diff --git a/include/asm-arm/arch-ixp4xx/irq.h b/include/asm-arm/arch-ixp4xx/irq.h deleted file mode 100644 index 87da70695f0a..000000000000 --- a/include/asm-arm/arch-ixp4xx/irq.h +++ /dev/null | |||
@@ -1,13 +0,0 @@ | |||
1 | /* | ||
2 | * irq.h | ||
3 | * | ||
4 | * Copyright (C) 2002 Intel Corporation. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | */ | ||
11 | |||
12 | #define fixup_irq(irq) (irq) | ||
13 | |||
diff --git a/include/asm-arm/arch-ixp4xx/param.h b/include/asm-arm/arch-ixp4xx/param.h deleted file mode 100644 index 8a757125e5e7..000000000000 --- a/include/asm-arm/arch-ixp4xx/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-ixp4xx/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-ixp4xx/platform.h b/include/asm-arm/arch-ixp4xx/platform.h index daf9790645ca..13aee17b0475 100644 --- a/include/asm-arm/arch-ixp4xx/platform.h +++ b/include/asm-arm/arch-ixp4xx/platform.h | |||
@@ -38,6 +38,33 @@ extern unsigned long ixp4xx_exp_bus_size; | |||
38 | #define IXP4XX_EXP_BUS_BASE(region)\ | 38 | #define IXP4XX_EXP_BUS_BASE(region)\ |
39 | (IXP4XX_EXP_BUS_BASE_PHYS + ((region) * ixp4xx_exp_bus_size)) | 39 | (IXP4XX_EXP_BUS_BASE_PHYS + ((region) * ixp4xx_exp_bus_size)) |
40 | 40 | ||
41 | #define IXP4XX_EXP_BUS_END(region)\ | ||
42 | (IXP4XX_EXP_BUS_BASE(region) + ixp4xx_exp_bus_size - 1) | ||
43 | |||
44 | /* Those macros can be used to adjust timing and configure | ||
45 | * other features for each region. | ||
46 | */ | ||
47 | |||
48 | #define IXP4XX_EXP_BUS_RECOVERY_T(x) (((x) & 0x0f) << 16) | ||
49 | #define IXP4XX_EXP_BUS_HOLD_T(x) (((x) & 0x03) << 20) | ||
50 | #define IXP4XX_EXP_BUS_STROBE_T(x) (((x) & 0x0f) << 22) | ||
51 | #define IXP4XX_EXP_BUS_SETUP_T(x) (((x) & 0x03) << 26) | ||
52 | #define IXP4XX_EXP_BUS_ADDR_T(x) (((x) & 0x03) << 28) | ||
53 | #define IXP4XX_EXP_BUS_SIZE(x) (((x) & 0x0f) << 10) | ||
54 | #define IXP4XX_EXP_BUS_CYCLES(x) (((x) & 0x03) << 14) | ||
55 | |||
56 | #define IXP4XX_EXP_BUS_CS_EN (1L << 31) | ||
57 | #define IXP4XX_EXP_BUS_BYTE_RD16 (1L << 6) | ||
58 | #define IXP4XX_EXP_BUS_HRDY_POL (1L << 5) | ||
59 | #define IXP4XX_EXP_BUS_MUX_EN (1L << 4) | ||
60 | #define IXP4XX_EXP_BUS_SPLT_EN (1L << 3) | ||
61 | #define IXP4XX_EXP_BUS_WR_EN (1L << 1) | ||
62 | #define IXP4XX_EXP_BUS_BYTE_EN (1L << 0) | ||
63 | |||
64 | #define IXP4XX_EXP_BUS_CYCLES_INTEL 0x00 | ||
65 | #define IXP4XX_EXP_BUS_CYCLES_MOTOROLA 0x01 | ||
66 | #define IXP4XX_EXP_BUS_CYCLES_HPI 0x02 | ||
67 | |||
41 | #define IXP4XX_FLASH_WRITABLE (0x2) | 68 | #define IXP4XX_FLASH_WRITABLE (0x2) |
42 | #define IXP4XX_FLASH_DEFAULT (0xbcd23c40) | 69 | #define IXP4XX_FLASH_DEFAULT (0xbcd23c40) |
43 | #define IXP4XX_FLASH_WRITE (0xbcd23c42) | 70 | #define IXP4XX_FLASH_WRITE (0xbcd23c42) |
diff --git a/include/asm-arm/arch-l7200/param.h b/include/asm-arm/arch-l7200/param.h deleted file mode 100644 index 9962a12ab158..000000000000 --- a/include/asm-arm/arch-l7200/param.h +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-l7200/param.h | ||
3 | * | ||
4 | * Copyright (C) 2000 Rob Scott (rscott@mtrob.fdns.net) | ||
5 | * Steve Hill (sjhill@cotw.com) | ||
6 | * | ||
7 | * This file contains the hardware definitions for the | ||
8 | * LinkUp Systems L7200 SOC development board. | ||
9 | * | ||
10 | * Changelog: | ||
11 | * 04-21-2000 RS Created L7200 version | ||
12 | * 04-25-2000 SJH Cleaned up file | ||
13 | * 05-03-2000 SJH Change comments and rate | ||
14 | */ | ||
15 | |||
16 | /* | ||
17 | * See 'time.h' for how the RTC HZ rate is set | ||
18 | */ | ||
19 | #define HZ 128 | ||
diff --git a/include/asm-arm/arch-lh7a40x/irq.h b/include/asm-arm/arch-lh7a40x/irq.h deleted file mode 100644 index 0f5f0b10f6ca..000000000000 --- a/include/asm-arm/arch-lh7a40x/irq.h +++ /dev/null | |||
@@ -1,11 +0,0 @@ | |||
1 | /* include/asm-arm/arch-lh7a40x/irq.h | ||
2 | * | ||
3 | * Copyright (C) 2004 Logic Product Development | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License | ||
7 | * version 2 as published by the Free Software Foundation. | ||
8 | * | ||
9 | */ | ||
10 | |||
11 | void __init lh7a40x_init_board_irq (void); | ||
diff --git a/include/asm-arm/arch-lh7a40x/param.h b/include/asm-arm/arch-lh7a40x/param.h deleted file mode 100644 index acad0bc5deba..000000000000 --- a/include/asm-arm/arch-lh7a40x/param.h +++ /dev/null | |||
@@ -1,9 +0,0 @@ | |||
1 | /* include/asm-arm/arch-lh7a40x/param.h | ||
2 | * | ||
3 | * Copyright (C) 2004 Coastal Environmental Systems | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or | ||
6 | * modify it under the terms of the GNU General Public License | ||
7 | * version 2 as published by the Free Software Foundation. | ||
8 | * | ||
9 | */ | ||
diff --git a/include/asm-arm/arch-omap/param.h b/include/asm-arm/arch-omap/param.h deleted file mode 100644 index face9ad41e97..000000000000 --- a/include/asm-arm/arch-omap/param.h +++ /dev/null | |||
@@ -1,8 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-omap/param.h | ||
3 | * | ||
4 | */ | ||
5 | |||
6 | #ifdef CONFIG_OMAP_32K_TIMER_HZ | ||
7 | #define HZ CONFIG_OMAP_32K_TIMER_HZ | ||
8 | #endif | ||
diff --git a/include/asm-arm/arch-pxa/debug-macro.S b/include/asm-arm/arch-pxa/debug-macro.S index b6ec68879176..9012cbc0ad8b 100644 --- a/include/asm-arm/arch-pxa/debug-macro.S +++ b/include/asm-arm/arch-pxa/debug-macro.S | |||
@@ -21,18 +21,5 @@ | |||
21 | orr \rx, \rx, #0x00100000 | 21 | orr \rx, \rx, #0x00100000 |
22 | .endm | 22 | .endm |
23 | 23 | ||
24 | .macro senduart,rd,rx | 24 | #define UART_SHIFT 2 |
25 | str \rd, [\rx, #0] | 25 | #include <asm/hardware/debug-8250.S> |
26 | .endm | ||
27 | |||
28 | .macro busyuart,rd,rx | ||
29 | 1002: ldr \rd, [\rx, #0x14] | ||
30 | tst \rd, #(1 << 6) | ||
31 | beq 1002b | ||
32 | .endm | ||
33 | |||
34 | .macro waituart,rd,rx | ||
35 | 1001: ldr \rd, [\rx, #0x14] | ||
36 | tst \rd, #(1 << 5) | ||
37 | beq 1001b | ||
38 | .endm | ||
diff --git a/include/asm-arm/arch-pxa/irq.h b/include/asm-arm/arch-pxa/irq.h deleted file mode 100644 index 48c60f5eff6a..000000000000 --- a/include/asm-arm/arch-pxa/irq.h +++ /dev/null | |||
@@ -1,14 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-pxa/irq.h | ||
3 | * | ||
4 | * Author: Nicolas Pitre | ||
5 | * Created: Jun 15, 2001 | ||
6 | * Copyright: MontaVista Software Inc. | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | */ | ||
12 | |||
13 | #define fixup_irq(x) (x) | ||
14 | |||
diff --git a/include/asm-arm/arch-pxa/param.h b/include/asm-arm/arch-pxa/param.h deleted file mode 100644 index 3197d82d7573..000000000000 --- a/include/asm-arm/arch-pxa/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-pxa/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-realview/debug-macro.S b/include/asm-arm/arch-realview/debug-macro.S index 017ad996848d..f17efc65518a 100644 --- a/include/asm-arm/arch-realview/debug-macro.S +++ b/include/asm-arm/arch-realview/debug-macro.S | |||
@@ -11,8 +11,6 @@ | |||
11 | * | 11 | * |
12 | */ | 12 | */ |
13 | 13 | ||
14 | #include <linux/amba/serial.h> | ||
15 | |||
16 | .macro addruart,rx | 14 | .macro addruart,rx |
17 | mrc p15, 0, \rx, c1, c0 | 15 | mrc p15, 0, \rx, c1, c0 |
18 | tst \rx, #1 @ MMU enabled? | 16 | tst \rx, #1 @ MMU enabled? |
@@ -21,18 +19,4 @@ | |||
21 | orr \rx, \rx, #0x00009000 | 19 | orr \rx, \rx, #0x00009000 |
22 | .endm | 20 | .endm |
23 | 21 | ||
24 | .macro senduart,rd,rx | 22 | #include <asm/hardware/debug-pl01x.S> |
25 | strb \rd, [\rx, #UART01x_DR] | ||
26 | .endm | ||
27 | |||
28 | .macro waituart,rd,rx | ||
29 | 1001: ldr \rd, [\rx, #0x18] @ UARTFLG | ||
30 | tst \rd, #1 << 5 @ UARTFLGUTXFF - 1 when full | ||
31 | bne 1001b | ||
32 | .endm | ||
33 | |||
34 | .macro busyuart,rd,rx | ||
35 | 1001: ldr \rd, [\rx, #0x18] @ UARTFLG | ||
36 | tst \rd, #1 << 3 @ UARTFLGUBUSY - 1 when busy | ||
37 | bne 1001b | ||
38 | .endm | ||
diff --git a/include/asm-arm/arch-realview/param.h b/include/asm-arm/arch-realview/param.h deleted file mode 100644 index 89b1235d32bd..000000000000 --- a/include/asm-arm/arch-realview/param.h +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-realview/param.h | ||
3 | * | ||
4 | * Copyright (C) 2002 ARM Limited | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
diff --git a/include/asm-arm/arch-rpc/debug-macro.S b/include/asm-arm/arch-rpc/debug-macro.S index 456d3d754c3d..c634c8d8f4a1 100644 --- a/include/asm-arm/arch-rpc/debug-macro.S +++ b/include/asm-arm/arch-rpc/debug-macro.S | |||
@@ -20,19 +20,6 @@ | |||
20 | orr \rx, \rx, #0x00000fe0 | 20 | orr \rx, \rx, #0x00000fe0 |
21 | .endm | 21 | .endm |
22 | 22 | ||
23 | .macro senduart,rd,rx | 23 | #define UART_SHIFT 2 |
24 | strb \rd, [\rx] | 24 | #define FLOW_CONTROL |
25 | .endm | 25 | #include <asm/hardware/debug-8250.S> |
26 | |||
27 | .macro busyuart,rd,rx | ||
28 | 1001: ldrb \rd, [\rx, #0x14] | ||
29 | and \rd, \rd, #0x60 | ||
30 | teq \rd, #0x60 | ||
31 | bne 1001b | ||
32 | .endm | ||
33 | |||
34 | .macro waituart,rd,rx | ||
35 | 1001: ldrb \rd, [\rx, #0x18] | ||
36 | tst \rd, #0x10 | ||
37 | beq 1001b | ||
38 | .endm | ||
diff --git a/include/asm-arm/arch-rpc/param.h b/include/asm-arm/arch-rpc/param.h deleted file mode 100644 index 721dcd658858..000000000000 --- a/include/asm-arm/arch-rpc/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-rpc/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-s3c2410/osiris-cpld.h b/include/asm-arm/arch-s3c2410/osiris-cpld.h new file mode 100644 index 000000000000..e9d1ae1f354f --- /dev/null +++ b/include/asm-arm/arch-s3c2410/osiris-cpld.h | |||
@@ -0,0 +1,25 @@ | |||
1 | /* linux/include/asm-arm/arch-s3c2410/osiris-cpld.h | ||
2 | * | ||
3 | * (c) 2005 Simtec Electronics | ||
4 | * http://www.simtec.co.uk/products/ | ||
5 | * Ben Dooks <ben@simtec.co.uk> | ||
6 | * | ||
7 | * OSIRIS - CPLD control constants | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License version 2 as | ||
11 | * published by the Free Software Foundation. | ||
12 | */ | ||
13 | |||
14 | #ifndef __ASM_ARCH_OSIRISCPLD_H | ||
15 | #define __ASM_ARCH_OSIRISCPLD_H | ||
16 | |||
17 | /* CTRL1 - NAND WP control */ | ||
18 | |||
19 | #define OSIRIS_CTRL1_NANDSEL (0x3) | ||
20 | #define OSIRIS_CTRL1_BOOT_INT (1<<3) | ||
21 | #define OSIRIS_CTRL1_PCMCIA (1<<4) | ||
22 | #define OSIRIS_CTRL1_PCMCIA_nWAIT (1<<6) | ||
23 | #define OSIRIS_CTRL1_PCMCIA_nIOIS16 (1<<7) | ||
24 | |||
25 | #endif /* __ASM_ARCH_OSIRISCPLD_H */ | ||
diff --git a/include/asm-arm/arch-s3c2410/osiris-map.h b/include/asm-arm/arch-s3c2410/osiris-map.h new file mode 100644 index 000000000000..7c4b0cd2d14d --- /dev/null +++ b/include/asm-arm/arch-s3c2410/osiris-map.h | |||
@@ -0,0 +1,41 @@ | |||
1 | /* linux/include/asm-arm/arch-s3c2410/osiris-map.h | ||
2 | * | ||
3 | * (c) 2005 Simtec Electronics | ||
4 | * http://www.simtec.co.uk/products/ | ||
5 | * Ben Dooks <ben@simtec.co.uk> | ||
6 | * | ||
7 | * OSIRIS - Memory map definitions | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License version 2 as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * Changelog: | ||
14 | */ | ||
15 | |||
16 | /* needs arch/map.h including with this */ | ||
17 | |||
18 | #ifndef __ASM_ARCH_OSIRISMAP_H | ||
19 | #define __ASM_ARCH_OSIRISMAP_H | ||
20 | |||
21 | /* start peripherals off after the S3C2410 */ | ||
22 | |||
23 | #define OSIRIS_IOADDR(x) (S3C2410_ADDR((x) + 0x05000000)) | ||
24 | |||
25 | #define OSIRIS_PA_CPLD (S3C2410_CS1 | (3<<25)) | ||
26 | |||
27 | /* we put the CPLD registers next, to get them out of the way */ | ||
28 | |||
29 | #define OSIRIS_VA_CTRL1 OSIRIS_IOADDR(0x00000000) /* 0x01300000 */ | ||
30 | #define OSIRIS_PA_CTRL1 (OSIRIS_PA_CPLD) | ||
31 | |||
32 | #define OSIRIS_VA_CTRL2 OSIRIS_IOADDR(0x00100000) /* 0x01400000 */ | ||
33 | #define OSIRIS_PA_CTRL2 (OSIRIS_PA_CPLD + (1<<24)) | ||
34 | |||
35 | #define OSIRIS_VA_CTRL3 OSIRIS_IOADDR(0x00200000) /* 0x01500000 */ | ||
36 | #define OSIRIS_PA_CTRL3 (OSIRIS_PA_CPLD + (2<<24)) | ||
37 | |||
38 | #define OSIRIS_VA_CTRL4 OSIRIS_IOADDR(0x00300000) /* 0x01600000 */ | ||
39 | #define OSIRIS_PA_CTRL4 (OSIRIS_PA_CPLD + (3<<24)) | ||
40 | |||
41 | #endif /* __ASM_ARCH_OSIRISMAP_H */ | ||
diff --git a/include/asm-arm/arch-s3c2410/param.h b/include/asm-arm/arch-s3c2410/param.h deleted file mode 100644 index 483d3f149883..000000000000 --- a/include/asm-arm/arch-s3c2410/param.h +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | /* linux/include/asm-arm/arch-s3c2410/param.h | ||
2 | * | ||
3 | * (c) 2003 Simtec Electronics | ||
4 | * Ben Dooks <ben@simtec.co.uk> | ||
5 | * | ||
6 | * S3C2410 - Machine parameters | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | * | ||
12 | * Changelog: | ||
13 | * 02-Sep-2003 BJD Created file | ||
14 | * 12-Mar-2004 BJD Added include protection | ||
15 | */ | ||
16 | |||
17 | #ifndef __ASM_ARCH_PARAM_H | ||
18 | #define __ASM_ARCH_PARAM_H | ||
19 | |||
20 | /* we cannot get our timer down to 100Hz with the setup as is, but we can | ||
21 | * manage 200 clock ticks per second... if this is a problem, we can always | ||
22 | * add a software pre-scaler to the evil timer systems. | ||
23 | */ | ||
24 | |||
25 | #define HZ 200 | ||
26 | |||
27 | #endif /* __ASM_ARCH_PARAM_H */ | ||
diff --git a/include/asm-arm/arch-s3c2410/regs-gpio.h b/include/asm-arm/arch-s3c2410/regs-gpio.h index 9697f93afe74..d2574084697f 100644 --- a/include/asm-arm/arch-s3c2410/regs-gpio.h +++ b/include/asm-arm/arch-s3c2410/regs-gpio.h | |||
@@ -979,6 +979,7 @@ | |||
979 | #define S3C2410_MISCCR_CLK0_HCLK (3<<4) | 979 | #define S3C2410_MISCCR_CLK0_HCLK (3<<4) |
980 | #define S3C2410_MISCCR_CLK0_PCLK (4<<4) | 980 | #define S3C2410_MISCCR_CLK0_PCLK (4<<4) |
981 | #define S3C2410_MISCCR_CLK0_DCLK0 (5<<4) | 981 | #define S3C2410_MISCCR_CLK0_DCLK0 (5<<4) |
982 | #define S3C2410_MISCCR_CLK0_MASK (7<<4) | ||
982 | 983 | ||
983 | #define S3C2410_MISCCR_CLK1_MPLL (0<<8) | 984 | #define S3C2410_MISCCR_CLK1_MPLL (0<<8) |
984 | #define S3C2410_MISCCR_CLK1_UPLL (1<<8) | 985 | #define S3C2410_MISCCR_CLK1_UPLL (1<<8) |
@@ -986,6 +987,7 @@ | |||
986 | #define S3C2410_MISCCR_CLK1_HCLK (3<<8) | 987 | #define S3C2410_MISCCR_CLK1_HCLK (3<<8) |
987 | #define S3C2410_MISCCR_CLK1_PCLK (4<<8) | 988 | #define S3C2410_MISCCR_CLK1_PCLK (4<<8) |
988 | #define S3C2410_MISCCR_CLK1_DCLK1 (5<<8) | 989 | #define S3C2410_MISCCR_CLK1_DCLK1 (5<<8) |
990 | #define S3C2410_MISCCR_CLK1_MASK (7<<8) | ||
989 | 991 | ||
990 | #define S3C2410_MISCCR_USBSUSPND0 (1<<12) | 992 | #define S3C2410_MISCCR_USBSUSPND0 (1<<12) |
991 | #define S3C2410_MISCCR_USBSUSPND1 (1<<13) | 993 | #define S3C2410_MISCCR_USBSUSPND1 (1<<13) |
diff --git a/include/asm-arm/arch-sa1100/debug-macro.S b/include/asm-arm/arch-sa1100/debug-macro.S index 755fa3453862..267c317a7408 100644 --- a/include/asm-arm/arch-sa1100/debug-macro.S +++ b/include/asm-arm/arch-sa1100/debug-macro.S | |||
@@ -10,6 +10,7 @@ | |||
10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
11 | * | 11 | * |
12 | */ | 12 | */ |
13 | #include <asm/hardware.h> | ||
13 | 14 | ||
14 | .macro addruart,rx | 15 | .macro addruart,rx |
15 | mrc p15, 0, \rx, c1, c0 | 16 | mrc p15, 0, \rx, c1, c0 |
diff --git a/include/asm-arm/arch-sa1100/param.h b/include/asm-arm/arch-sa1100/param.h deleted file mode 100644 index 867488909ecd..000000000000 --- a/include/asm-arm/arch-sa1100/param.h +++ /dev/null | |||
@@ -1,3 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-sa1100/param.h | ||
3 | */ | ||
diff --git a/include/asm-arm/arch-shark/param.h b/include/asm-arm/arch-shark/param.h deleted file mode 100644 index 997eeb71de00..000000000000 --- a/include/asm-arm/arch-shark/param.h +++ /dev/null | |||
@@ -1,5 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-shark/param.h | ||
3 | * | ||
4 | * by Alexander Schulz | ||
5 | */ | ||
diff --git a/include/asm-arm/arch-versatile/debug-macro.S b/include/asm-arm/arch-versatile/debug-macro.S index ef6167116dbb..fe106d184e62 100644 --- a/include/asm-arm/arch-versatile/debug-macro.S +++ b/include/asm-arm/arch-versatile/debug-macro.S | |||
@@ -11,8 +11,6 @@ | |||
11 | * | 11 | * |
12 | */ | 12 | */ |
13 | 13 | ||
14 | #include <linux/amba/serial.h> | ||
15 | |||
16 | .macro addruart,rx | 14 | .macro addruart,rx |
17 | mrc p15, 0, \rx, c1, c0 | 15 | mrc p15, 0, \rx, c1, c0 |
18 | tst \rx, #1 @ MMU enabled? | 16 | tst \rx, #1 @ MMU enabled? |
@@ -22,18 +20,4 @@ | |||
22 | orr \rx, \rx, #0x00001000 | 20 | orr \rx, \rx, #0x00001000 |
23 | .endm | 21 | .endm |
24 | 22 | ||
25 | .macro senduart,rd,rx | 23 | #include <asm/hardware/debug-pl01x.S> |
26 | strb \rd, [\rx, #UART01x_DR] | ||
27 | .endm | ||
28 | |||
29 | .macro waituart,rd,rx | ||
30 | 1001: ldr \rd, [\rx, #0x18] @ UARTFLG | ||
31 | tst \rd, #1 << 5 @ UARTFLGUTXFF - 1 when full | ||
32 | bne 1001b | ||
33 | .endm | ||
34 | |||
35 | .macro busyuart,rd,rx | ||
36 | 1001: ldr \rd, [\rx, #0x18] @ UARTFLG | ||
37 | tst \rd, #1 << 3 @ UARTFLGUBUSY - 1 when busy | ||
38 | bne 1001b | ||
39 | .endm | ||
diff --git a/include/asm-arm/arch-versatile/param.h b/include/asm-arm/arch-versatile/param.h deleted file mode 100644 index 34b897335f87..000000000000 --- a/include/asm-arm/arch-versatile/param.h +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/arch-versatile/param.h | ||
3 | * | ||
4 | * Copyright (C) 2002 ARM Limited | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License as published by | ||
8 | * the Free Software Foundation; either version 2 of the License, or | ||
9 | * (at your option) any later version. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | ||
19 | */ | ||
diff --git a/include/asm-arm/delay.h b/include/asm-arm/delay.h index 1704360e9699..b2deda181549 100644 --- a/include/asm-arm/delay.h +++ b/include/asm-arm/delay.h | |||
@@ -6,6 +6,8 @@ | |||
6 | #ifndef __ASM_ARM_DELAY_H | 6 | #ifndef __ASM_ARM_DELAY_H |
7 | #define __ASM_ARM_DELAY_H | 7 | #define __ASM_ARM_DELAY_H |
8 | 8 | ||
9 | #include <asm/param.h> /* HZ */ | ||
10 | |||
9 | extern void __delay(int loops); | 11 | extern void __delay(int loops); |
10 | 12 | ||
11 | /* | 13 | /* |
@@ -13,7 +15,7 @@ extern void __delay(int loops); | |||
13 | * it, it means that you're calling udelay() with an out of range value. | 15 | * it, it means that you're calling udelay() with an out of range value. |
14 | * | 16 | * |
15 | * With currently imposed limits, this means that we support a max delay | 17 | * With currently imposed limits, this means that we support a max delay |
16 | * of 2000us and 671 bogomips | 18 | * of 2000us. Further limits: HZ<=1000 and bogomips<=3355 |
17 | */ | 19 | */ |
18 | extern void __bad_udelay(void); | 20 | extern void __bad_udelay(void); |
19 | 21 | ||
@@ -32,10 +34,10 @@ extern void __const_udelay(unsigned long); | |||
32 | 34 | ||
33 | #define MAX_UDELAY_MS 2 | 35 | #define MAX_UDELAY_MS 2 |
34 | 36 | ||
35 | #define udelay(n) \ | 37 | #define udelay(n) \ |
36 | (__builtin_constant_p(n) ? \ | 38 | (__builtin_constant_p(n) ? \ |
37 | ((n) > (MAX_UDELAY_MS * 1000) ? __bad_udelay() : \ | 39 | ((n) > (MAX_UDELAY_MS * 1000) ? __bad_udelay() : \ |
38 | __const_udelay((n) * 0x68dbul)) : \ | 40 | __const_udelay((n) * ((2199023U*HZ)>>11))) : \ |
39 | __udelay(n)) | 41 | __udelay(n)) |
40 | 42 | ||
41 | #endif /* defined(_ARM_DELAY_H) */ | 43 | #endif /* defined(_ARM_DELAY_H) */ |
diff --git a/include/asm-arm/hardware/debug-8250.S b/include/asm-arm/hardware/debug-8250.S new file mode 100644 index 000000000000..4594fea91ec1 --- /dev/null +++ b/include/asm-arm/hardware/debug-8250.S | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * linux/include/asm-arm/hardware/debug-8250.h | ||
3 | * | ||
4 | * Copyright (C) 1994-1999 Russell King | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | #include <linux/serial_reg.h> | ||
11 | |||
12 | .macro senduart,rd,rx | ||
13 | strb \rd, [\rx, #UART_TX << UART_SHIFT] | ||
14 | .endm | ||
15 | |||
16 | .macro busyuart,rd,rx | ||
17 | 1002: ldrb \rd, [\rx, #UART_LSR << UART_SHIFT] | ||
18 | and \rd, \rd, #UART_LSR_TEMT | UART_LSR_THRE | ||
19 | teq \rd, #UART_LSR_TEMT | UART_LSR_THRE | ||
20 | bne 1002b | ||
21 | .endm | ||
22 | |||
23 | .macro waituart,rd,rx | ||
24 | #ifdef FLOW_CONTROL | ||
25 | 1001: ldrb \rd, [\rx, #UART_MSR << UART_SHIFT] | ||
26 | tst \rd, #UART_MSR_CTS | ||
27 | beq 1001b | ||
28 | #endif | ||
29 | .endm | ||
diff --git a/include/asm-arm/hardware/debug-pl01x.S b/include/asm-arm/hardware/debug-pl01x.S new file mode 100644 index 000000000000..db0d0f7de5e9 --- /dev/null +++ b/include/asm-arm/hardware/debug-pl01x.S | |||
@@ -0,0 +1,29 @@ | |||
1 | /* linux/include/asm-arm/arch-integrator/debug-macro.S | ||
2 | * | ||
3 | * Debugging macro include header | ||
4 | * | ||
5 | * Copyright (C) 1994-1999 Russell King | ||
6 | * Moved from linux/arch/arm/kernel/debug.S by Ben Dooks | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | * | ||
12 | */ | ||
13 | #include <linux/amba/serial.h> | ||
14 | |||
15 | .macro senduart,rd,rx | ||
16 | strb \rd, [\rx, #UART01x_DR] | ||
17 | .endm | ||
18 | |||
19 | .macro waituart,rd,rx | ||
20 | 1001: ldr \rd, [\rx, #UART01x_FR] | ||
21 | tst \rd, #UART01x_FR_TXFF | ||
22 | bne 1001b | ||
23 | .endm | ||
24 | |||
25 | .macro busyuart,rd,rx | ||
26 | 1001: ldr \rd, [\rx, #UART01x_FR] | ||
27 | tst \rd, #UART01x_FR_BUSY | ||
28 | bne 1001b | ||
29 | .endm | ||
diff --git a/include/asm-arm/arch-ixp2000/uengine.h b/include/asm-arm/hardware/uengine.h index b442d65c6593..b442d65c6593 100644 --- a/include/asm-arm/arch-ixp2000/uengine.h +++ b/include/asm-arm/hardware/uengine.h | |||
diff --git a/include/asm-arm/hardware/vic.h b/include/asm-arm/hardware/vic.h index 81825eb54c9e..ed9ca3736a0b 100644 --- a/include/asm-arm/hardware/vic.h +++ b/include/asm-arm/hardware/vic.h | |||
@@ -39,7 +39,7 @@ | |||
39 | #define VIC_VECT_CNTL_ENABLE (1 << 5) | 39 | #define VIC_VECT_CNTL_ENABLE (1 << 5) |
40 | 40 | ||
41 | #ifndef __ASSEMBLY__ | 41 | #ifndef __ASSEMBLY__ |
42 | void vic_init(void __iomem *base, u32 vic_sources); | 42 | void vic_init(void __iomem *base, unsigned int irq_start, u32 vic_sources); |
43 | #endif | 43 | #endif |
44 | 44 | ||
45 | #endif | 45 | #endif |
diff --git a/include/asm-arm/mach/arch.h b/include/asm-arm/mach/arch.h index 2cd57b4d64d9..fd2f9bf4dcc6 100644 --- a/include/asm-arm/mach/arch.h +++ b/include/asm-arm/mach/arch.h | |||
@@ -10,19 +10,16 @@ | |||
10 | 10 | ||
11 | #ifndef __ASSEMBLY__ | 11 | #ifndef __ASSEMBLY__ |
12 | 12 | ||
13 | #include <linux/compiler.h> | ||
14 | |||
15 | struct tag; | 13 | struct tag; |
16 | struct meminfo; | 14 | struct meminfo; |
17 | struct sys_timer; | 15 | struct sys_timer; |
18 | 16 | ||
19 | struct machine_desc { | 17 | struct machine_desc { |
20 | /* | 18 | /* |
21 | * Note! The first five elements are used | 19 | * Note! The first four elements are used |
22 | * by assembler code in head-armv.S | 20 | * by assembler code in head-armv.S |
23 | */ | 21 | */ |
24 | unsigned int nr; /* architecture number */ | 22 | unsigned int nr; /* architecture number */ |
25 | unsigned int __deprecated phys_ram; /* start of physical ram */ | ||
26 | unsigned int phys_io; /* start of physical io */ | 23 | unsigned int phys_io; /* start of physical io */ |
27 | unsigned int io_pg_offst; /* byte offset for io | 24 | unsigned int io_pg_offst; /* byte offset for io |
28 | * page tabe entry */ | 25 | * page tabe entry */ |
diff --git a/include/asm-arm/mach/irq.h b/include/asm-arm/mach/irq.h index 0ce6ca588d8c..d4d420ecf3a8 100644 --- a/include/asm-arm/mach/irq.h +++ b/include/asm-arm/mach/irq.h | |||
@@ -61,7 +61,7 @@ struct irqdesc { | |||
61 | struct irqchip *chip; | 61 | struct irqchip *chip; |
62 | struct irqaction *action; | 62 | struct irqaction *action; |
63 | struct list_head pend; | 63 | struct list_head pend; |
64 | void *chipdata; | 64 | void __iomem *base; |
65 | void *data; | 65 | void *data; |
66 | unsigned int disable_depth; | 66 | unsigned int disable_depth; |
67 | 67 | ||
@@ -74,6 +74,7 @@ struct irqdesc { | |||
74 | unsigned int noautoenable : 1; /* don't automatically enable IRQ */ | 74 | unsigned int noautoenable : 1; /* don't automatically enable IRQ */ |
75 | unsigned int unused :25; | 75 | unsigned int unused :25; |
76 | 76 | ||
77 | unsigned int irqs_unhandled; | ||
77 | struct proc_dir_entry *procdir; | 78 | struct proc_dir_entry *procdir; |
78 | 79 | ||
79 | #ifdef CONFIG_SMP | 80 | #ifdef CONFIG_SMP |
@@ -113,8 +114,8 @@ void __set_irq_handler(unsigned int irq, irq_handler_t, int); | |||
113 | #define set_irq_handler(irq,handler) __set_irq_handler(irq,handler,0) | 114 | #define set_irq_handler(irq,handler) __set_irq_handler(irq,handler,0) |
114 | #define set_irq_chained_handler(irq,handler) __set_irq_handler(irq,handler,1) | 115 | #define set_irq_chained_handler(irq,handler) __set_irq_handler(irq,handler,1) |
115 | #define set_irq_data(irq,d) do { irq_desc[irq].data = d; } while (0) | 116 | #define set_irq_data(irq,d) do { irq_desc[irq].data = d; } while (0) |
116 | #define set_irq_chipdata(irq,d) do { irq_desc[irq].chipdata = d; } while (0) | 117 | #define set_irq_chipdata(irq,d) do { irq_desc[irq].base = d; } while (0) |
117 | #define get_irq_chipdata(irq) (irq_desc[irq].chipdata) | 118 | #define get_irq_chipdata(irq) (irq_desc[irq].base) |
118 | 119 | ||
119 | void set_irq_chip(unsigned int irq, struct irqchip *); | 120 | void set_irq_chip(unsigned int irq, struct irqchip *); |
120 | void set_irq_flags(unsigned int irq, unsigned int flags); | 121 | void set_irq_flags(unsigned int irq, unsigned int flags); |
diff --git a/include/asm-arm/param.h b/include/asm-arm/param.h index 94223d4d7e88..15806468ba72 100644 --- a/include/asm-arm/param.h +++ b/include/asm-arm/param.h | |||
@@ -11,12 +11,7 @@ | |||
11 | #define __ASM_PARAM_H | 11 | #define __ASM_PARAM_H |
12 | 12 | ||
13 | #ifdef __KERNEL__ | 13 | #ifdef __KERNEL__ |
14 | # include <asm/arch/param.h> /* for kernel version of HZ */ | 14 | # define HZ CONFIG_HZ /* Internal kernel timer frequency */ |
15 | |||
16 | # ifndef HZ | ||
17 | # define HZ 100 /* Internal kernel timer frequency */ | ||
18 | # endif | ||
19 | |||
20 | # define USER_HZ 100 /* User interfaces are in "ticks" */ | 15 | # define USER_HZ 100 /* User interfaces are in "ticks" */ |
21 | # define CLOCKS_PER_SEC (USER_HZ) /* like times() */ | 16 | # define CLOCKS_PER_SEC (USER_HZ) /* like times() */ |
22 | #else | 17 | #else |