diff options
-rw-r--r-- | arch/mips/dec/boot/Makefile | 12 | ||||
-rw-r--r-- | arch/mips/dec/boot/decstation.c | 84 | ||||
-rw-r--r-- | arch/mips/dec/boot/ld.ecoff | 43 |
3 files changed, 0 insertions, 139 deletions
diff --git a/arch/mips/dec/boot/Makefile b/arch/mips/dec/boot/Makefile deleted file mode 100644 index bcea416..0000000 --- a/arch/mips/dec/boot/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -# -# Makefile for the DECstation family specific parts of the kernel -# - -netboot: all - $(LD) -N -G 0 -T ld.ecoff ../../boot/zImage \ - dec_boot.o ramdisk.img -o nbImage - -obj-y := decstation.o - -clean: - rm -f nbImage diff --git a/arch/mips/dec/boot/decstation.c b/arch/mips/dec/boot/decstation.c deleted file mode 100644 index 4db8bac..0000000 --- a/arch/mips/dec/boot/decstation.c +++ /dev/null @@ -1,84 +0,0 @@ -/* - * arch/mips/dec/decstation.c - */ -#include <asm/sections.h> - -#define RELOC -#define INITRD -#define DEBUG_BOOT - -/* - * Magic number indicating REX PROM available on DECSTATION. - */ -#define REX_PROM_MAGIC 0x30464354 - -#define REX_PROM_CLEARCACHE 0x7c/4 -#define REX_PROM_PRINTF 0x30/4 - -#define VEC_RESET 0xBFC00000 /* Prom base address */ -#define PMAX_PROM_ENTRY(x) (VEC_RESET+((x)*8)) /* Prom jump table */ -#define PMAX_PROM_PRINTF PMAX_PROM_ENTRY(17) - -#define PARAM (k_start + 0x2000) - -#define LOADER_TYPE (*(unsigned char *) (PARAM+0x210)) -#define INITRD_START (*(unsigned long *) (PARAM+0x218)) -#define INITRD_SIZE (*(unsigned long *) (PARAM+0x21c)) - -extern int _ftext; /* begin and end of kernel image */ -extern void kernel_entry(int, char **, unsigned long, int *); - -void * memcpy(void * dest, const void *src, unsigned int count) -{ - unsigned long *tmp = (unsigned long *) dest, *s = (unsigned long *) src; - - count >>= 2; - while (count--) - *tmp++ = *s++; - - return dest; -} - -void dec_entry(int argc, char **argv, - unsigned long magic, int *prom_vec) -{ - void (*rex_clear_cache)(void); - int (*prom_printf)(char *, ...); - unsigned long k_start, len; - - /* - * The DS5100 leaves cpu with BEV enabled, clear it. - */ - asm( "lui\t$8,0x3000\n\t" - "mtc0\t$8,$12\n\t" - ".section\t.sdata\n\t" - ".section\t.sbss\n\t" - ".section\t.text" - : : : "$8"); - -#ifdef DEBUG_BOOT - if (magic == REX_PROM_MAGIC) { - prom_printf = (int (*)(char *, ...)) *(prom_vec + REX_PROM_PRINTF); - } else { - prom_printf = (int (*)(char *, ...)) PMAX_PROM_PRINTF; - } - prom_printf("Launching kernel...\n"); -#endif - - k_start = (unsigned long) (&kernel_entry) & 0xffff0000; - -#ifdef RELOC - /* - * Now copy kernel image to its destination. - */ - len = ((unsigned long) (&_end) - k_start); - memcpy((void *)k_start, &_ftext, len); -#endif - - if (magic == REX_PROM_MAGIC) { - rex_clear_cache = (void (*)(void)) * (prom_vec + REX_PROM_CLEARCACHE); - rex_clear_cache(); - } - - kernel_entry(argc, argv, magic, prom_vec); -} diff --git a/arch/mips/dec/boot/ld.ecoff b/arch/mips/dec/boot/ld.ecoff deleted file mode 100644 index aaa633d..0000000 --- a/arch/mips/dec/boot/ld.ecoff +++ /dev/null @@ -1,43 +0,0 @@ -OUTPUT_FORMAT("ecoff-littlemips") -OUTPUT_ARCH(mips) -ENTRY(dec_entry) -SECTIONS -{ - . = 0x80200000; - - .text : - { - _ftext = .; - *(.text) - *(.fixup) - } - .rdata : - { - *(.rodata .rodata.* .rdata) - } - .data : - { - . = ALIGN(0x1000); - ramdisk.img (.data) - *(.data) - } - .sdata : - { - *(.sdata) - } - _gp = .; - .sbss : - { - *(.sbss) - *(.scommon) - } - .bss : - { - *(.dynbss) - *(.bss) - *(COMMON) - } - /DISCARD/ : { - *(.reginfo .mdebug .note) - } -} |