linux-mips-fnet
[Top] [All Lists]

linux-2.14.2.dec is obsolete!

To: linux-mips@fnet.fr
Subject: linux-2.14.2.dec is obsolete!
From: (Harald Koerfgen) <harald.koerfgen@netcologne.de>
Date: Tue, 10 Mar 1998 20:03:19 +0100 (MET)
Organization: none
Reply-to: (Harald Koerfgen) <harald.koerfgen@netcologne.de>
Sender: harry@franz.netcologne.de
Fellow DECstation Hackers,

I've got good and bad news for you. First the good one:

The DECstation specific stuff is reintegrated into the latest Linux/MIPS source
tree which is 2.1.73! This kernel is tested on a kmin and a 3max+ and may
work on maxines (I hope).

Now the bad one [Hmmm... where's that asbesto suit...]:

This Kernel will no longer work on pmax-alike DECstations, which are:
DS2100, DS3100, DS5100 and DS5000/200! But relax, a few minor changes and
you'll be back :-). I haven't had a chance to make these myself just because I
don't have the hardware.

Improvements over 2.1.14.2.dec:

Well, to be honest, not very much. 2.1.73 dies exactly where the latest 2.1.14
has died before: "Kernel panic: VFS: Unable to mount root fs on 00:00", but
what would you do without device drivers?. On the other hand, it dies in a more
cleaningly manner :-).

Changes since 2.1.14.2.dec:

o Building process: The kernel itself and the "bootloader" code are clearly
seperated from each other. The bootloader does no longer use any kernel
functionality and the kernel does no longer use any prom_functions (bye bye,
prom_printf). The kernel is compiled into ELF format and then converted into an
 a.out image just like for the other MIPS machines. This kernel image is linked
together with the bootloader into an ECOFF image, which can be booted via the
DECstation boot PROM. I have added the option "make netboot" to the Makefile to
do this. There is no need to remove sections any longer.

o Startup Procedure: This netbootable Image (arch/mips/dec/boot/nbImage) will
be loaded at address 0x80200000, which leaves enough room to work with
compressed kernel images. This might be necessary in the future for certain
PROM versions. The kernel itself is then copied down to 0x80000000 and started.
This, together with the now no longer needed bootloader, saves nearly 200 KB
memory. PROM functions, on the other hand, will no longer work.

o Primitive serial console for DECstations with scc chip.

o Proper kernel initialization: No more "skipping console-init" or "skipping
device_init".

o Memory sizing routine for pmax-alike Machines (untested!).

o Code cleanup and better integration into the main source tree.

Development environment notes:

This kernel will not compile anymore with the 2.7.*-binutils. You _do_ need
2.8.1-binutils with support for the a.out-mips-little target. Due to an
unresolved linker bug you have to remove the -N option from the final kernel
link (in arch/mips/Makefile).

Do _not_ use "make menuconfig", it insists on enabling CONFIG_CDROM which 
results in
an unresolved symbol cdrom_init(). Use "make config" instead.

You would not see anything unless you enable CONFIG_SERIAL and 
CONFIG_SERIAL_CONSOLE.

Todo:

I cannot do this myself, any feedback is appreciated, patches are welcome:

o Test if the startup procedure works on pmax machines.

o Test and debug the pmax_get_memory routine.

o Serial console support for DECstations with the DC7085 chip, or raster
console if you like.

o Test if serial console works on maxines. The serial console is hardcoded for
maxines, regardless of the settings for "console" and "osconsole". If you do 
not see
anything try playing around with tinycon.c

o Test if this kernel works so far on R4000 based DECstations.

Things I am working on:

o Passing command line parameters to the kernel.

o Improving serial console for scc chips.

o Ramdisk support.

o Better interrupt handling code integration.

o Turbochannel support.

For us all:

o Writing device drivers.

o Writing device drivers.

o And, of course, writing device drivers.

I will be uploading my source tree this evening and it should soon appear at:

http://decstation.unix-ag.org

Stay tuned,
Harald

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