>Hmm... that's bad.  It sounds like a shared interrupt.  (Or the driver
>isn't clearing the hardware interrupt before doing attach(9e), but then
>that would indicate the same bug in both windows and solaris drivers.) 
>It also sounds like the device doesn't get reset by e.g. a PCI bus
>reset.  I've seen that before with prism cards.

It was a shared interrupt; yes.  Yep, the fact that warm boot and cold
boot are different is really a bug; the fact that some devices don't
reset is an error in the hardware; working around this in software is
the only real option.

(My Ferrari 4000 fixes this interesting conundrum by making a reboot
actually cause a < .1sec power cycle)

>devo_reset (if that's what you mean) is listed as not supported.   But 
>grepping around in the code, it looks like it gets called via
>devi_reset, which is called via reset_leaves(), and possibly via other
>paths as well.

Yes.  It's called on reboot and panics; it's is not a supported entry
point but it is needed.  What you can do is very limited: in panic mode,
all interrupts are disabled.

Casper

Reply via email to