summaryrefslogtreecommitdiffstats
path: root/lib_arm/board.c
diff options
context:
space:
mode:
authorwdenk <wdenk>2003-06-22 17:18:28 +0000
committerwdenk <wdenk>2003-06-22 17:18:28 +0000
commit3595ac4979e648e102c7a500e3c63193a27953bc (patch)
treeb15884457b571ad55691fa8a0a6841d5dde15a14 /lib_arm/board.c
parent9a0e21a3a87830f66a93c17d1bca66fd12d860ae (diff)
downloadu-boot-3595ac4979e648e102c7a500e3c63193a27953bc.tar.gz
u-boot-3595ac4979e648e102c7a500e3c63193a27953bc.tar.xz
u-boot-3595ac4979e648e102c7a500e3c63193a27953bc.zip
* Patch by Rune Torgersen, 4 Jun 2003:
add large memory support for MPC8266ADS board * Patch by Richard Woodruff, 19 June 03: - Enabled standard u-boot device abstraction for ARM - Enabled console device for ARM - Initilized bi_baudrate for ARM * Patch by Bill Hargen, 23 Apr 2003: fix byte order for 824x I2C addresses (write op)
Diffstat (limited to 'lib_arm/board.c')
-rw-r--r--lib_arm/board.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib_arm/board.c b/lib_arm/board.c
index f169920c67..5192e649dd 100644
--- a/lib_arm/board.c
+++ b/lib_arm/board.c
@@ -27,7 +27,9 @@
#include <common.h>
#include <command.h>
+#include <malloc.h>
#include <devices.h>
+#include <syscall.h>
#include <version.h>
#include <net.h>
@@ -101,8 +103,7 @@ static int init_baudrate (void)
uchar tmp[64]; /* long enough for environment variables */
int i = getenv_r ("baudrate", tmp, sizeof (tmp));
-
- gd->baudrate = (i > 0)
+ gd->bd->bi_baudrate = gd->baudrate = (i > 0)
? (int) simple_strtoul (tmp, NULL, 10)
: CONFIG_BAUDRATE;
@@ -186,6 +187,7 @@ init_fnc_t *init_sequence[] = {
env_init, /* initialize environment */
init_baudrate, /* initialze baudrate settings */
serial_init, /* serial communications setup */
+ console_init_f, /* stage 1 init of console */
display_banner, /* say that we are here */
dram_init, /* configure available RAM banks */
display_dram_config,
@@ -283,6 +285,15 @@ void start_armboot (void)
}
}
+ devices_init (); /* get the devices list going. */
+
+ /* Syscalls are not implemented for ARM. But allocating
+ * this allows the console_init routines to work without #ifdefs
+ */
+ syscall_tbl = (void **) malloc (NR_SYSCALLS * sizeof (void *));
+
+ console_init_r (); /* fully init console as a device */
+
#if defined(CONFIG_MISC_INIT_R)
/* miscellaneous platform dependent initialisations */
misc_init_r ();