thinkpad 770 -current ccb IRQ (hence ep0) broken between
20040204-20040310?
John Baldwin
jhb at FreeBSD.org
Wed Mar 17 09:02:30 PST 2004
On Tuesday 16 March 2004 06:24 pm, bsdforums_account at melliferous.com wrote:
> Hi,
>
> here is the dmesg -v
Can you try this patch and include the dmseg (non -v for now) output in the
reply? Thanks.
Index: pci_pir.c
===================================================================
RCS file: /usr/cvs/src/sys/i386/pci/pci_pir.c,v
retrieving revision 1.109
diff -u -r1.109 pci_pir.c
--- pci_pir.c 18 Feb 2004 22:40:23 -0000 1.109
+++ pci_pir.c 17 Mar 2004 16:01:57 -0000
@@ -435,11 +435,17 @@
pci_pir_biosroute(int bus, int device, int func, int pin, int irq)
{
struct bios_regs args;
+ int error;
args.eax = PCIBIOS_ROUTE_INTERRUPT;
args.ebx = (bus << 8) | (device << 3) | func;
args.ecx = (irq << 8) | (0xa + pin);
- return (bios32(&args, PCIbios.ventry, GSEL(GCODE_SEL, SEL_KPL)));
+ error = bios32(&args, PCIbios.ventry, GSEL(GCODE_SEL, SEL_KPL));
+ if (error) {
+ printf("$PIR: ROUTE_INTERRUPT returned 0x%2x\n",
+ args.eax >> 8 & 0xff);
+ }
+ return (0);
}
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-mobile
mailing list