[Top] [All Lists]

RE: DS5000/25 and maybe others i/o base addresses?

Subject: RE: DS5000/25 and maybe others i/o base addresses?
From: Richard van den Berg <>
Date: Wed, 22 Jul 1998 22:03:57 +0200 (MET DST)
In-reply-to: <>
On Tue, 21 Jul 1998, Harald Koerfgen wrote:

> Another source of information are the Mach sources. As far as I can tell, the
> *BSD people have gleaned a lot of stuff from Mach.

As they do mention. :-)
> Anyway. The IOASIC resides where the (MAXSLOT +1) TURBOchannel slot would be 
> if
> it existed. The address range of the IOASIC is divided into 16 chunks with a
> size of 256 KB and each onboard device has its own chunk. The LANCE chip
> resides in chunk 3 on all IOASIC machines (5k/1xx, 5k/xx and 5k/2x0).

It's still unclear to me how address space is assigned, to me it
seems machine dependant for example looking at the TURBOchannel System
Parameters (EK-TCAAB-SP-006): the 5k/200 has 12 Mb (4 Mb each) for its
on-board pheripherals and the 5k/100 has 64 Mb (not mentioned each)
for it.

> To make a long story short:
> #include <asm/dec/tc.h>
>         lance_base = system_base + 3 * 0x00040000;
> system_base is declared and filled with the right value in drivers/tc/tc.c.

This short story is a bit longer... First I altered system base to

        system_base = slot0addr + slot_size * (max_tcslot + 2);

Letting the 5k/xx having 4 slots... In NetBSD it appears that the
framebuffer occupies slot 3 and secondly I gave the esar an offset
of 0x80000, which I also traced down the NetBSD code (see seperate
posting), according to the Ethernet Module documentation it should
reside at lance_base + 0xc0000, this all resulted that the kernel showed
me.... the correct ethernet hardware address YES!

> I guess the time is right for defining a few constants like LANCE_IOASIC_SLOT
> and so on :-).

Indeed it is, while having a BBQ? :-)



<Prev in Thread] Current Thread [Next in Thread>