aboutsummaryrefslogtreecommitdiff
path: root/slof/fs/boot.fs
diff options
context:
space:
mode:
authorThomas Huth <thuth@linux.vnet.ibm.com>2011-02-07 15:43:26 +0100
committerThomas Huth <thuth@linux.vnet.ibm.com>2011-03-22 15:22:09 +0100
commitf246a4c0a5e763fd6cfffc78585897948df25bbe (patch)
treeaee891b965e28a6426d68e835786b640a600b21e /slof/fs/boot.fs
parenteb2879779962f28268149e5101943a9404fe4920 (diff)
downloadSLOF-f246a4c0a5e763fd6cfffc78585897948df25bbe.zip
SLOF-f246a4c0a5e763fd6cfffc78585897948df25bbe.tar.gz
SLOF-f246a4c0a5e763fd6cfffc78585897948df25bbe.tar.bz2
Some bugfixes in the boot functions
ABORT" needs a boolean value on the stack, but ABORT (without quotes at the end) always aborts. In boot.fs, ABORT" has been used without the flag value on the stack. Also added a missing "disable-watchdog" before jumping to the operating system, without this statement, the real JS2x blades rebooted in certain cases due to the non-disarmed watchdog. Signed-off-by: Thomas Huth <thuth@linux.vnet.ibm.com>
Diffstat (limited to 'slof/fs/boot.fs')
-rw-r--r--slof/fs/boot.fs10
1 files changed, 5 insertions, 5 deletions
diff --git a/slof/fs/boot.fs b/slof/fs/boot.fs
index 3980563..9394274 100644
--- a/slof/fs/boot.fs
+++ b/slof/fs/boot.fs
@@ -23,7 +23,7 @@ CREATE go-args 2 cells allot go-args 2 cells erase
ELSE s" boot-file" evaluate THEN THEN
;
-: $bootdev
+: $bootdev ( -- device-name len )
bootdevice 2@ dup IF s" " $cat THEN
s" diagnostic-mode?" evaluate IF
s" diag-device" evaluate
@@ -34,7 +34,7 @@ CREATE go-args 2 cells allot go-args 2 cells erase
strdup
?dup 0= IF
disable-watchdog
- drop ABORT" No boot device!"
+ drop true ABORT" No boot device!"
THEN
;
@@ -68,7 +68,7 @@ defer go ( -- )
go-args 2@ go-entry start-elf client-data
claim-list elf-release 0 to claim-list
THEN
- -6d boot-exception-handler ABORT" "
+ -6d boot-exception-handler ABORT
;
: go-64 ( -- )
state-valid @ IF
@@ -76,7 +76,7 @@ defer go ( -- )
go-args 2@ go-entry start-elf64 client-data
claim-list elf-release 0 to claim-list
THEN
- -6d boot-exception-handler ABORT" "
+ -6d boot-exception-handler ABORT
;
: load-elf-init ( arg len file-addr -- success )
@@ -213,7 +213,7 @@ read-bootlist
load 0= IF -65 boot-exception-handler EXIT THEN
disable-watchdog (go-and-catch)
BEGIN load-next WHILE
- (go-and-catch)
+ disable-watchdog (go-and-catch)
REPEAT
\ When we return from boot print the banner again.