summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/gen5200/startup
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-09-20 21:39:02 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-09-20 21:39:02 +0000
commit144ad337741f463b0283875109c1ca7c1628a0f1 (patch)
tree8984b98327af817c41ffc467521f9c699b466bdb /c/src/lib/libbsp/powerpc/gen5200/startup
parent2008-09-19 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-144ad337741f463b0283875109c1ca7c1628a0f1.tar.bz2
2008-09-20 Joel Sherrill <joel.sherrill@oarcorp.com>
* Makefile.am, include/bsp.h, network_5200/network.c, start/start.S, startup/bspstart.c, startup/cpuinit.c: Use top level shared bsp_get_work_area() implementation. Augment it to know about U-Boot. * startup/bspgetworkarea.c: Removed.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/startup/bspgetworkarea.c50
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c11
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/startup/cpuinit.c20
3 files changed, 16 insertions, 65 deletions
diff --git a/c/src/lib/libbsp/powerpc/gen5200/startup/bspgetworkarea.c b/c/src/lib/libbsp/powerpc/gen5200/startup/bspgetworkarea.c
deleted file mode 100644
index 935088ed06..0000000000
--- a/c/src/lib/libbsp/powerpc/gen5200/startup/bspgetworkarea.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-#include <bsp.h>
-#include <bsp/bootcard.h>
-#include <stdint.h>
-
-/*
- * These are provided by the linkcmds for ALL of the BSPs which use this file.
- */
-extern char RamBase[];
-extern char WorkAreaBase[];
-extern char HeapSize[];
-extern char RamSize[];
-
-#if defined(HAS_UBOOT)
- extern bd_t *uboot_bdinfo_ptr;
-#endif
-
-/*
- * This method returns the base address and size of the area which
- * is to be allocated between the RTEMS Workspace and the C Program
- * Heap.
- */
-
-void bsp_get_work_area(
- void **work_area_start,
- size_t *work_area_size,
- void **heap_start,
- size_t *heap_size
-)
-{
- #ifdef HAS_UBOOT
- char *ram_end = (char *) uboot_bdinfo_ptr->bi_memstart +
- uboot_bdinfo_ptr->bi_memsize;
- #else /* HAS_UBOOT */
- char *ram_end = (uintptr_t)RamBase + (uintptr_t)RamSize;
- #endif /* HAS_UBOOT */
-
- *work_area_start = bsp_work_area_start;
- *work_area_size = ram_end - bsp_work_area_start;
- *heap_start = BSP_BOOTCARD_HEAP_USES_WORK_AREA;
- *heap_size = HeapSize;
-}
-
diff --git a/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c b/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c
index f9c09824d1..d81133229d 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c
+++ b/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c
@@ -107,8 +107,10 @@
#include <bsp/irq.h>
#if defined(HAS_UBOOT)
-bd_t *uboot_bdinfo_ptr = (bd_t *)1; /* will be overwritten from startup code */
-bd_t uboot_bdinfo_copy; /* will be overwritten with copy of bdinfo */
+/* will be overwritten from startup code */
+bd_t *bsp_uboot_board_info_ptr = (bd_t *)1;
+/* will be overwritten with copy of board information */
+bd_t bsp_uboot_board_info;
#endif
/*
@@ -142,14 +144,13 @@ void bsp_start(void)
myCpuRevision = get_ppc_cpu_revision();
#if defined(HAS_UBOOT)
- uboot_bdinfo_copy = *uboot_bdinfo_ptr;
- uboot_bdinfo_ptr = &uboot_bdinfo_copy;
+ bsp_uboot_board_info = *bsp_uboot_board_info_ptr;
#endif
#if defined(HAS_UBOOT) && defined(SHOW_MORE_INIT_SETTINGS)
{
void dumpUBootBDInfo( bd_t * );
- dumpUBootBDInfo( uboot_bdinfo_ptr );
+ dumpUBootBDInfo( bsp_uboot_board_info_ptr );
}
#endif
diff --git a/c/src/lib/libbsp/powerpc/gen5200/startup/cpuinit.c b/c/src/lib/libbsp/powerpc/gen5200/startup/cpuinit.c
index ed78e7d247..a2e988279a 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/startup/cpuinit.c
+++ b/c/src/lib/libbsp/powerpc/gen5200/startup/cpuinit.c
@@ -176,8 +176,8 @@ void cpu_init_bsp(void)
*/
calc_dbat_regvals(
&dbat,
- uboot_bdinfo_ptr->bi_memstart,
- uboot_bdinfo_ptr->bi_memsize,
+ bsp_uboot_board_info.bi_memstart,
+ bsp_uboot_board_info.bi_memsize,
true,
false,
false,
@@ -193,16 +193,16 @@ void cpu_init_bsp(void)
* U-Boot that lies about the starting address of Flash. This check
* corrects that.
*/
- if ((uboot_bdinfo_ptr->bi_flashstart + uboot_bdinfo_ptr->bi_flashsize)
- < uboot_bdinfo_ptr->bi_flashstart) {
- start = 0 - uboot_bdinfo_ptr->bi_flashsize;
+ if ((bsp_uboot_board_info.bi_flashstart + bsp_uboot_board_info.bi_flashsize)
+ < bsp_uboot_board_info.bi_flashstart) {
+ start = 0 - bsp_uboot_board_info.bi_flashsize;
} else {
- start = uboot_bdinfo_ptr->bi_flashstart;
+ start = bsp_uboot_board_info.bi_flashstart;
}
calc_dbat_regvals(
&dbat,
start,
- uboot_bdinfo_ptr->bi_flashsize,
+ bsp_uboot_board_info.bi_flashsize,
true,
false,
false,
@@ -229,11 +229,11 @@ void cpu_init_bsp(void)
/*
* If there is SRAM, program BAT3 for that memory
*/
- if (uboot_bdinfo_ptr->bi_sramsize != 0) {
+ if (bsp_uboot_board_info.bi_sramsize != 0) {
calc_dbat_regvals(
&dbat,
- uboot_bdinfo_ptr->bi_sramstart,
- uboot_bdinfo_ptr->bi_sramsize,
+ bsp_uboot_board_info.bi_sramstart,
+ bsp_uboot_board_info.bi_sramsize,
false,
true,
true,