Peter Jeremy wrote:

 > I'm trying to enable a generic ISA multiport SIO card in -current from
 > just before the signal changes and get presented with the above panic
 > when the first SIO port on the card is attached.

Well... the first port that doesn't mention an IRQ.

I discussed this with Bruce last month;  The following patch seemed
to work-around, even though it's a stupid hack which shouldn't be 
committed.

The problem is that the BUS_SETUP_INTR() method for ISA seems to
absolutely require the specification of an IRQ, even though IRQ
specification is absolutely prohibited for non-master ports in 
AST-compatible multi-port sio cards.  Gah.

I'm not completely sure that this patch does the right thing (in
terms of allowing the slave serial ports to work correctly) anyway:
I haven't stress-tested it, I was more interested in getting the 
machine involved to be able to boot.  More investigation is required.

    - mark


*** /tmp/co/src/sys/i386/isa/isa.c      Wed Sep  1 16:04:24 1999
--- isa.c       Wed Oct  6 23:00:26 1999
***************
*** 137,142 ****
--- 137,152 ----
  isa_setup_intr(device_t bus, device_t child, struct resource *r, int flags,
               void (*ihand)(void *), void *arg, void **cookiep)
  {
+       if (r == NULL) {
+               /*
+                * handle the case for multiport sio cards, where 
+                * the kernel config file mentions lots of sio ports
+                * but only provides the irq on the master port -- other
+                * ports panic in nexus_setup_intr() without this 
+                */
+               return 0;
+       }
+ 
        return (BUS_SETUP_INTR(device_get_parent(bus), child, r, flags,
                               ihand, arg, cookiep));
  }




----
Mark Newton                               Email:  [EMAIL PROTECTED] (W)
Network Engineer                          Email:  [EMAIL PROTECTED]  (H)
Internode Systems Pty Ltd                 Desk:   +61-8-82232999
"Network Man" - Anagram of "Mark Newton"  Mobile: +61-416-202-223


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to