From owner-freebsd-questions Wed Oct 4 19:34:33 1995 Return-Path: owner-questions Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id TAA14294 for questions-outgoing; Wed, 4 Oct 1995 19:34:33 -0700 Received: from Root.COM (implode.Root.COM [198.145.90.17]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id TAA14288 for ; Wed, 4 Oct 1995 19:34:22 -0700 Received: from corbin.Root.COM (corbin [198.145.90.50]) by Root.COM (8.6.12/8.6.5) with ESMTP id TAA21933; Wed, 4 Oct 1995 19:32:48 -0700 Received: from localhost (localhost [127.0.0.1]) by corbin.Root.COM (8.6.12/8.6.5) with SMTP id TAA28100; Wed, 4 Oct 1995 19:34:15 -0700 Message-Id: <199510050234.TAA28100@corbin.Root.COM> To: "Rodney W. Grimes" cc: gary@palmer.demon.co.uk (Gary Palmer), archie@tribe.com, freebsd-questions@freebsd.org Subject: Re: ix0: device timeout In-reply-to: Your message of "Wed, 04 Oct 95 17:49:18 PDT." <199510050049.RAA04644@GndRsh.aac.dev.com> From: David Greenman Reply-To: davidg@Root.COM Date: Wed, 04 Oct 1995 19:34:14 -0700 Sender: owner-questions@freebsd.org Precedence: bulk >The if_ix.c driver can fully read the softset IRQ value and reports >any descrepancy between it and what the kernel config value is: > /* > * Get the encoded interrupt number from the EEPROM, check it > * against the passed in IRQ. Issue a warning if they do not > * match. Always use the passed in IRQ, not the one in the EEPROM. > */ > irq = ixeeprom_read(unit, eeprom_config1); > irq = (irq & IRQ) >> IRQ_SHIFT; > sc->irq_encoded = irq; > irq = irq_translate[irq]; > if (irq != dvp->id_irq) { > printf("Warning board is configured for IRQ %d\n", irq); > } The above is actually quite broken - everything from printing the bit encoded irq as a decimal number (so 10 comes out as 1024) to not doing what the comment says (using the kernel compiled value if they don't match). I've fixed these bugs and added the ability for "?" to work. The changes will be in -current soon. -DG