diff options
author | Adrian Reber <adrian@lisas.de> | 2008-11-21 12:38:35 +0100 |
---|---|---|
committer | Adrian Reber <adrian@lisas.de> | 2008-11-21 12:38:35 +0100 |
commit | 07ec038eec68116cbfcc42b4eea568fd334e8c88 (patch) | |
tree | 63e703c7b20cd5b545112e42163633a0dcaf50c4 | |
parent | 304e8fb00330e84481ac71a466053bf5fefea721 (diff) | |
download | SLOF-07ec038eec68116cbfcc42b4eea568fd334e8c88.zip SLOF-07ec038eec68116cbfcc42b4eea568fd334e8c88.tar.gz SLOF-07ec038eec68116cbfcc42b4eea568fd334e8c88.tar.bz2 |
prepared tree for the 1.4.0-0 release
-rw-r--r-- | board-js2x/llfw/stage_s.lds (renamed from slof.lds) | 0 | ||||
-rw-r--r-- | board-js2x/slof/OF.fs (renamed from fs/main.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/cpu.fs (renamed from fs/hw/cpu.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/dart.fs (renamed from fs/hw/dart.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/freq.fs (renamed from fs/hw/freq.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/ht.fs (renamed from fs/hw/ht.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/io.fs (renamed from fs/hw/io.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/memory.fs (renamed from fs/hw/memory.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/mpic.fs (renamed from fs/hw/mpic.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/pci-bridge_1022_7460.fs (renamed from fs/hw/8111.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/pci-device_1022_7451.fs (renamed from fs/hw/8131.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/serial.fs (renamed from fs/hw/serial.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/sio.fs (renamed from fs/hw/sio.fs) | 0 | ||||
-rw-r--r-- | board-js2x/slof/tree.fs (renamed from fs/js20-tree.fs) | 0 | ||||
-rw-r--r-- | fs/.#main.fs.1.3 | 170 | ||||
-rw-r--r-- | fs/hw/enet.fs | 46 | ||||
-rw-r--r-- | slof/OF.lds (renamed from paflof.lds) | 0 | ||||
-rw-r--r-- | slof/engine.in (renamed from engine.in) | 0 | ||||
-rw-r--r-- | slof/entry.S (renamed from entry.S) | 0 | ||||
-rw-r--r-- | slof/fs/accept.fs (renamed from fs/accept.fs) | 0 | ||||
-rw-r--r-- | slof/fs/alloc-mem.fs (renamed from fs/alloc-mem.fs) | 0 | ||||
-rw-r--r-- | slof/fs/client.fs (renamed from fs/client.fs) | 0 | ||||
-rw-r--r-- | slof/fs/dump.fs (renamed from fs/dump.fs) | 0 | ||||
-rw-r--r-- | slof/fs/elf.fs (renamed from fs/elf.fs) | 0 | ||||
-rw-r--r-- | slof/fs/envvar.fs (renamed from fs/envvar.fs) | 0 | ||||
-rw-r--r-- | slof/fs/find-hash.fs (renamed from fs/find-hash.fs) | 0 | ||||
-rw-r--r-- | slof/fs/ide.fs (renamed from fs/hw/disk.fs) | 0 | ||||
-rw-r--r-- | slof/fs/instance.fs (renamed from fs/instance.fs) | 0 | ||||
-rw-r--r-- | slof/fs/package.fs (renamed from fs/package.fs) | 0 | ||||
-rw-r--r-- | slof/fs/property.fs (renamed from fs/property.fs) | 0 | ||||
-rw-r--r-- | slof/fs/search.fs (renamed from fs/search.fs) | 0 | ||||
-rw-r--r-- | slof/ofw.S (renamed from loader.S) | 0 | ||||
-rw-r--r-- | slof/paflof.c (renamed from paflof.c) | 0 | ||||
-rw-r--r-- | slof/paflof.h (renamed from paflof.h) | 0 | ||||
-rw-r--r-- | slof/ppc64.code (renamed from ppc64.code) | 0 | ||||
-rw-r--r-- | slof/ppc64.h (renamed from ppc64.h) | 0 | ||||
-rw-r--r-- | slof/ppc64.in (renamed from ppc64.in) | 0 | ||||
-rw-r--r-- | slof/prep.h (renamed from prim.h) | 0 | ||||
-rw-r--r-- | slof/prim.code (renamed from prim.code) | 0 | ||||
-rw-r--r-- | slof/prim.in (renamed from prim.in) | 0 | ||||
-rw-r--r-- | slof/ref.pl (renamed from ref.pl) | 0 | ||||
-rw-r--r-- | slof/types.h (renamed from types.h) | 0 |
42 files changed, 0 insertions, 216 deletions
diff --git a/slof.lds b/board-js2x/llfw/stage_s.lds index d77a17e..d77a17e 100644 --- a/slof.lds +++ b/board-js2x/llfw/stage_s.lds diff --git a/fs/main.fs b/board-js2x/slof/OF.fs index 3bfd90a..3bfd90a 100644 --- a/fs/main.fs +++ b/board-js2x/slof/OF.fs diff --git a/fs/hw/cpu.fs b/board-js2x/slof/cpu.fs index a73dec4..a73dec4 100644 --- a/fs/hw/cpu.fs +++ b/board-js2x/slof/cpu.fs diff --git a/fs/hw/dart.fs b/board-js2x/slof/dart.fs index 405d33e..405d33e 100644 --- a/fs/hw/dart.fs +++ b/board-js2x/slof/dart.fs diff --git a/fs/hw/freq.fs b/board-js2x/slof/freq.fs index 38a0033..38a0033 100644 --- a/fs/hw/freq.fs +++ b/board-js2x/slof/freq.fs diff --git a/fs/hw/ht.fs b/board-js2x/slof/ht.fs index 837280b..837280b 100644 --- a/fs/hw/ht.fs +++ b/board-js2x/slof/ht.fs diff --git a/fs/hw/io.fs b/board-js2x/slof/io.fs index 3d55493..3d55493 100644 --- a/fs/hw/io.fs +++ b/board-js2x/slof/io.fs diff --git a/fs/hw/memory.fs b/board-js2x/slof/memory.fs index b9383da..b9383da 100644 --- a/fs/hw/memory.fs +++ b/board-js2x/slof/memory.fs diff --git a/fs/hw/mpic.fs b/board-js2x/slof/mpic.fs index 5b46004..5b46004 100644 --- a/fs/hw/mpic.fs +++ b/board-js2x/slof/mpic.fs diff --git a/fs/hw/8111.fs b/board-js2x/slof/pci-bridge_1022_7460.fs index a570419..a570419 100644 --- a/fs/hw/8111.fs +++ b/board-js2x/slof/pci-bridge_1022_7460.fs diff --git a/fs/hw/8131.fs b/board-js2x/slof/pci-device_1022_7451.fs index 3cc1d51..3cc1d51 100644 --- a/fs/hw/8131.fs +++ b/board-js2x/slof/pci-device_1022_7451.fs diff --git a/fs/hw/serial.fs b/board-js2x/slof/serial.fs index b794a1c..b794a1c 100644 --- a/fs/hw/serial.fs +++ b/board-js2x/slof/serial.fs diff --git a/fs/hw/sio.fs b/board-js2x/slof/sio.fs index c7fa2fe..c7fa2fe 100644 --- a/fs/hw/sio.fs +++ b/board-js2x/slof/sio.fs diff --git a/fs/js20-tree.fs b/board-js2x/slof/tree.fs index 6063637..6063637 100644 --- a/fs/js20-tree.fs +++ b/board-js2x/slof/tree.fs diff --git a/fs/.#main.fs.1.3 b/fs/.#main.fs.1.3 deleted file mode 100644 index 1db2bbd..0000000 --- a/fs/.#main.fs.1.3 +++ /dev/null @@ -1,170 +0,0 @@ -\ The master file. Everything else is included into here. - -hex - -\ Speed up compiling. -INCLUDE find-hash.fs - -\ Enable use of multiple wordlists and vocabularies. -INCLUDE search.fs - -\ Heap memory allocation. -INCLUDE alloc-mem.fs - -\ First some very generic code. -: d# parse-word base @ >r decimal evaluate r> base ! ; immediate -: END-STRUCT drop ; -: 0.r 0 swap <# 0 ?DO # LOOP #> type ; - -: zcount ( zstr -- str len ) dup BEGIN dup c@ WHILE char+ REPEAT over - ; -: zplace ( str len buf -- ) 2dup + 0 swap c! swap move ; - -CREATE $catpad 100 allot -\ First input string is allowed to already be on the pad; second is not. -: $cat ( str1 len1 str2 len2 -- str3 len3 ) - >r >r dup >r $catpad swap move - r> dup $catpad + r> swap r@ move - r> + $catpad swap ; - -: 2CONSTANT CREATE swap , , DOES> 2@ ; -: $2CONSTANT $CREATE swap , , DOES> 2@ ; - -\ Memory and I/O hexdump. -INCLUDE dump.fs - -\ I/O accesses. -INCLUDE io.fs - -\ Start the serial console. -INCLUDE serial.fs - -\ Input line editing. -INCLUDE accept.fs - -\ Register frame layout. -STRUCT - cell FIELD >r0 cell FIELD >r1 cell FIELD >r2 cell FIELD >r3 - cell FIELD >r4 cell FIELD >r5 cell FIELD >r6 cell FIELD >r7 - cell FIELD >r8 cell FIELD >r9 cell FIELD >r10 cell FIELD >r11 - cell FIELD >r12 cell FIELD >r13 cell FIELD >r14 cell FIELD >r15 - cell FIELD >r16 cell FIELD >r17 cell FIELD >r18 cell FIELD >r19 - cell FIELD >r20 cell FIELD >r21 cell FIELD >r22 cell FIELD >r23 - cell FIELD >r24 cell FIELD >r25 cell FIELD >r26 cell FIELD >r27 - cell FIELD >r28 cell FIELD >r29 cell FIELD >r30 cell FIELD >r31 - cell FIELD >cr cell FIELD >xer cell FIELD >lr cell FIELD >ctr - cell FIELD >srr0 cell FIELD >srr1 cell FIELD >dar cell FIELD >dsisr -END-STRUCT - -1100000 CONSTANT eregs \ Exception register frame. -1100400 CONSTANT ciregs \ Client (interface) register frame. - -\ Print out an exception frame, e.g., eregs .regs -: .16 10 0.r 3 spaces ; -: .8 8 spaces 8 0.r 3 spaces ; -: .4regs cr 4 0 DO dup @ .16 8 cells+ LOOP drop ; -: .fixed-regs - cr ." R0 .. R7 R8 .. R15 R16 .. R23 R24 .. R31" - dup 8 0 DO dup .4regs cell+ LOOP drop ; -: .special-regs - cr ." CR / XER LR / CTR SRR0 / SRR1 DAR / DSISR" - cr dup >cr @ .8 dup >lr @ .16 dup >srr0 @ .16 dup >dar @ .16 - cr dup >xer @ .16 dup >ctr @ .16 dup >srr1 @ .16 >dsisr @ .8 ; -: .regs - cr .fixed-regs - cr .special-regs - cr cr ; - -\ Some low-level functions -- no source code provided, sorry. -: reboot 0 1 oco ; -: halt 0 2 oco ; -: watchdog 3 oco ; -: other-firmware 1 watchdog ; - -\ Get the second CPU into our own spinloop. -0 VALUE slave? -: get-slave ( addr -- ) 0 oco 0= IF true to slave? THEN ; -: slave-report cr slave? IF ." Second CPU is running." ELSE - ." Second CPU is NOT running!" THEN ; -3f00 get-slave slave-report - -\ Packages, instances, properties, devices, methods -- the whole shebang. -INCLUDE package.fs - -\ Environment variables. Not actually used right now. -INCLUDE envvar.fs - -\ Hook to help loading our secondary boot loader. -DEFER disk-read ( lba cnt addr -- ) - -\ The device tree. -INCLUDE js20-tree.fs - -\ The client interface. -INCLUDE client.fs - -\ ELF binary file format. -INCLUDE elf.fs - -\ Give our client a stack. -111f000 ciregs >r1 ! - -\ Run the client program. -: start-elf ( entry-addr -- ) msr@ 7fffffffffffffff and 2000 or ciregs >srr1 ! - 0 0 rot call-client ; -: start-elf64 ( entry-addr -- ) msr@ 2000 or ciregs >srr1 ! - 0 0 rot call-client ; - -\ Where files are loaded. Not the same as where they are executed. -10000 CONSTANT load-base -\ Load secondary boot loader from disk @ sector 63. 512kB should be enough. -: read-yaboot 3f 400 load-base disk-read ; - -: yaboot - cr ." Reading..." read-yaboot - ." relocating..." load-base load-elf-file - ." go!" start-elf ; - -: set-bootpart ( -- ) - skipws 0 parse s" disk:" 2swap $cat - encode-string s" bootpath" set-chosen ; - -: set-bootargs - skipws 0 parse dup 0= IF 2drop ELSE - encode-string s" bootargs" set-chosen THEN ; -: etherboot s" enet:" set-bootargs payload dup load-elf-file start-elf ; -: go etherboot ; - -\ Default bootpath - -s" disk:3" encode-string s" bootpath" set-chosen - -: boot set-bootargs yaboot ; - -: auto - key? IF clear c emit key drop QUIT THEN - cr ." Netboot -- to drop into GUI instead, please hold a key while starting" - cr - payload dup load-elf-file start-elf ; - -: disable-boot-watchdog - 0 watchdog IF cr ." Failed to disable boot watchdog." THEN ; - -disable-boot-watchdog - -cr -cr -cr .( SLOF version 0.0 Copyright 2004,2005 IBM Corporation) -cr .( Paflof Forth engine Copyright 2003,2004,2005 Segher Boessenkool) -cr -cr .( Parts of this code are:) -cr -cr .( Licensed Internal Code - Property of IBM) -cr .( JS20 Licensed Internal Code) -cr .( (C) char ) emit .( Copyright IBM Corp. 2004, 2005 All Rights Reserved.) -cr .( US Government Users Restricted Rights - Use, duplication or) -cr .( disclosure restricted by GSA ADP Schedule Contract with IBM) -cr -cr - -\ Enable this if you want your system to automatically boot by default: -\ auto diff --git a/fs/hw/enet.fs b/fs/hw/enet.fs deleted file mode 100644 index 4472c25..0000000 --- a/fs/hw/enet.fs +++ /dev/null @@ -1,46 +0,0 @@ -\ ============================================================================= -\ * Copyright (c) 2004, 2005 IBM Corporation -\ * All rights reserved. -\ * This program and the accompanying materials -\ * are made available under the terms of the BSD License -\ * which accompanies this distribution, and is available at -\ * http://www.opensource.org/licenses/bsd-license.php -\ * -\ * Contributors: -\ * IBM Corporation - initial implementation -\ ============================================================================= - - -\ Dual Gb Ethernet controller. - -\ Function 0. - -new-device s" /ht/pci-x@2/enet@1" full-name - -s" enet" 2dup device-name device-type - -07 200804 config-b! \ Enable master, memory, I/O. -a0000000 200810 config-l! 0 200814 config-l! -a0010000 200818 config-l! 0 20081c config-l! \ Set memory ranges: twice 64kB - \ @ a0000000 and @ a0010000. -1c 20083c config-b! \ Set IRQ#. - -: open true ; -: close ; - -finish-device - - -\ Function 1. - -new-device s" /ht/pci-x@2/enet@1,1" full-name - -s" enet" 2dup device-name device-type - -07 200904 config-b! \ Enable master, memory, I/O. -a0020000 200910 config-l! 0 200914 config-l! -a0030000 200918 config-l! 0 20091c config-l! \ Set memory ranges: twice 64kB - \ @ a0020000 and @ a0030000. -1d 20093c config-b! \ Set IRQ#. - -finish-device diff --git a/engine.in b/slof/engine.in index 7b9dc82..7b9dc82 100644 --- a/engine.in +++ b/slof/engine.in diff --git a/fs/accept.fs b/slof/fs/accept.fs index ad361fd..ad361fd 100644 --- a/fs/accept.fs +++ b/slof/fs/accept.fs diff --git a/fs/alloc-mem.fs b/slof/fs/alloc-mem.fs index 7dc7bd4..7dc7bd4 100644 --- a/fs/alloc-mem.fs +++ b/slof/fs/alloc-mem.fs diff --git a/fs/client.fs b/slof/fs/client.fs index 25715ba..25715ba 100644 --- a/fs/client.fs +++ b/slof/fs/client.fs diff --git a/fs/dump.fs b/slof/fs/dump.fs index 1b9e883..1b9e883 100644 --- a/fs/dump.fs +++ b/slof/fs/dump.fs diff --git a/fs/elf.fs b/slof/fs/elf.fs index 997774d..997774d 100644 --- a/fs/elf.fs +++ b/slof/fs/elf.fs diff --git a/fs/envvar.fs b/slof/fs/envvar.fs index 0cdb9f6..0cdb9f6 100644 --- a/fs/envvar.fs +++ b/slof/fs/envvar.fs diff --git a/fs/find-hash.fs b/slof/fs/find-hash.fs index 31ee66f..31ee66f 100644 --- a/fs/find-hash.fs +++ b/slof/fs/find-hash.fs diff --git a/fs/hw/disk.fs b/slof/fs/ide.fs index addb885..addb885 100644 --- a/fs/hw/disk.fs +++ b/slof/fs/ide.fs diff --git a/fs/instance.fs b/slof/fs/instance.fs index f5b480b..f5b480b 100644 --- a/fs/instance.fs +++ b/slof/fs/instance.fs diff --git a/fs/package.fs b/slof/fs/package.fs index 9a26fda..9a26fda 100644 --- a/fs/package.fs +++ b/slof/fs/package.fs diff --git a/fs/property.fs b/slof/fs/property.fs index 16ea308..16ea308 100644 --- a/fs/property.fs +++ b/slof/fs/property.fs diff --git a/fs/search.fs b/slof/fs/search.fs index bacf53b..bacf53b 100644 --- a/fs/search.fs +++ b/slof/fs/search.fs diff --git a/ppc64.code b/slof/ppc64.code index 1fe1d2f..1fe1d2f 100644 --- a/ppc64.code +++ b/slof/ppc64.code diff --git a/prim.code b/slof/prim.code index 7df46fa..7df46fa 100644 --- a/prim.code +++ b/slof/prim.code |