From owner-acpi-jp@jp.FreeBSD.org Fri Dec 28 17:26:33 2001
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) id fBS8QXc27240;
	Fri, 28 Dec 2001 17:26:33 +0900 (JST)
	(envelope-from owner-acpi-jp@jp.FreeBSD.org)
Received: from rover.village.org (warner@rover.bsdimp.com [204.144.255.66])
	by castle.jp.FreeBSD.org (8.11.6+3.4W/8.11.3) with ESMTP/inet id fBS8QVm27235
	for <acpi-jp@jp.freebsd.org>; Fri, 28 Dec 2001 17:26:32 +0900 (JST)
	(envelope-from imp@village.org)
Received: from localhost (imp@69.imp.village.org [10.0.0.69])
	by rover.village.org (8.11.3/8.11.3) with ESMTP id fBS8QMl19789
	for <acpi-jp@jp.freebsd.org>; Fri, 28 Dec 2001 01:26:24 -0700 (MST)
	(envelope-from imp@village.org)
Date: Fri, 28 Dec 2001 01:26:22 -0700 (MST)
Message-Id: <20011228.012622.108756262.imp@village.org>
To: acpi-jp@jp.FreeBSD.org
From: "M. Warner Losh" <imp@village.org>
X-Mailer: Mew version 2.1 on Emacs 21.1 / Mule 5.0 (SAKAKI)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Reply-To: acpi-jp@jp.FreeBSD.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+011218
X-Sequence: acpi-jp 1552
Subject: [acpi-jp 1552] Maybe a PCI Interrupt bug report, but want to know what to send
Errors-To: owner-acpi-jp@jp.FreeBSD.org
Sender: owner-acpi-jp@jp.FreeBSD.org
X-Originator: imp@village.org

$B$3$s$P$s$O!#%o!<%J!<$G$9!#(B

$B$9$_$^$;$s!"$,;d$O1Q8l$G=q$-$^$9!#(B

I was recently given a laptop.  A Caseo Fiva 205 prototype.  This is a
fairly nice machine.  However, there's an interrupt routing problem
that make PC Cards hang on eject for slot 1, and makes using PCI
interrupts for the pcic device impossible....

The root of the problem is that the FIVA BIOS claims to have routed
IRQ 4 and 5 to INTA and INTB of the Cardbus bridge.  The PCI $PIR
table says that these are illegal and that only IRQ 11 is routed to
INTA/INTB.  I can use the PCI $PIR table, and some hacks to the pci
layer in current to detect the bogus interrupt and route one that
works.  Doing this I can use both PC Card slots using PCI interrupts
(patches to appear soon).  I can even use the CF wireless card in the
CF slot (PC Card slot 1), which makes me very happy.

However, when I try to extend my patches to work with ACPI's pci
interrupt routing pcib device, something is wrong.  It would appear
that either we have a bad bug in ACPI that thinks all devices on the
PCI bus have the same set of valid IRQs that can be routed to them, or
this laptop's ACPI tells our ACPI this lie.  So my hacks to the
acpi_pcib code to try to detect and compensate for the badly routed
interrupts on the FIVA do not work at all.  According to debug printfs
I've added, the valid IRQs are always 3 4 5 7 11.  The PIR table
radically disagrees with this.

So, my question is, what do I need to provide to help track down this
problem?

I'm using -current as of Dec 12 on this box, but now that I have
working PC Card slots, I can update that to the latest.

Warner
