summaryrefslogtreecommitdiffstats
path: root/arch/mips/mips1/pagetables.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/mips1/pagetables.c')
-rw-r--r--arch/mips/mips1/pagetables.c86
1 files changed, 0 insertions, 86 deletions
diff --git a/arch/mips/mips1/pagetables.c b/arch/mips/mips1/pagetables.c
deleted file mode 100644
index 22419d1c9..000000000
--- a/arch/mips/mips1/pagetables.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * 32 bit MIPS specific page handling.
- *
- * 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) 1996 Ralf Baechle
- */
-#include <linux/mm.h>
-#include <asm/cache.h>
-#include <asm/mipsconfig.h>
-#include <asm/page.h>
-#include <asm/pgtable.h>
-
-void (*pgd_init)(unsigned long page);
-
-/*
- * Initialize new page directory with pointers to invalid ptes
- */
-void mips1_pgd_init(unsigned long page)
-{
- unsigned long dummy1, dummy2;
-
- /*
- * The plain and boring version for the R3000. No cache flushing
- * stuff is needed since the R3000 has physical caches.
- */
- __asm__ __volatile__(
- ".set\tnoreorder\n"
- "1:\tsw\t%2,(%0)\n\t"
- "sw\t%2,4(%0)\n\t"
- "sw\t%2,8(%0)\n\t"
- "sw\t%2,12(%0)\n\t"
- "sw\t%2,16(%0)\n\t"
- "sw\t%2,20(%0)\n\t"
- "sw\t%2,24(%0)\n\t"
- "sw\t%2,28(%0)\n\t"
- "subu\t%1,1\n\t"
- "bnez\t%1,1b\n\t"
- "addiu\t%0,32\n\t"
- ".set\treorder"
- :"=r" (dummy1),
- "=r" (dummy2)
- :"r" (((unsigned long) invalid_pte_table /* - PAGE_OFFSET */ ) |
- _PAGE_TABLE),
- "0" (page),
- "1" (PAGE_SIZE/(sizeof(pmd_t)*8)));
-}
-
-void (*clear_page)(unsigned long page)
-
-/*
- * To do: cache magic ...
- */
-void mips1_clear_page(unsigned long page)
-{
- __asm__ __volatile__(
- ".set\tnoreorder\n\t"
- ".set\tnoat\n\t"
- "addiu\t$1,%0,%2\n"
- "1:\tsw\t$0,(%0)\n\t"
- "sw\t$0,4(%0)\n\t"
- "sw\t$0,8(%0)\n\t"
- "sw\t$0,12(%0)\n\t"
- "addiu\t%0,32\n\t"
- "sw\t$0,-16(%0)\n\t"
- "sw\t$0,-12(%0)\n\t"
- "sw\t$0,-8(%0)\n\t"
- "bne\t$1,%0,1b\n\t"
- "sw\t$0,-4(%0)\n\t"
- ".set\tat\n\t"
- ".set\treorder"
- :"=r" (page)
- :"0" (page),
- "I" (PAGE_SIZE)
- :"$1","memory");
-}
-
-void (*copy_page)(unsigned long to, unsigned long from);
-
-void mips1_copy_page(unsigned long to, unsigned long from)
-{
- memcpy((void *) to,
- (void *) (from + (PT_OFFSET - PAGE_OFFSET)), PAGE_SIZE);
-}