Author: wmb
Date: Wed Aug 11 06:39:19 2010
New Revision: 1926
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/1926
Log:
Checked in armforth binary
Added:
cpu/arm/Linux/armforth (contents, props changed)
Modified:
cpu/arm/Linux/Makefile
Modified: cpu/arm/Linux/Makefile
==============================================================================
--- cpu/arm/Linux/Makefile Wed Aug 11 06:37:47 2010 (r1925)
+++ cpu/arm/Linux/Makefile Wed Aug 11 06:39:19 2010 (r1926)
@@ -18,8 +18,8 @@
# Use forth when you just need to run Forth but don't care what
# native instruction set it is on.
-# Use x86forth when you need to compile new dictionaries that will
-# run on x86 systems.
+# Use armforth when you need to compile new dictionaries that will
+# run on ARM systems.
forth: armforth
@ln -sf armforth forth
Added: cpu/arm/Linux/armforth
==============================================================================
Binary file. No diff available.
Author: wmb
Date: Wed Aug 11 06:37:47 2010
New Revision: 1925
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/1925
Log:
Checked-in build.sh script that sets environment variables for cross-building.
Added:
forth/lib/build.sh (contents, props changed)
Added: forth/lib/build.sh
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ forth/lib/build.sh Wed Aug 11 06:37:47 2010 (r1925)
@@ -0,0 +1,99 @@
+#!/bin/sh
+# Script to invoke the FirmWorks build facility.
+# Usage: build [-c|d|h|q|t|v] [target-name]
+#
+# This script automates the process of setting the BP and HOSTDIR
+# environment variables and parses the option flags [-c|d|h|q|t|v].
+
+# In order to run the build facility without this script:
+# Set the BP environment variable to the firmware root directory
+# Set the HOSTDIR environment variable to ${BP}/cpu/<cpuname>/<osname>,
+# e.g. ${BP}/cpu/arm/Linux
+# Execute:
+# ${HOSTDIR}/forth ${HOSTDIR}/../native.dic
+# At the "ok" prompt, type:
+# build <target-name>
+# or
+# tag <target-name>
+
+# Set BP by searching upward for the firmware root directory
+test -n "$BP" || {
+ dir=`pwd`
+ {
+ until [ -d ofw ]; do
+ if [ `pwd` = / ] ; then
+ echo Can\'t find firmware root directory
+ exit
+ fi
+ cd ..
+ done
+ BP=`pwd`
+ export BP
+ }
+ cd $dir
+}
+
+# Set HOSTDIR according to the value of BP and the host system
+test -n "$HOSTDIR" || {
+ OSNAME=`uname`
+ MACHNAME=`uname -m`
+ case ${MACHNAME} in
+ sun4c) CPUNAME=sparc ;;
+ sun4u) CPUNAME=sparc ;;
+ ppc) CPUNAME=powerpc ;;
+ i386) CPUNAME=x86 ;;
+ i586) CPUNAME=x86 ;;
+ i686) CPUNAME=x86 ;;
+ mips) CPUNAME=mips ;;
+ arm) CPUNAME=arm ;;
+ arm32) CPUNAME=arm ;;
+ sun3) CPUNAME=m68k ;;
+ *) CPUNAME=${MACHNAME} ;;
+ esac
+}
+export HOSTDIR=${BP}/cpu/${CPUNAME}/${OSNAME}
+
+command=build
+
+# Parse option flags
+case $1 in
+ -c) mode=clean; shift ;;
+ -d) mode=prolix; shift ;;
+ -q) mode=quiet; shift ;;
+ -t) command=tag; shift ;;
+ -v) mode=verbose; shift ;;
+ -h)
+ echo "Usage: build [-c|d|h|q|t|v] [target-name]"
+ echo " With no flags, shows commands that are executed to rebuild targets"
+ echo " -c: clean - ignores log files"
+ echo " -d: debug - shows the names of source files as they are checked"
+ echo " -h: display this helpful message"
+ echo " -q: quiet - suppresses normal showing of targets being rebuilt"
+ echo " -t: tag - used after a successful build, sends to stdout a list"
+ echo " of all the source files that were used in that build"
+ echo " -v: verbose - shows progress of dependency checking"
+ echo ""
+ echo " Target-name may, but need not, have an extension"
+ echo ""
+ echo " If target-name is omitted, the builder is executed interactively"
+ exit 0;;
+ *) unset mode ;;
+esac
+
+if [ `basename $0` = forth ]; then
+ mode=".copyright interact"
+ if [ $# -eq 0 ]; then
+ exec ${FORTH:-${HOSTDIR}/forth} ${NATIVE:-${HOSTDIR}/../build/builder.dic} \
+ -s "$mode $command $*"
+ elif [ `basename $1` != `basename $1 .dic`.dic ]; then
+ exec ${FORTH:-${HOSTDIR}/forth} ${NATIVE:-${HOSTDIR}/../build/builder.dic} $*
+ else
+ exec ${FORTH:-${HOSTDIR}/forth} $*
+ fi
+elif [ $# -eq 0 ]; then # Ensure the "target-name" argument is present
+ echo "No target name specified; executing builder in interactive mode"
+ mode=interact
+fi
+
+${FORTH:-${HOSTDIR}/forth} ${NATIVE:-${HOSTDIR}/../build/builder.dic} \
+ -s "$mode $command $*"
Author: wmb
Date: Thu Aug 5 23:31:46 2010
New Revision: 1919
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/1919
Log:
OLCP XO-1.5 ACPI DSDT - Disabled S1 state because entering S1 can prevent Windows from entering S3, according to Luna at Quanta.
Modified:
cpu/x86/pc/olpc/via/dsdt.dsl
Modified: cpu/x86/pc/olpc/via/dsdt.dsl
==============================================================================
--- cpu/x86/pc/olpc/via/dsdt.dsl Thu Aug 5 23:28:29 2010 (r1918)
+++ cpu/x86/pc/olpc/via/dsdt.dsl Thu Aug 5 23:31:46 2010 (r1919)
@@ -129,7 +129,7 @@
// System Sleep States
Name(\_S0,Package(){0,0,0,0})
-Name(\_S1,Package(){4,4,4,4})
+// Name(\_S1,Package(){4,4,4,4}) // Entering S1 sometimes prevents entry to S3 in Windows
Name(\_S3,Package(){1,1,1,1})
Name(\_S4,Package(){2,2,2,2})
Name(\_S5,Package(){2,2,2,2})
Author: wmb
Date: Thu Aug 5 21:03:43 2010
New Revision: 1917
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/1917
Log:
OLPC - removed support for ancient manufacturing data location in EC code area.
Modified:
cpu/x86/pc/olpc/mfgdata.fth
dev/olpc/spiflash/spiui.fth
Modified: cpu/x86/pc/olpc/mfgdata.fth
==============================================================================
--- cpu/x86/pc/olpc/mfgdata.fth Thu Aug 5 02:47:11 2010 (r1916)
+++ cpu/x86/pc/olpc/mfgdata.fth Thu Aug 5 21:03:43 2010 (r1917)
@@ -44,11 +44,9 @@
true ( adr data$ name-adr true )
;
-\ Mfg data used to be at the end of the EC erase block, but
-\ is now in a block by itself.
+\ Mfg data is in a block by itself.
: mfg-data-top ( -- adr )
- flash-base h# 1.0000 + dup invalid-tag? ( old-top data-adr flag )
- nip if drop flash-base h# f.0000 + then
+ flash-base h# f.0000 +
;
: (find-tag) ( name$ top-adr -- false | data$ true )
Modified: dev/olpc/spiflash/spiui.fth
==============================================================================
--- dev/olpc/spiflash/spiui.fth Thu Aug 5 02:47:11 2010 (r1916)
+++ dev/olpc/spiflash/spiui.fth Thu Aug 5 21:03:43 2010 (r1917)
@@ -180,7 +180,6 @@
flash-write ( )
flash-write-disable ( )
;
-
[then]
: ?move-mfg-data ( -- )
@@ -188,43 +187,16 @@
tethered? if
\ Read the manufacturing data from the other FLASH
- \ First try the new location in the e.0000 block
flash-buf mfg-data-offset + /flash-block mfg-data-offset flash-read
-
- \ If there is no mfg data in the e.0000 block, get whatever is in the
- \ last 2K of the 0 block, where the mfg data used to live.
- flash-buf mfg-data-end-offset + invalid-tag? if
- flash-buf mfg-data-offset + /flash-block h# ff erase
-
- flash-buf mfg-data-end-offset + h# 800 - h# 800 ( adr len )
- mfg-data-end-offset h# 800 - ( adr len offset )
- flash-read ( )
- then
exit
then
+ \ Copy the entire block containing the manufacturing data into the
+ \ memory buffer. This make verification easier.
- \ If the system has mfg data in the old place, move it to the new place
- mfg-data-top flash-base h# 1.0000 + = if
- \ Copy just the manufacturing data into the memory buffer; don't
- \ copy the EC bits from the beginning of the block
- mfg-data-range ( adr len )
- flash-buf mfg-data-end-offset + ( adr len ram-adr )
- over - swap ( adr ram-adr' len )
- 2dup 2>r move 2r> ( ram-adr len )
-
- \ Write from the memory buffer to the FLASH
- mfg-data-offset flash-erase-block ( ram-adr len )
- mfg-data-end-offset over - ( ram-adr len offset )
- flash-write ( )
- else
- \ Copy the entire block containing the manufacturing data into the
- \ memory buffer. This make verification easier.
-
- mfg-data-top /flash-block - ( src-adr )
- flash-buf mfg-data-offset + ( src-adr dst-adr )
- /flash-block move ( )
- then
+ mfg-data-top /flash-block - ( src-adr )
+ flash-buf mfg-data-offset + ( src-adr dst-adr )
+ /flash-block move ( )
;
: verify-firmware ( -- )
@@ -235,7 +207,6 @@
[then]
\ Don't verify the block containing the manufacturing data
-
flash-buf mfg-data-end-offset + /flash mfg-data-end-offset verify-flash-range \ Verify last part
;
: write-firmware ( -- )