Subject: Indigo R3000 PROM calls /

From: Michael Engel <[email-masked]>
Date: Sun, 16 Apr 2000 23:12:02 +0200 (MET DST)

Hi,

I had some time over the weekend and started to hack on Linux for my
good old R3000 Indigo (oh yeah, I should better try to write drivers
for the PMAG-F and the FDDI adapter in my DECstations but Indigo 
hacking seemed to be more fun ;-)). I can load the kernel from sash 
and it actually starts at kernel_entry (whow) and - no wonder - crashes 
somewhere in init_arch (because I didn't change anything there ...).

Now, it would of course be nice to have some kind of debugging output
early on. Does anyone know if the R3k Indigo has the same ARCS console 
semantics as the Indy ? I.e. there is a PROMBLOCK struct at address 
0xa0001000 (as defined in include/asm-mips/sgiarcs.h) which points to 
romvec which I can then use to dereference PROM functions ? Or is it 
something completely different ? 

Of course, if someone unexpectedly finds some Indigo R3k hardware docs 
somewhere, I'd appreciate it ;).

Best regards,
	Michael Engel	([email-masked])

---

From: Harald Koerfgen <[email-masked]>
Date: Mon, 17 Apr 2000 18:33:36 +0200 (CEST)

> something completely different ? 

Well, as you can imagine I have absolutely no idea, but if you have a chance to
disassemble the beginning of the PROM (0xbfc00000) you can easily check if the
Indigo provides callbacks a la MIPS (very much like the DS3100).

If you find something like:

       0:       0bf0008a        j       fc00228
       4:       00000000        nop
       8:       0bf0012a        j       fc004a8
       c:       00000000        nop
      10:       0bf0013f        j       fc004fc
      14:       00000000        nop
      18:       0bf0012c        j       fc004b0
      1c:       00000000        nop

(and I wouldn't be surprised if you did) then you should have a look at
include/asm-mips/mipsprom.h and the startup code in arch/mips/dec/prom.

-- 
Regards,
Harald

---

From: Ralf Baechle <[email-masked]>
Date: Mon, 17 Apr 2000 14:11:40 -0700

> something completely different ? 

Check out include/asm-mips/mipsprom.h, it should be fairly close to what
you're looking for.  SGI used two different PROM styles for their machines,
those with 64-bit CPUs are ARCS, the older machines have another
firmware implementation.  I do have some tested code for this platform
but it's back at home while I'm here at SGI ...

> somewhere, I'd appreciate it ;).

A few power series systems are the oldest stuff that I've seen over here
at SGI and even are mostly used as hightech door stops ...

  Ralf