Subject: HAL2 interrupt

From: Ulf Carlsson <[email-masked]>
Date: Wed, 28 Oct 1998 00:59:01 +0100

Hi,

I mailed you a few days ago, maybe that mail got dropped somewhere or maybe you
were to busy too read, anyhow ..

Now I'm asking again, do you know which interrupt number I should request for
the PBUS DMA:s. I can't handle the interrupts correctly without the knowledge of
interrupt numbers, and I'm afraid the spec didn't tell me anything about this
(atleast not the ones I've read). Also, is everything else I need for dealing
these interrupts ok (I haven't been able to check)? Maybe I could setup some
bogus irq detection stuff to figure this out on my own, but to save some bogus
programming I'm asking you instead.

It would be nice if you even explained *how* you know..

I think I'm pretty much done with a simple playback/recording driver now, still
untested though (probably +1000 serious bugs and race conditions, but I'll fix
that..).

Thanks,
Ulf

---

From: Thomas Bogendoerfer <[email-masked]>
Date: Wed, 28 Oct 1998 23:26:52 +0100

> the PBUS DMA:s. I can't handle the interrupts correctly without the knowledge of

for me it looks like SGINT_HPCDMA should be the first PBUS DMA interrupt.
But looking further into the indyIRQ.S and indy_int.c indicates, that these
interrupts aren't implemented, yet.

> It would be nice if you even explained *how* you know..

use the source Luke.

Thomas.

-- 
   This device has completely bogus header. Compaq scores again :-|
It's a host bridge, but it should be called ghost bridge instead ;^)
                                        [Martin `MJ' Mares on linux-kernel]

---

From: Ulf Carlsson <[email-masked]>
Date: Thu, 29 Oct 1998 11:12:11 +0100

> interrupts aren't implemented, yet.

The problem is that the sgiseeq and the sgiwd93 use HPC DMA as well, but they're
sharing local interrupt 0 (MIPS IRQ 2), and using some status register to
differentiate them. If I were writing a sgiwd93 driver or a sgiseeq driver, my
first guess would have been that they were using the SGINT_HPCDMA interrupts.

Well, looks like I'm out of luck, I'll do some trial & error.

Ralf?

- Ulf

---

From: Thomas Bogendoerfer <[email-masked]>
Date: Thu, 29 Oct 1998 23:10:09 +0100

> The problem is that the sgiseeq and the sgiwd93 use HPC DMA as well, but they're

yes, but they aren't using PBUS DMA channels, because they aren't connected
to the PBUS.

> first guess would have been that they were using the SGINT_HPCDMA interrupts.

SCSI and ethernet are special HPC devices, so they get handled in a different
way.

> Well, looks like I'm out of luck, I'll do some trial & error.

try interrupt 12, which should be the HPC3 interrupt (sgint23.h). After
getting an HPC3 interrupt you have to look in HPC3 register istat0 and 
istat1 for the interrupt source. I guess DaveM wanted to map these
interrupt sources to SGINT_HPCDMA, but never got to implement it.

Thomas.

---

From: Ulf Carlsson <[email-masked]>
Date: Thu, 29 Oct 1998 23:29:27 +0100

> interrupt sources to SGINT_HPCDMA, but never got to implement it.

Thanks, I'll do this tonight or tomorrow.

By the way, I have patched the kernel to support ksymoops (with stack tracing,
call tracing and code dump), and Keith Owens has patched ksymoops to support
MIPS. There was some sort of show_registers() function in traps.c which wasn't
used. I rewrote that function and made it work (yes, the original function
didn't work at all). Sounds interesting, doesn't it? I'll send you the patch
tomorrow...

- Ulf