| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
| Lennert Buytenhek | c852ac8 | 2006-09-18 23:26:25 +0100 | [diff] [blame] | 2 |  * include/asm-arm/arch-iop32x/system.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 |  * | 
| Lennert Buytenhek | c852ac8 | 2006-09-18 23:26:25 +0100 | [diff] [blame] | 4 |  * Copyright (C) 2001 MontaVista Software, Inc. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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 |  | 
| Lennert Buytenhek | e60d07b | 2006-09-21 02:42:12 +0100 | [diff] [blame] | 11 | #include <asm/mach-types.h> | 
 | 12 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 13 | static inline void arch_idle(void) | 
 | 14 | { | 
 | 15 | 	cpu_do_idle(); | 
 | 16 | } | 
 | 17 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 18 | static inline void arch_reset(char mode) | 
 | 19 | { | 
| Lennert Buytenhek | e60d07b | 2006-09-21 02:42:12 +0100 | [diff] [blame] | 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 |  | 
| Lennert Buytenhek | c852ac8 | 2006-09-18 23:26:25 +0100 | [diff] [blame] | 29 | 	*IOP3XX_PCSR = 0x30; | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 30 |  | 
| Lennert Buytenhek | c852ac8 | 2006-09-18 23:26:25 +0100 | [diff] [blame] | 31 | 	/* Jump into ROM at address 0 */ | 
 | 32 | 	cpu_reset(0); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 33 | } |