[Top] [All Lists]

Re: The goal ...

Subject: Re: The goal ...
From: Ralf Baechle <ralf@Julia.DE>
Date: Sun, 28 Apr 1996 20:00:19 +0200 (MET DST)
In-reply-to: <> from "Warner Losh" at Apr 27, 96 09:33:00 pm

> : so you'll have to wait a bit until I upload the stuff.
> Ralf, you are such a tease :-)

Oh, I just thought I should keep you informed :->

> I've manage to compile the latest kernel (1.3.91 is the latest that I
> grabbed) for the Deskstation.  I did it w/o procfs, and found and
> fixed a couple of bugs in that support.  One of the things I noticed
> was the load address for my machine is now 0x80100000.  Cool!  It also
> looks like the interrupt handlers are copied down.  Isn't it dangerous
> to do that inplace copy?  Shouldn't the code have a if (begin_except
> != KSEG0) protecting the copy?

Why should an inplace copy be dangerous?  Ok, for Jazz machines the kernel
needs several *microseconds* longer to startup.  A long time if you're
in hurry :-)

> Anyway, I'm not having much luck.  For reasons unknown I find that I'm
> unable to get past paging_init() in the boot sequence (at least I get
> a 'b' in the upper left hand corner of the screen and I've hacked
> start_kernel to look like:
> ...
> *(unsigned char *)0xa00a0000 = 'b';
>       memory_start = paging_init(memory_start,memory_end);
> *(unsigned char *)0xa00a0000 = 'c';
> ...
> which is a pretty strong smoking gun).

I definately bugged mem_init() for your machine which frees the complete
low 640k including the exception handlers ...  As paging_init() gets
called before mem_init() this cannot be your problem.  Hmmm...

                                          I recall 1.3.64 hanging on
> boot for reasons unknown, or was that 1.3.82.  It didn't happen on
> 1.3.62.  I'm off to find out why this is happening to me.  I wish
> there was some easy way to get early panics to always print
> something...  Ah, a problem to chase when I have time...

>From my Tyne hackery I've got still a tiny console in arch/mips/lib/tinycon.c.
Adjust the videoparams and you have a debugging console.  Usage should
be clear after a short look into the code.  With print_string() and
sprintf() in combination you can the same things as with printk().
tinycon.c is also easily useable for other machines with a PC style
character based display.


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