summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/mvme3100/start/start.S
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/powerpc/mvme3100/start/start.S')
-rw-r--r--c/src/lib/libbsp/powerpc/mvme3100/start/start.S90
1 files changed, 0 insertions, 90 deletions
diff --git a/c/src/lib/libbsp/powerpc/mvme3100/start/start.S b/c/src/lib/libbsp/powerpc/mvme3100/start/start.S
deleted file mode 100644
index 493720e0c7..0000000000
--- a/c/src/lib/libbsp/powerpc/mvme3100/start/start.S
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * start.S : RTEMS entry point
- *
- * Copyright (C) 1999 Eric Valette. valette@crf.canon.fr
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.org/license/LICENSE.
- *
- * Modified for mvme3100 by T. Straumann, 2007.
- *
- */
-
-#include <rtems/asm.h>
-#include <rtems/score/cpu.h>
-#include <rtems/powerpc/powerpc.h>
-
-#include <bspopts.h>
-
-#define SYNC \
- sync; \
- isync
-
-#define KERNELBASE 0x0
-
-/* cannot include <bsp.h> from assembly :-( */
-#ifndef BSP_8540_CCSR_BASE
-#define BSP_8540_CCSR_BASE 0xe1000000
-#endif
-
-#define ERR_DISABLE_REG (BSP_8540_CCSR_BASE + 0x2e44)
-
- .text
- .globl __rtems_entry_point
- .type __rtems_entry_point,@function
-__rtems_entry_point:
- mr r31,r3
- mr r30,r4
- mr r29,r5
- mr r28,r6
- mr r27,r7
- /* disable checking for memory-select errors; motload has all TLBs
- * mapping a possible larger area as memory (not-guarded, caching-enabled)
- * than actual physical memory is available.
- * In case of speculative loads this may cause 'memory-select' errors
- * which seem to raise 'core_fault_in' (found no description in
- * the manual but I experienced this problem).
- * Such errors (if HID1[RFXE] is clear) may *stall* execution
- * leading to mysterious 'hangs'.
- * Note: enabling HID1[RFXE] at this point makes no sense since
- * exceptions are not configured yet. Therefore we disable
- * memory-select errors.
- * Eventually (bspstart.c) we want to delete TLB entries for
- * which no physical memory is present.
- */
- lis r3, ERR_DISABLE_REG@ha
- lwz r4, ERR_DISABLE_REG@l(r3)
- /* disable memory-select errors */
- ori r4, r4, 1
- stw r4, ERR_DISABLE_REG@l(r3)
-
- /* Use MotLoad's TLB setup for now; caches are on already */
- bl __eabi /* setup EABI and SYSV environment */
- bl zero_bss
- /*
- * restore original args
- */
- mr r3,r31
- mr r4,r30
- mr r5,r29
- mr r6,r28
- mr r7,r27
- bl save_boot_params
- addis r9,r0, (__stack-PPC_MINIMUM_STACK_FRAME_SIZE)@ha
- addi r9,r9, (__stack-PPC_MINIMUM_STACK_FRAME_SIZE)@l
- /* align down to 16-bytes */
- li r5, (CPU_STACK_ALIGNMENT - 1)
- andc r1, r9, r5
-
- /* NULL ptr to back chain */
- li r0, 0
- stw r0, 0(r1)
-
- /*
- * We are now in a environment that is totally independent from
- * bootloader setup.
- */
- /* pass result of 'save_boot_params' to 'boot_card' in R3 */
- bl boot_card
- /* point of no return: reset board here ? */