[LinuxBIOS] LinuxBIOS on ASUS P2B-L

Richard Smith smithbone at gmail.com
Sat Jul 29 15:24:26 CEST 2006

On 7/28/06, Don Waugaman <dpw at email.cs.arizona.edu> wrote:
> Hi all,
> I'm working on putting LinuxBIOS on an old ASUS P2B-L that I'd like to
> convert into an "instant-on" server for home use.  It has an Intel 440BX

Excellent Looks like we are finally going to get the 440bx stuff working.
ASUS however is a bit problematic.  They hide the SMbus with a GPIO or
something.  More below.

> Then I grabbed the SVN trees for both v1 and v2.  I copied the
> bitworks/ims mainboard and target directories, as they seemed to be
> using the 440bx code, and I'm slogging through changing the various
> bitworks & ims entries in the code to asus & p2bl entries.  So far, so
> good, though I feel somewhat like I'm in a maze of twisty little
> passages, all alike.

The learing curve is steep.  Stick with it.

You are in luck.  I've actually got booting code for my ASUS P2b. Both
V1 and V2.  In V1 you have to hammer in the RAM settings because like
I said the SMbus is either not in the same location as the 440bx
reference design or its hidden with a GPIO.  We will proballly have to
do a bit of sluthing work under a factory bios system and Linux to
find out what GPIO does the magic.

In V2 its exactly the same as the Bitworks IMS suff with the superIO
changed.  Current issue is that again SMbus stuff is not working.

> My main question is:  The W83977TF has support under v1, but not v2 -
> any tips on porting from one to the other?

I've done this already.  I'll push the code up in a few hours or so.
Its on a machine I don't have local access to right now.  Its pretty
easy though just find an existing SuperIO in V2 copy over the
structure and replace the names and  guts of the functions with the
stuff for the new SuperIO.  The NSC chip that the Bitoworks IMS uses
would be a good example.

> kind of debug output before  RAM initialization?  I'm not sure where to
> put my own debugging output into the code - just a "hello, I'm here" is

After I push up the p2b stuff, you can look at it.  Its  got some
debug output.  The file you want to look at is auto.c.  Thats the
first part of your mainboard config that is run.

> looked like v2's configuration setup was a lot easier to deal with, so I
> started there.  Would it be worth it to learn how v1 does things for
> this project?

V2 totally.  The only thing we are going to need V1 for is reference
of a working set of code.

> The other outstanding issue coming down the pike is that the machine has
> all ECC RAM.  Is ECC supported by v1 or v2, and if not by either, which
> would make it easiest to add support?  I'm assuming v2, but I'll try v1
> if that would be easier.

Neither of the codebases support ECC for the 440BX.  ECC is supported
by other chips in V2 though so we do have examples.
Can you run it in non-ECC (or scrape up some non-ECC Dimms) mode while
we debug and get some base functionality up?

Richard A. Smith

More information about the coreboot mailing list