Hi
I have a SM722 graphics controller based PMC card . At present Iam using the
card with a base board which contains Powerpc processor.
The card need to be mounted with a BIOS chip..
I have contacted Siliconmotion they have only Bios file of x86 based ..
Is there any open bios available which supports SM722 basic bios setup and
that supports powerpc processor for Linux?
Help me on the above
Thanks
Author: wmb
Date: 2008-01-06 00:37:48 +0100 (Sun, 06 Jan 2008)
New Revision: 769
Modified:
dev/olpc/cafenand/badblock.fth
dev/olpc/cafenand/redboot.fth
Log:
OLPC trac 5870 - More NAND error handling improvements.
Modified: dev/olpc/cafenand/badblock.fth
===================================================================
--- dev/olpc/cafenand/badblock.fth 2008-01-05 22:43:38 UTC (rev 768)
+++ dev/olpc/cafenand/badblock.fth 2008-01-05 23:37:48 UTC (rev 769)
@@ -27,6 +27,7 @@
\ Returns true if the block containing page# is bad
: block-bad? ( page# -- flag )
+ bbt 0= if drop false exit then
>bbt ( adr mask )
tuck swap c@ and ( mask masked-byte )
<>
@@ -184,6 +185,9 @@
bbt0 if bbt0 read-bbt-pages 0= if exit then then
bbt1 if bbt1 read-bbt-pages 0= if exit then then
+ bbt0 bbt1 or if
+ ." Both bad block tables are unreadable" cr
+ then
release-bbt
;
@@ -234,7 +238,7 @@
\ Get the existing bad block table, or make a new one if necessary
: get-bbt ( -- )
get-existing-bbt
- bbt 0= if
+ bbt0 bbt1 or 0= if
." No bad block table; making one" cr
make-bbt
then
@@ -306,7 +310,7 @@
: (wipe) ( 'show-bad 'show-erased 'show-bbt -- )
partition# 0= if
get-existing-bbt
- bbt 0= if
+ bbt0 bbt1 or 0= if
\ If there is no existing bad block table, make one from factory info
make-bbt
then ( 'show-bad 'show-erased 'show-bbt )
Modified: dev/olpc/cafenand/redboot.fth
===================================================================
--- dev/olpc/cafenand/redboot.fth 2008-01-05 22:43:38 UTC (rev 768)
+++ dev/olpc/cafenand/redboot.fth 2008-01-05 23:37:48 UTC (rev 769)
@@ -17,23 +17,12 @@
d# 256 constant /partition-entry
d# 8 constant max#partitions
-: partition-map-page# ( -- page# )
-[ifdef] notdef
- bbt1 if
- bbt1 bbt0 if bbt0 min then ( bbtn )
- else ( )
- bbt0 dup 0= abort" No Bad Block Table" ( bbt0 )
- then ( last-bbt-page# )
- begin pages/eblock - dup while ( part-page# )
- dup block-bad? 0= if exit then ( part-page# )
- repeat
-[else]
+: partition-map-page# ( -- true | page# false )
h# 10 pages/eblock * 0 do
- i block-bad? 0= if i unloop exit then
+ i block-bad? 0= if i false unloop exit then
pages/eblock +loop
-[then]
-
- true abort" No place for partition map"
+ ." No place for partition map"
+ true
;
: (#partitions) ( adr -- n )
@@ -55,11 +44,11 @@
0 instance value #partitions
: read-partmap ( -- )
- part-buf partition-map-page#
+ part-buf partition-map-page# if exit then
partition-start >r 0 to partition-start
read-page
r> to partition-start
- if true exit then
+ if exit then
part-buf (#partitions) to #partitions
;