diff options
Diffstat (limited to 'arch/arm/mach-mv78xx0')
-rw-r--r-- | arch/arm/mach-mv78xx0/common.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/include/mach/bridge-regs.h | 39 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/include/mach/entry-macro.S | 2 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/include/mach/mv78xx0.h | 42 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/include/mach/system.h | 3 | ||||
-rw-r--r-- | arch/arm/mach-mv78xx0/irq.c | 2 |
6 files changed, 54 insertions, 35 deletions
diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c index a575daaa62d1..9ba595083dab 100644 --- a/arch/arm/mach-mv78xx0/common.c +++ b/arch/arm/mach-mv78xx0/common.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <asm/mach/map.h> | 20 | #include <asm/mach/map.h> |
21 | #include <asm/mach/time.h> | 21 | #include <asm/mach/time.h> |
22 | #include <mach/mv78xx0.h> | 22 | #include <mach/mv78xx0.h> |
23 | #include <mach/bridge-regs.h> | ||
23 | #include <plat/cache-feroceon-l2.h> | 24 | #include <plat/cache-feroceon-l2.h> |
24 | #include <plat/ehci-orion.h> | 25 | #include <plat/ehci-orion.h> |
25 | #include <plat/orion_nand.h> | 26 | #include <plat/orion_nand.h> |
diff --git a/arch/arm/mach-mv78xx0/include/mach/bridge-regs.h b/arch/arm/mach-mv78xx0/include/mach/bridge-regs.h new file mode 100644 index 000000000000..2d14c4fe294d --- /dev/null +++ b/arch/arm/mach-mv78xx0/include/mach/bridge-regs.h | |||
@@ -0,0 +1,39 @@ | |||
1 | /* | ||
2 | * arch/arm/mach-mv78xx0/include/mach/bridge-regs.h | ||
3 | * | ||
4 | * This file is licensed under the terms of the GNU General Public | ||
5 | * License version 2. This program is licensed "as is" without any | ||
6 | * warranty of any kind, whether express or implied. | ||
7 | */ | ||
8 | |||
9 | #ifndef __ASM_ARCH_BRIDGE_REGS_H | ||
10 | #define __ASM_ARCH_BRIDGE_REGS_H | ||
11 | |||
12 | #include <mach/mv78xx0.h> | ||
13 | |||
14 | #define CPU_CONTROL (BRIDGE_VIRT_BASE | 0x0104) | ||
15 | #define L2_WRITETHROUGH 0x00020000 | ||
16 | |||
17 | #define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108) | ||
18 | #define SOFT_RESET_OUT_EN 0x00000004 | ||
19 | |||
20 | #define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c) | ||
21 | #define SOFT_RESET 0x00000001 | ||
22 | |||
23 | #define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110) | ||
24 | #define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114) | ||
25 | #define BRIDGE_INT_TIMER0 0x0002 | ||
26 | #define BRIDGE_INT_TIMER1 0x0004 | ||
27 | #define BRIDGE_INT_TIMER1_CLR (~0x0004) | ||
28 | |||
29 | #define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200) | ||
30 | #define IRQ_CAUSE_ERR_OFF 0x0000 | ||
31 | #define IRQ_CAUSE_LOW_OFF 0x0004 | ||
32 | #define IRQ_CAUSE_HIGH_OFF 0x0008 | ||
33 | #define IRQ_MASK_ERR_OFF 0x000c | ||
34 | #define IRQ_MASK_LOW_OFF 0x0010 | ||
35 | #define IRQ_MASK_HIGH_OFF 0x0014 | ||
36 | |||
37 | #define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300) | ||
38 | |||
39 | #endif | ||
diff --git a/arch/arm/mach-mv78xx0/include/mach/entry-macro.S b/arch/arm/mach-mv78xx0/include/mach/entry-macro.S index fbfb2693ce6c..66ae2d29e773 100644 --- a/arch/arm/mach-mv78xx0/include/mach/entry-macro.S +++ b/arch/arm/mach-mv78xx0/include/mach/entry-macro.S | |||
@@ -8,7 +8,7 @@ | |||
8 | * warranty of any kind, whether express or implied. | 8 | * warranty of any kind, whether express or implied. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <mach/mv78xx0.h> | 11 | #include <mach/bridge-regs.h> |
12 | 12 | ||
13 | .macro disable_fiq | 13 | .macro disable_fiq |
14 | .endm | 14 | .endm |
diff --git a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h b/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h index 582cffc733ad..d715b92b0908 100644 --- a/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h +++ b/arch/arm/mach-mv78xx0/include/mach/mv78xx0.h | |||
@@ -59,37 +59,6 @@ | |||
59 | * Core-specific peripheral registers. | 59 | * Core-specific peripheral registers. |
60 | */ | 60 | */ |
61 | #define BRIDGE_VIRT_BASE (MV78XX0_CORE_REGS_VIRT_BASE) | 61 | #define BRIDGE_VIRT_BASE (MV78XX0_CORE_REGS_VIRT_BASE) |
62 | #define CPU_CONTROL (BRIDGE_VIRT_BASE | 0x0104) | ||
63 | #define L2_WRITETHROUGH 0x00020000 | ||
64 | #define RSTOUTn_MASK (BRIDGE_VIRT_BASE | 0x0108) | ||
65 | #define SOFT_RESET_OUT_EN 0x00000004 | ||
66 | #define SYSTEM_SOFT_RESET (BRIDGE_VIRT_BASE | 0x010c) | ||
67 | #define SOFT_RESET 0x00000001 | ||
68 | #define BRIDGE_CAUSE (BRIDGE_VIRT_BASE | 0x0110) | ||
69 | #define BRIDGE_MASK (BRIDGE_VIRT_BASE | 0x0114) | ||
70 | #define BRIDGE_INT_TIMER0 0x0002 | ||
71 | #define BRIDGE_INT_TIMER1 0x0004 | ||
72 | #define BRIDGE_INT_TIMER1_CLR (~0x0004) | ||
73 | #define IRQ_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0200) | ||
74 | #define IRQ_CAUSE_ERR_OFF 0x0000 | ||
75 | #define IRQ_CAUSE_LOW_OFF 0x0004 | ||
76 | #define IRQ_CAUSE_HIGH_OFF 0x0008 | ||
77 | #define IRQ_MASK_ERR_OFF 0x000c | ||
78 | #define IRQ_MASK_LOW_OFF 0x0010 | ||
79 | #define IRQ_MASK_HIGH_OFF 0x0014 | ||
80 | #define TIMER_VIRT_BASE (BRIDGE_VIRT_BASE | 0x0300) | ||
81 | |||
82 | /* | ||
83 | * Supported devices and revisions. | ||
84 | */ | ||
85 | #define MV78X00_Z0_DEV_ID 0x6381 | ||
86 | #define MV78X00_REV_Z0 1 | ||
87 | |||
88 | #define MV78100_DEV_ID 0x7810 | ||
89 | #define MV78100_REV_A0 1 | ||
90 | |||
91 | #define MV78200_DEV_ID 0x7820 | ||
92 | #define MV78200_REV_A0 1 | ||
93 | 62 | ||
94 | /* | 63 | /* |
95 | * Register Map | 64 | * Register Map |
@@ -135,5 +104,16 @@ | |||
135 | 104 | ||
136 | #define SATA_PHYS_BASE (MV78XX0_REGS_PHYS_BASE | 0xa0000) | 105 | #define SATA_PHYS_BASE (MV78XX0_REGS_PHYS_BASE | 0xa0000) |
137 | 106 | ||
107 | /* | ||
108 | * Supported devices and revisions. | ||
109 | */ | ||
110 | #define MV78X00_Z0_DEV_ID 0x6381 | ||
111 | #define MV78X00_REV_Z0 1 | ||
112 | |||
113 | #define MV78100_DEV_ID 0x7810 | ||
114 | #define MV78100_REV_A0 1 | ||
115 | |||
116 | #define MV78200_DEV_ID 0x7820 | ||
117 | #define MV78200_REV_A0 1 | ||
138 | 118 | ||
139 | #endif | 119 | #endif |
diff --git a/arch/arm/mach-mv78xx0/include/mach/system.h b/arch/arm/mach-mv78xx0/include/mach/system.h index 1d6350b22d0b..66e7ce4e90bd 100644 --- a/arch/arm/mach-mv78xx0/include/mach/system.h +++ b/arch/arm/mach-mv78xx0/include/mach/system.h | |||
@@ -9,8 +9,7 @@ | |||
9 | #ifndef __ASM_ARCH_SYSTEM_H | 9 | #ifndef __ASM_ARCH_SYSTEM_H |
10 | #define __ASM_ARCH_SYSTEM_H | 10 | #define __ASM_ARCH_SYSTEM_H |
11 | 11 | ||
12 | #include <mach/hardware.h> | 12 | #include <mach/bridge-regs.h> |
13 | #include <mach/mv78xx0.h> | ||
14 | 13 | ||
15 | static inline void arch_idle(void) | 14 | static inline void arch_idle(void) |
16 | { | 15 | { |
diff --git a/arch/arm/mach-mv78xx0/irq.c b/arch/arm/mach-mv78xx0/irq.c index 30b7e4bcdbc7..f289b0ea7dcf 100644 --- a/arch/arm/mach-mv78xx0/irq.c +++ b/arch/arm/mach-mv78xx0/irq.c | |||
@@ -13,7 +13,7 @@ | |||
13 | #include <linux/pci.h> | 13 | #include <linux/pci.h> |
14 | #include <linux/irq.h> | 14 | #include <linux/irq.h> |
15 | #include <asm/gpio.h> | 15 | #include <asm/gpio.h> |
16 | #include <mach/mv78xx0.h> | 16 | #include <mach/bridge-regs.h> |
17 | #include <plat/irq.h> | 17 | #include <plat/irq.h> |
18 | #include "common.h" | 18 | #include "common.h" |
19 | 19 | ||