Subject: Re: Need sparc openboot reference (fwd)
To: Alfred Perlstein <bright@hotjobs.com>
From: Eduardo E. Horvath <eeh@one-o.com>
List: port-sparc
Date: 01/29/1999 09:37:52
On Fri, 29 Jan 1999, Alfred Perlstein wrote:
> On Thu, 28 Jan 1999, Eduardo E. Horvath wrote:
>
> > On Wed, 27 Jan 1999, Alfred Perlstein wrote:
> >
> > > On Wed, 27 Jan 1999, Eduardo E. Horvath wrote:
> > >
> > > > This creates the mapping and leaves the virtual address on the stack.
> > > > Then `cd' back to the zs node and type:
> > > >
> > > > encode-in " address" property
> > >
> > > ok cd /zs
> > > ok encode-in " address" property
> > > encode-in ?
> > > ok encode " address" property
> > > Fast Data Access MMU miss
> >
> > Sorry, typo, that should read:
> >
> > encode-int " address" property
>
> hrm:
>
> Initializing Memory |
> ok showstack
> ok cd /zs@f,1000000
> ok 1fef1000000 sbus 4 memmap
> fffae000 ok encode-int " address" property
> ok cd /zs@f,1100000
> ok 1fef1100000 sbus 4 memmap
> fffac000 ok encode-int " address" property
> ok .properties
> port-a-rts-dtr-off
> reg 0000000f 01100000 00000004
> interrupts 00000028
> device_type serial
> name zs
> ok
Seems to work for me:
Sun Ultra 1 UPA/SBus (UltraSPARC 167MHz), No Keyboard
OpenBoot 3.11, 64 MB memory installed, Serial #7959345.
Ethernet address 8:0:20:79:73:31, Host ID: 80797331.
Boot device:
/sbus@1f,0/SUNW,soc@1,0/SUNW,pln@a0000800,201cabb5/SUNW,ssd@1,2 File and
args: kadb -xv
Evaluating: boot
Can't open boot device
ok cd /sbus
ok ls
f007321c SUNW,bpp@e,c800000
f006b7cc SUNW,hme@e,8c00000
f0064dd0 SUNW,fas@e,8800000
f005d388 SUNW,pll@f,1304000
f005d2d4 sc@f,1300000
f005b8b8 zs@f,1000000
f005a418 zs@f,1100000
f005a364 eeprom@f,1200000
f005a230 SUNW,fdtwo@f,1400000
f005a168 flashprom@f,0
f005a0d8 auxio@f,1900000
f0059fcc SUNW,CS4231@d,c000000
ok cd zs@f,1000000
ok .properties
reg 0000000f 01000000 00000004
interrupts 00000028
port-b-ignore-cd
port-a-ignore-cd
keyboard
device_type serial
name zs
ok 1fef1000000 sbus 4 memmap encode-int " address" property
ok .properties
address fffae000
reg 0000000f 01000000 00000004
interrupts 00000028
port-b-ignore-cd
port-a-ignore-cd
keyboard
device_type serial
name zs
ok cd ..
ok cd zs@f,1100000
ok .properties
port-b-ignore-cd
port-a-ignore-cd
reg 0000000f 01100000 00000004
interrupts 00000028
device_type serial
name zs
ok 1fef1100000 sbus 4 memmap encode-int " address" property
ok .properties
address fffac000
port-b-ignore-cd
port-a-ignore-cd
reg 0000000f 01100000 00000004
interrupts 00000028
device_type serial
name zs
ok
>
>
> it seems to allow it, but doesn't store the properties in the zs nodes...
> and the kernel still panics
>
> anything else to try?
>
> well i guess i _could_ hardcode it into the kernel, but i was hoping to
> avoid that... time to unpack some linux code and take a peek as well.
One of the things I'm considering is to change the drivers to access all
device registers through the passthrough ASIs so the registers never need
to be mapped in. The problem is that then I would need to rewrite all
drivers to properly use the bus_space_{read,write}*() macros for all
register accesses.
>
> I think i may call the prom people tomorrow to ask them what the deal is.
>
> The little i have learned so far (forth is nifty) puts PC bios's to shame
> though, very impressive.
>
> thank you,
> -Alfred
>
=========================================================================
Eduardo Horvath eeh@one-o.com
"I need to find a pithy new quote." -- me