Date: Thu, 18 Dec 2003 15:56:43 +0100 From: "Hermans, Hein" <HeinH@nmc.kpn.net> To: "'freebsd-mobile@freebsd.org'" <freebsd-mobile@freebsd.org> Subject: Slow keyboard response, IRQ routing problems ? Message-ID: <8EB4F34946036E499CAE93F5DF40DE870421C49D@NMCRD01V3.nmcrd.nmcgv>
next in thread | raw e-mail | index | archive | help
Some while ago, I posted the below message... >Hi there, > >Last week I installed FreeBSD 4.5 (though I noticed the same problem on 4.3 and 5.1) on a Presario 1230 laptop. > >During installation and afterwards I noticed a slow keyboard response on the console. Scrolling of >long output (cat big_file.txt) works perfect or comparable to a Linux installation. Only when >typing (no system load) I notice a minimal time lap >between pressing the key and the showing up >of the character on the screen. The effect is the same as when remotely logged into a slow machine >or via a slow / busy connection. > >Unfortunately the problem isn't related to the key repeat rate (thanks anyway Nathan) so a > >$ kbdcontrol -r normal/fast/slow > >doesn't fix the problem Since then I have made some progress; - Installed version 5.1 again - I noticed in the kernel logging, that the PCCARD was using IRQ1 (???) ---dmesg-snip--- Using $PIR table, 5 entries at 0xc00fdf70 pcib0: <Host to PCI bridge> at pcibus 0 on motherboard pci0: <PCI bus> on pcib0 cbb0: <TI1221 PCI-CardBus Bridge> at device 17.0 on pci0 cardbus0: <CardBus bus> on cbb0 pccard0: <16-bit PCCard bus> on cbb0 pci_cfgintr: 0:17 INTA routed to irq 1 cbb1: <TI1221 PCI-CardBus Bridge> at device 17.1 on pci0 cardbus1: <CardBus bus> on cbb1 pccard1: <16-bit PCCard bus> on cbb1 pci_cfgintr: 0:17 INTA routed to irq 1 ---snip--- atkbdc0: <Keyboard controller (i8042)> at port 0x64,0x60 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 ---snip--- - Recompiled the kernel without any pccard support This solved most of my problems; the keyboard was functioning as normal now, but I don't have any functioning pccard anymore. As soon as I insert the driver (as a module now) the driver gets IRQ1 assigned :( --- cbb0: <TI1221 PCI-CardBus Bridge> at device 17.0 on pci0 pci_cfgintr: 0:17 INTA routed to irq 1 cbb1: <TI1221 PCI-CardBus Bridge> at device 17.1 on pci0 pci_cfgintr: 0:17 INTA routed to irq --- My question now is, how is it possible that the driver (cbb) gets (via the pci-bus) a reserved IRQ1 assigned, which is allready (rightfully) in use by the keyboard driver. I have taken a look in /dev/pccbb.c and accompanying files... but allas I'm not a programer... Kind regards (and sory for such a long post), Hein Hermans p.s. below, some more loging ===================== pciconf -lv hostb0@pci0:0:0: class=0x060000 card=0x00000000 chip=0x00011078 rev=0x00 hdr=0x00 vendor = 'Cyrix Corp (Now owned by VIA)' device = 'MediaGXm MMX Cyrix Integrated CPU' class = bridge subclass = HOST-PCI none0@pci0:17:0: class=0x060700 card=0xac190e11 chip=0xac19104c rev=0x00 hdr=0x02 vendor = 'Texas Instruments (TI)' device = 'PCI1221 PC card CardBus Controller' class = bridge subclass = PCI-CardBus none1@pci0:17:1: class=0x060700 card=0xac190e11 chip=0xac19104c rev=0x00 hdr=0x02 vendor = 'Texas Instruments (TI)' device = 'PCI1221 PC card CardBus Controller' class = bridge subclass = PCI-CardBus isab0@pci0:18:0: class=0x060100 card=0x00000000 chip=0x00021078 rev=0x00 hdr=0x00 vendor = 'Cyrix Corp (Now owned by VIA)' device = 'Cx5520 ISA Bridge Rev.1' class = bridge subclass = PCI-ISA ohci0@pci0:19:0: class=0x0c0310 card=0xa0f80e11 chip=0xa0f80e11 rev=0x04 hdr=0x00 vendor = 'Compaq Computer Corp (Now owned by Hewlett-Packard)' device = 'ZFMicro USB Open Host Controller' class = serial bus subclass = USB none2@pci0:20:0: class=0x030000 card=0xb0be0e11 chip=0x008310c8 rev=0x01 hdr=0x00 vendor = 'Neomagic Corporation' device = 'NM2097 Graphic Controller NeoMagic MagicGraph128ZV+' class = display subclass = VGA ######################################## Copyright (c) 1992-2003 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.1-RELEASE #1: Sun Dec 14 05:24:21 CET 2003 root@:/usr/src/sys/i386/compile/DEMON Preloaded elf kernel "/boot/kernel/kernel" at 0xc03e7000. Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 28419972 Hz CPU: Cyrix GXm (28.42-MHz 586-class CPU) Origin = "CyrixInstead" Id = 0x540 DIR=0x3346 Stepping=3 Revision=3 real memory = 33554432 (32 MB) avail memory = 28483584 (27 MB) VESA: v2.0, 1024k memory, flags:0x0, mode table:0xc037e182 (1000022) VESA: MagicGraph 128 V/ZV+ 32K VGA BIOS npx0: <math processor> on motherboard npx0: INT 16 interface pcibios: BIOS version 2.10 Using $PIR table, 5 entries at 0xc00fdf70 pcib0: <Host to PCI bridge> at pcibus 0 on motherboard pci0: <PCI bus> on pcib0 pci0: <bridge, PCI-CardBus> at device 17.0 (no driver attached) pci0: <bridge, PCI-CardBus> at device 17.1 (no driver attached) isab0: <PCI-ISA bridge> port 0x5000-0x500f,0x4000-0x401f,0x3000-0x307f mem 0x40010000-0x40010fff at device 18.0 on pci0 isa0: <ISA bus> on isab0 ohci0: <OHCI (generic) USB controller> mem 0xfedfe000-0xfedfefff irq 9 at device 19.0 on pci0 usb0: OHCI version 1.0, legacy support usb0: <OHCI (generic) USB controller> on ohci0 usb0: USB revision 1.0 uhub0: (0x0e11) OHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered uhub0: device problem, disabling port 1 pci0: <display, VGA> at device 20.0 (no driver attached) orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0 pmtimer0 on isa0 ata0 at port 0x3f6,0x1f0-0x1f7 irq 14 on isa0 ata1 at port 0x376,0x170-0x177 irq 15 on isa0 atkbdc0: <Keyboard controller (i8042)> at port 0x64,0x60 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: current command byte:0047 psm0: found IntelliMouse psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: model IntelliMouse, device ID 3-00, 3 buttons psm0: config:00000000, flags:00000000, packet size:4 psm0: syncmask:08, syncbits:08 fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> at port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode ppbus0: <Parallel port bus> on ppc0 ppi0: <Parallel I/O> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 unknown: <PNP0303> can't assign resources (port) unknown: <PNP0f13> can't assign resources (irq) unknown: <PNP0600> can't assign resources (port) unknown: <PNP0600> can't assign resources (port) unknown: <PNP0501> can't assign resources (port) unknown: <PNP0400> can't assign resources (port) unknown: <PNP0700> can't assign resources (port) Timecounters tick every 10.000 msec ad0: 2061MB <HITACHI_DK226A-21U> [4188/16/63] at ata0-master PIO4 acd0: CDROM <TOSHIBA CD-ROM XM-1702BC> at ata1-master PIO4 Mounting root from ufs:/dev/ad0s1a ######################################## # vmstat -i interrupt total rate stray irq0 1 0 stray irq6 1 0 ohci0 irq9 1 0 ata0 irq14 21058 1 ata1 irq15 3 0 atkbd0 irq1 10436 0 psm0 irq12 45086 3 clk irq0 1445847 99 rtc irq8 1850685 127 Total 3373118 23 ######################################## After loading of the cbb driver: # kldstat Id Refs Address Size Name 1 7 0xc0100000 2e5228 kernel 2 1 0xc0e70000 18000 linux.ko 3 1 0xc1190000 9000 cbb.ko 4 1 0xc11b4000 3000 exca.ko aditional lines of dmesg: cbb0: <TI1221 PCI-CardBus Bridge> at device 17.0 on pci0 pci_cfgintr: 0:17 INTA routed to irq 1 cbb1: <TI1221 PCI-CardBus Bridge> at device 17.1 on pci0 pci_cfgintr: 0:17 INTA routed to irq =====================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8EB4F34946036E499CAE93F5DF40DE870421C49D>