Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 9 Jan 2002 14:05:25 +0100
From:      Nils Holland <nils@tisys.org>
To:        freebsd-hardware@freebsd.org
Subject:   PCI Interrupt Sharing
Message-ID:  <20020109140525.A68773@tisys.org>

next in thread | raw e-mail | index | archive | help
Hi folks,

the following is not really a FreeBSD specific question, but I thought I
might ask it anyway and see if someone can give me an answer.

So, on my machine, I have the BIOS assign IRQs to my PCI devices
automatically (in fact, I only have PCI devices in use). When I look at the
resource allocation (dmesg.boot below), I notice that two cards (pci1 and
ed0) share the same IRQ (11). I've also noticed that if I enable my
on-board USB controller, it will get IRQ 10 assigned, which means that it
would share an IRQ with bktr0 (the USB controller is not visible in the
dmesg.boot below since I don't use any USB devices and disabled it).

Basically, from what I have read, IRQ sharing is normal for PCI devices,
and thus is not something to worry about, except probably if trouble
occurs. On my system, however, I have never had any problems the way it is
set up right now. Still, I wonder if it would make some difference in terms
of performance (or whatever) if I manually made sure in the BIOS that every
IRQ is only used once.

So, do you think I should simply leave everything as it it ("If it ain't
broken, don't fix it"), or do you think that for some reasons I should
manually get rid of PCI devices sharing IRQs? I'm a little curious about
this, so any hints are welcome!

Greetings
Nils

Copyright (c) 1992-2002 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 4.5-PRERELEASE #0: Sat Jan  5 11:41:47 CET 2002
    root@poison.ncptiddische.net:/usr/obj/usr/src/sys/JODIE
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 996634437 Hz
CPU: AMD Athlon(tm) processor (996.63-MHz 686-class CPU)
  Origin = "AuthenticAMD"  Id = 0x642  Stepping = 2
  Features=0x183f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR>
  AMD Features=0xc0440000<<b18>,AMIE,DSP,3DNow!>
real memory  = 805240832 (786368K bytes)
avail memory = 779370496 (761104K bytes)
Preloaded elf kernel "kernel" at 0xc0367000.
Pentium Pro MTRR support enabled
Using $PIR table, 8 entries at 0xc00fdba0
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
pcib1: <VIA 8363 (Apollo KT133) PCI-PCI (AGP) bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <ATI Mach64-GM graphics accelerator> at 0.0 irq 11
isab0: <VIA 82C686 PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <VIA 82C686 ATA100 controller> port 0xd000-0xd00f at device 7.1 on pci0
atapci0: Correcting VIA config for southbridge data corruption bug
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
chip1: <VIA 82C686 ACPI interface> at device 7.4 on pci0
pcm0: <VIA VT82C686A> port 0xe400-0xe403,0xe000-0xe003,0xdc00-0xdcff irq 5 at device 7.5 on pci0
bktr0: <BrookTree 878> mem 0xdc001000-0xdc001fff irq 10 at device 16.0 on pci0
iicbb0: <I2C generic bit-banging driver> on bti2c0
iicbus0: <Philips I2C bus> on iicbb0 master-only
smbus0: <System Management Bus> on bti2c0
bktr0: Hauppauge Model 44354 C221
bktr0: Detected a MSP3415D-B3 at 0x80
bktr0: Hauppauge WinCast/TV, Philips FR1216 PAL FM tuner, msp3400c stereo, remote control.
pci0: <unknown card> (vendor=0x109e, dev=0x0878) at 16.1 irq 10
ed0: <NE2000 PCI Ethernet (RealTek 8029)> port 0xe800-0xe81f irq 11 at device 17.0 on pci0
ed0: address 00:20:18:2f:42:2d, type NE2000 (16 bit) 
orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/8 bytes threshold
ppbus0: IEEE1284 device found /NIBBLE/ECP
Probing for PnP devices on ppbus0:
ppbus0: <HEWLETT-PACKARD DESKJET 930C> MLC,PCL,PML
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ad0: 57241MB <WDC WD600AB-32CZA0> [116301/16/63] at ata0-master UDMA100
acd0: CDROM <CD-ROM 52X/AKH> at ata1-master using PIO4
acd1: CD-RW <LITE-ON LTR-12101B> at ata1-slave using PIO4
Mounting root from ufs:/dev/ad0s1a
-- 
Nils Holland
Ti Systems - FreeBSD in Tiddische, Germany
http://www.tisys.org * nils@tisys.org

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hardware" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020109140525.A68773>