summaryrefslogtreecommitdiffstats
path: root/include/asm-arm/arch-rpc/system.h
blob: a4b92939eb90937b8ae3af34dc3bfd6aa23f25e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/*
 * linux/include/asm-arm/arch-rpc/system.h
 *
 * Copyright (c) 1996 Russell King
 */
#ifndef __ASM_ARCH_SYSTEM_H
#define __ASM_ARCH_SYSTEM_H

#include <asm/iomd.h>

#define arch_reset(mode) {						\
	extern void ecard_reset (int card);				\
	outb (0, IOMD_ROMCR0);						\
	ecard_reset(-1);						\
	cli();								\
	__asm__ __volatile__("msr  spsr, r1;"				\
			     "mcr  p15, 0, %0, c1, c0, 0;"		\
			     "movs pc, #0"				\
			 : 						\
			 : "r" (cpu_reset()));				\
	}

#endif