From owner-freebsd-hackers Mon Sep 9 16:46:15 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E5BE137B400 for ; Mon, 9 Sep 2002 16:46:11 -0700 (PDT) Received: from snipe.mail.pas.earthlink.net (snipe.mail.pas.earthlink.net [207.217.120.62]) by mx1.FreeBSD.org (Postfix) with ESMTP id 263A143E42 for ; Mon, 9 Sep 2002 16:46:11 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from pool0088.cvx21-bradley.dialup.earthlink.net ([209.179.192.88] helo=mindspring.com) by snipe.mail.pas.earthlink.net with esmtp (Exim 4.10) id 17oYEG-0005ij-00; Mon, 09 Sep 2002 16:46:04 -0700 Message-ID: <3D7D3247.4863F22@mindspring.com> Date: Mon, 09 Sep 2002 16:44:07 -0700 From: Terry Lambert X-Mailer: Mozilla 4.79 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Julian Elischer Cc: hackers@freebsd.org Subject: Re: what does this mean? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Julian Elischer wrote: > ANother case of the "obscure beyond belief" > message: > > sio1: configured irq 3 not in bitmap of probed irqs 0 > > what on earth is this trying to tell me? > > WHAT bitmap? In sioprobe(), there is a bitmap assembled from the value of all bits in the 8259 list of current interrupt requests. This bitmap is created by triggering requests, taking a snapshot, and then clearing them, taking another snapshot, and then AND'ing the first snapshot with the bitwise NOT of the second snapshot. This basically guarantees that the interrupt in question was raised by the device being probed, instead of by some other device. During the sioprobe(), it does this, and then calls bus_get_resource(), which returns the IRQ the device is "supposed to" have, according to the bus space code. Then that number is used to shift the value "1" left that many times, and anded with the bitmap from before. If no bits are set, then the message is emitted. What this basically indicates is that you have a device which has probed as present, but which is not where it's supposed to be. A common cause of this, according to a recent discussion, is a non -current system with a PCMCIA card device, or an ACPI based device on -current, running on a laptop, most especially Sony Vaio laptops, which like to jam everything ISA onto IRQ 9. It's also a possible message, if you have a serial port disabled in the BIOS, but the hardware probe finds the hardware there, because the BIOS is merely advisory, and you have not disable "PnP OS" in the BIOS. See i386/isa/intr_machdep.c (for isa_irq_pending()) and isa/sio.c (for sioprobe()). I think the intent of this code is to ensure against conflicts in host assigned resources for things like Mach32 greaphics controllers, which are known to conflict with the I/O space for COM3, etc., but that's just my best guess from past experience with conflicted hardware. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message