Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Sep 1996 09:04:29 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        bde@zeta.org.au, SimsS@Infi.Net
Cc:        hackers@freebsd.org
Subject:   Re: Problem with sio0
Message-ID:  <199609162304.JAA00146@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>I've stuffed a couple of diagnostic printf's into sio.c and have =
>empirically proven that the probe on a Compaq LTE/Elite returns 1's in =
>failures[5] and failures[8].  That  is to say, with isa_irq_pending.

This says that the interrupt being tested for arrives late (after it is
masked in the UART :-().

>A couple more minutes under the microscope shows that the sio0 probe is =
>being called with IRQ=3D0x10, even though the kernel's configed as IRQ4 =
>(and verified by a boot -c.  FWIW: the sio1 probe is called with IRQ =
>0x08.

I'm not sure what 3D0x10 is.  IRQ4 _is_ 0x10 (see
/usr/src/sys/i386/isa/isa.h) so 0x10 is the default.  failures[8] says
that probing the port probabky caused an IRQ4, so IRQ4 is probably
correct.

>So....  Not knowing ANYTHING, I offer the following question:  how / =
>where does the *dev structure get filled in before being passed into =
>sioprobe()?  It appears that that's where the failure starts, but I'm in =
>*way* over my head....

The structure is initialized at compile time and not changed unless you
use -c.  I don't think the problem is there.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609162304.JAA00146>