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

RE: /dev/console

To: Richard van den Berg <R.vandenBerg@inter.NL.net>
Subject: RE: /dev/console
From: Harald Koerfgen <harald.koerfgen@netcologne.de>
Date: Tue, 15 Sep 1998 22:53:03 +0200 (MEST)
Cc: linux-mips@fnet.fr
In-reply-to: <Pine.LNX.3.95.980915194613.2924B-100000@whale.dutch.mountain>
Organization: none
Reply-to: "Harald Koerfgen" <harald.koerfgen@netcologne.de>
Sender: harry@franz.no.dom
Hi Richard,

On 15-Sep-98 Richard van den Berg wrote:
> Hello Harald,
> 
>> So it does on my DS5k/240 whereas on my DS5k/133 I am experiencing spurious
>> interrupts. Strange hardware :-(.
> 
> Do you also have a Bus Error when you hit a key at the terminal, or
> do you mean that with spurious interrupts?

Yes, that's what I meant. The "official" DECstation interrupt handler, i.e. the
one that you have, doesn't take take of spurious interrupts. This results in an
"infinite" loop until a pointer reaches the end of physical memory which
triggers a Bus Error.

> Well, here it happens and
> shows on the promconsole. It is at 80085138, according to System.map
> 80085040 is decstation_handle_int and 80085164 is kn02_io_int, both in
> arch/mips/dec/int-handler.S.

After experiencing these Bus Errors I tracked these down to the situation that:

a) An interrupt has occured. Otherwise the interrupt handler wouldn't have been
called.

b) The interrupt status in CP0_STATUS is 0 (zero)!

c) The interrupt status register in the IOASIC shows a serial interrupt
pending.

Strange but true. As I've said, I am still fighting with the hardware and it
doesn't look like I am making any progress :-(. Even the brute force method,
i.e. pretending those spurious interrupts *are* serial interrupts and handling
them accordingly, doesn't help.
 
> How do I add a printk() in assembly? :-)

Hint: include/asm-mips/asm.h. Examples: arch/mips/kernel/entry.S and head.S.

---
Regards,
Harald

<frustrated for three weeks now>

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