[coreboot] MIPS Yamon replacement?

Robin Randhawa robin.randhawa at gmail.com
Fri Mar 28 09:34:50 CET 2008

On Fri, 2008-03-28 at 00:55 +0100, Uwe Hermann wrote:
> On Thu, Mar 27, 2008 at 03:14:36PM +0100, Carl-Daniel Hailfinger wrote: 
> > Well, only v2 has been ported to PPC and the structure of v3 is
> > radically different. However, the v3 structure allows much easier
> > porting, so I think v3 would be your preferred target.
> Yep, definately.
> v2 (or was it v1?) also had some support for Alpha, btw.

> > I assume MIPS boards have some sort of ROM. How is that ROM mapped into
> > the address space?

Please see my previous reply to Carl in this thread.

> Also, are there generic "PC"-like machines with a standard "ROM chip" as
> in x86-world, or are they exclusively embedded boards?

While I have never played with them, there are a host of such machines
based on MIPS processors made by SGI and Sun which I assume would have
such standard "ROM chips". 

The prevalent market as of now is of course the embedded space where
MIPS processors have proliferated into networking gear, set top boxes,
game consoles etc. The thumb rule is that MIPS tries to position itself
wherever ARM does, but with a lot less luck. :)

> How would you go
> about flashing such a board?

To quote an example of the "prescribed" method : For a while, I was
working with a MIPS Malta board which is a baseboard containing the
Intel PIIX based southbridge and the peripheral buses including the
Flash at the reset vector. A number of "core cards" can be dropped onto
the Malta which contain a supported MIPS core and a system controller
(usually a Galileo GT64120 or one of several MIPS' in house controllers
such as the Bonito etc).

Anyways, they stuck in some code in a CPLD on the baseboard which ran
only if a physical switch was flipped and which would emulate a USB
printer over the bus. You could then write an SREC firmware image to
this printer from the host and the CPLD code would do the Flash
unlock-erase-program bits.

Fortunately (or otherewise) I do not have a Malta which is an expensive
beast. On the other hand, the board I do have is an Algorithmics P4032
which has the ability to conditionally (the condition being a jumper
setting) boot off an external Flash chip for which there is a DIP socket
provided which makes my task very easy. I just have to put in some
working firmware such as pmon (which supports this board) onto the
external Flash and then I can use it to program the board's internal
boot flash mapped at 0x1FC00000 as much as I like (get images off of
ethernet/RS-232 etc). This is what I aim to do basically, once I can get
someone with a Flash programmer to sort things out for me initially.

Another idea I am playing with is to use GXEmul
[http://gavare.se/gxemul/] which is a system emulator (not just the
core). It currently supports the P5042 which is a souped up P4032. If I
could get GXEmul to support my board, I have an excellent test bed ready
to use. More on my experiments with this later.

>  Can flashrom be hacked to support them or
> do you usually use some sort of JTAG interface?

I'm not aware of flashrom just yet but most MIPS boards do have a JTAG
interface which needs to be used with an emulator and (usually
proprietary) software.


More information about the coreboot mailing list