|
@@ -0,0 +1,54 @@
|
|
|
+/*
|
|
|
+ * This file is subject to the terms and conditions of the GNU General Public
|
|
|
+ * License. See the file "COPYING" in the main directory of this archive
|
|
|
+ * for more details.
|
|
|
+ *
|
|
|
+ * Copyright (C) 1994 Waldorf GMBH
|
|
|
+ * Copyright (C) 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003 Ralf Baechle
|
|
|
+ * Copyright (C) 1996 Paul M. Antoine
|
|
|
+ * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
|
|
|
+ */
|
|
|
+#ifndef _ASM_PROCESSOR_H
|
|
|
+#define _ASM_PROCESSOR_H
|
|
|
+
|
|
|
+#include <linux/cpumask.h>
|
|
|
+#include <linux/threads.h>
|
|
|
+
|
|
|
+#include <asm/cachectl.h>
|
|
|
+#include <asm/cpu.h>
|
|
|
+#include <asm/cpu-info.h>
|
|
|
+#include <asm/mipsregs.h>
|
|
|
+#include <asm/prefetch.h>
|
|
|
+
|
|
|
+/*
|
|
|
+ * Return current * instruction pointer ("program counter").
|
|
|
+ */
|
|
|
+#define current_text_addr() ({ __label__ _l; _l: &&_l;})
|
|
|
+
|
|
|
+/*
|
|
|
+ * System setup and hardware flags..
|
|
|
+ */
|
|
|
+extern void (*cpu_wait)(void);
|
|
|
+
|
|
|
+extern unsigned int vced_count, vcei_count;
|
|
|
+
|
|
|
+/*
|
|
|
+ * MIPS does have an arch_pick_mmap_layout()
|
|
|
+ */
|
|
|
+#define HAVE_ARCH_PICK_MMAP_LAYOUT 1
|
|
|
+
|
|
|
+/*
|
|
|
+ * A special page (the vdso) is mapped into all processes at the very
|
|
|
+ * top of the virtual memory space.
|
|
|
+ */
|
|
|
+#define SPECIAL_PAGES_SIZE PAGE_SIZE
|
|
|
+
|
|
|
+#ifdef CONFIG_32BIT
|
|
|
+/*
|
|
|
+ * User space process size: 2GB. This is hardcoded into a few places,
|
|
|
+ * so don't change it unless you know what you are doing.
|
|
|
+ */
|
|
|
+#define TASK_SIZE 0x7fff8000UL
|
|
|
+
|
|
|
+#ifdef __KERNEL__
|
|
|
+#define STACK_TOP_MAX TASK_SIZE
|