From owner-freebsd-hackers Fri May 7 19:40: 6 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from alpo.whistle.com (alpo.whistle.com [207.76.204.38]) by hub.freebsd.org (Postfix) with ESMTP id EFBD915256 for ; Fri, 7 May 1999 19:40:03 -0700 (PDT) (envelope-from julian@whistle.com) Received: from current1.whistle.com (current1.whistle.com [207.76.205.22]) by alpo.whistle.com (8.9.1a/8.9.1) with SMTP id TAA82167 for ; Fri, 7 May 1999 19:36:45 -0700 (PDT) Date: Fri, 7 May 1999 19:36:44 -0700 (PDT) From: Julian Elischer To: hackers@freebsd.org Subject: Advice on terrible hacky PCI driver. Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG I have a driver for a device that exists onthe PCI bus.. unfortunatly (don't ask) it has a separate interrupt as well that runs directly to int6 of the 8259. (not via the PCI bus and not configured in by the bios etc.) I've tried the following terrible hack in the driver, but it didn't seem to work. any thoughts? static void pwrfailPCIattach( pcici_t config_id, int unit) { sc_p scp; scp = sca[unit]; config_id->intline = 6; /* pretend the chip said irq 6 */ config_id->intpin = 4; /* pretend it's pin D */ /* * Allocate our (hardwired) interrupt. */ if (!pci_map_int(config_id, pwrfailintr, scp, &bio_imask)) { printf("pwrfail%d: couldn't map interrupt\n", unit); } else { printf("pwrfail%d: interrupt %d mapped\n", unit, config_id->intline); } } It get's the success message, but the interrupt is never delivered to the routine pwrfailintr(). julian To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message