diff options
Diffstat (limited to 'include/asm-arm')
-rw-r--r-- | include/asm-arm/arch-iop32x/hardware.h | 1 | ||||
-rw-r--r-- | include/asm-arm/arch-iop32x/n2100.h | 19 | ||||
-rw-r--r-- | include/asm-arm/arch-iop32x/system.h | 11 |
3 files changed, 31 insertions, 0 deletions
diff --git a/include/asm-arm/arch-iop32x/hardware.h b/include/asm-arm/arch-iop32x/hardware.h index 6a3001f2f7e0..c6f58b91ddbc 100644 --- a/include/asm-arm/arch-iop32x/hardware.h +++ b/include/asm-arm/arch-iop32x/hardware.h | |||
@@ -37,6 +37,7 @@ void iop32x_init_irq(void); | |||
37 | */ | 37 | */ |
38 | #include "iq80321.h" | 38 | #include "iq80321.h" |
39 | #include "iq31244.h" | 39 | #include "iq31244.h" |
40 | #include "n2100.h" | ||
40 | 41 | ||
41 | 42 | ||
42 | #endif | 43 | #endif |
diff --git a/include/asm-arm/arch-iop32x/n2100.h b/include/asm-arm/arch-iop32x/n2100.h new file mode 100644 index 000000000000..fed31a648425 --- /dev/null +++ b/include/asm-arm/arch-iop32x/n2100.h | |||
@@ -0,0 +1,19 @@ | |||
1 | /* | ||
2 | * include/asm/arch-iop32x/n2100.h | ||
3 | * | ||
4 | * Thecus N2100 board registers | ||
5 | */ | ||
6 | |||
7 | #ifndef __N2100_H | ||
8 | #define __N2100_H | ||
9 | |||
10 | #define N2100_UART 0xfe800000 /* UART */ | ||
11 | |||
12 | #define N2100_COPY_BUTTON IOP3XX_GPIO_LINE(0) | ||
13 | #define N2100_PCA9532_RESET IOP3XX_GPIO_LINE(2) | ||
14 | #define N2100_RESET_BUTTON IOP3XX_GPIO_LINE(3) | ||
15 | #define N2100_HARDWARE_RESET IOP3XX_GPIO_LINE(4) | ||
16 | #define N2100_POWER_BUTTON IOP3XX_GPIO_LINE(5) | ||
17 | |||
18 | |||
19 | #endif | ||
diff --git a/include/asm-arm/arch-iop32x/system.h b/include/asm-arm/arch-iop32x/system.h index c65ede3e627a..17b7eb7e9c0d 100644 --- a/include/asm-arm/arch-iop32x/system.h +++ b/include/asm-arm/arch-iop32x/system.h | |||
@@ -8,6 +8,8 @@ | |||
8 | * published by the Free Software Foundation. | 8 | * published by the Free Software Foundation. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <asm/mach-types.h> | ||
12 | |||
11 | static inline void arch_idle(void) | 13 | static inline void arch_idle(void) |
12 | { | 14 | { |
13 | cpu_do_idle(); | 15 | cpu_do_idle(); |
@@ -15,6 +17,15 @@ static inline void arch_idle(void) | |||
15 | 17 | ||
16 | static inline void arch_reset(char mode) | 18 | static inline void arch_reset(char mode) |
17 | { | 19 | { |
20 | local_irq_disable(); | ||
21 | |||
22 | if (machine_is_n2100()) { | ||
23 | gpio_line_set(N2100_HARDWARE_RESET, GPIO_LOW); | ||
24 | gpio_line_config(N2100_HARDWARE_RESET, GPIO_OUT); | ||
25 | while (1) | ||
26 | ; | ||
27 | } | ||
28 | |||
18 | *IOP3XX_PCSR = 0x30; | 29 | *IOP3XX_PCSR = 0x30; |
19 | 30 | ||
20 | /* Jump into ROM at address 0 */ | 31 | /* Jump into ROM at address 0 */ |