Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Jun 1995 19:14:23 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        bde@zeta.org.au, davidg@Root.COM
Cc:        fenner@parc.xerox.com, freebsd-bugs@FreeBSD.org, gibbs@freefall.cdrom.com
Subject:   Re: FTP install is *almost* there...
Message-ID:  <199506060914.TAA00354@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>>Erm, 0 means the clock irq.  It would cause a probe conflict if the clock
>>device was in the device tables.
>>
>>The driver sees (1 << irq_number), or 0 for none/unspecified/auto.

>   Gack, you're right. Userconfig has brokeness in this area. Specifying -1
>will result in shifting the bit all the way off the end, resulting in "0".

No, it handles -1 specially.

>There is supposed to be a difference between 0 and -1. 0 is supposed to
>mean "none" and -1 is supposed to mean "auto". Apparantly all the drivers
>must treat 0 and -1 as the same.

-1 is converted to 0 in mkioconf().  irq numbers are exponentiated more
machine-independently by converting them to a string and prefixing "IRQ".
isa.h somewhat confusingly defines IRQ0 as 0x0001 etc.  I can't see where
`?' and `none' are distinguished in config.y.  lang.l converts `?' to -1
which is the same as the default (`none') value.  Anyway, the drivers
apparently get it right by always dealing with the mask.  -1 isn't a
valid mask and drivers apparently don't set id_irq to it.

Bruce



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